odoo-react is a two-layer open-source framework that lets you build React 19 + Mantine 8 components inside any Odoo view — without Shadow DOM hacks, without Enterprise, without touching Odoo core.
4,400+
Automated tests
88%
Code coverage
Odoo 16–19
Version support
LGPL-3.0
Open source license
Architecture
Kernel handles generic micro-frontend infrastructure. Bridge handles Odoo integration. Addons handle business logic. Nothing leaks between layers.
@shachain/react-micro-frontendHost-agnostic micro-frontend infrastructure. React-to-Web-Component engine, Mantine theme, i18n bootstrap, shared entry stubs. No Odoo dependency — runs in any host.
@shachain/odoo-reactOdoo integration layer. OWL service injection, cross-version RPC adapter (16/17/18/19), SystemJS importmap bootstrap, MantineProvider-per-component strategy.
sc_react_* / odoo_react_*Consumer addons built on the bridge. Each is an independent System.register chunk with its own vite.config.ts. Zero coupling between addons at the JS layer.
Design decisions
Mantine Portals (Modal, Drawer, Menu) render to document.body. CSS variables inherit correctly across all Odoo versions — no workarounds, no style leakage.
Bypasses Odoo's asset bundler entirely. Works on Odoo 16–19 without Enterprise, without modifying Odoo core, without version conflicts.
4,400+ automated tests, 88% coverage. RED-GREEN-REFACTOR workflow built in — every commit is verified. Vitest + Playwright Component Tests.
One codebase targets Odoo 16, 17, 18, and 19. RPC and ORM differences are handled by the bridge adapter — your code stays clean.
Quick start
Install the bridge addon, register your component with defineAddon(), and drop a Web Component tag in any Odoo view. No webpack, no separate build server, no iframe.
// react/index.ts
import { defineAddon } from '@shachain/odoo-react';
import MyDashboard from './components/MyDashboard';
export default defineAddon({
specifier: 'my_addon',
components: {
'my-dashboard': MyDashboard,
}
});
<!-- In Odoo XML view -->
<my-dashboard
record-id="{{ record.id.value }}"
/>
Free, open-source, and production-ready. Install from GitHub and start building React UIs inside Odoo today.