diff --git a/.gitignore b/.gitignore
index cacd6356b..a55219300 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,5 +12,6 @@ ehthumbs.db
Thumbs.db
data/
build/
+!src/build/
package-lock.json
coverage/
diff --git a/bundles/OdooWebsiteEditor.ts b/bundles/OdooWebsiteEditor.ts
new file mode 100644
index 000000000..e164e6b9e
--- /dev/null
+++ b/bundles/OdooWebsiteEditor.ts
@@ -0,0 +1,238 @@
+import JWEditor from '../packages/core/src/JWEditor';
+import { Parser } from '../packages/plugin-parser/src/Parser';
+import { Html } from '../packages/plugin-html/src/Html';
+import { Char } from '../packages/plugin-char/src/Char';
+import { LineBreak } from '../packages/plugin-linebreak/src/LineBreak';
+import { Heading } from '../packages/plugin-heading/src/Heading';
+import { Paragraph } from '../packages/plugin-paragraph/src/Paragraph';
+import { List } from '../packages/plugin-list/src/List';
+import { Indent } from '../packages/plugin-indent/src/Indent';
+import { ParagraphNode } from '../packages/plugin-paragraph/src/ParagraphNode';
+import { LineBreakNode } from '../packages/plugin-linebreak/src/LineBreakNode';
+import { Span } from '../packages/plugin-span/src/Span';
+import { Bold } from '../packages/plugin-bold/src/Bold';
+import { Italic } from '../packages/plugin-italic/src/Italic';
+import { Underline } from '../packages/plugin-underline/src/Underline';
+import { Inline } from '../packages/plugin-inline/src/Inline';
+import { Link } from '../packages/plugin-link/src/Link';
+import { Divider } from '../packages/plugin-divider/src/Divider';
+import { Image } from '../packages/plugin-image/src/Image';
+import { Subscript } from '../packages/plugin-subscript/src/Subscript';
+import { Superscript } from '../packages/plugin-superscript/src/Superscript';
+import { Blockquote } from '../packages/plugin-blockquote/src/Blockquote';
+import { Youtube } from '../packages/plugin-youtube/src/Youtube';
+import { Table } from '../packages/plugin-table/src/Table';
+import { Metadata } from '../packages/plugin-metadata/src/Metadata';
+import { Renderer } from '../packages/plugin-renderer/src/Renderer';
+import { Keymap } from '../packages/plugin-keymap/src/Keymap';
+import { Align } from '../packages/plugin-align/src/Align';
+import { Pre } from '../packages/plugin-pre/src/Pre';
+import { TextColor } from '../packages/plugin-textcolor/src/TextColor';
+import { BackgroundColor } from '../packages/plugin-backgroundcolor/src/BackgroundColor';
+import { Layout } from '../packages/plugin-layout/src/Layout';
+import { DomLayout } from '../packages/plugin-dom-layout/src/DomLayout';
+import { DomEditable } from '../packages/plugin-dom-editable/src/DomEditable';
+import { VNode } from '../packages/core/src/VNodes/VNode';
+
+import './basicLayout.css';
+import { OdooSnippet } from '../packages/plugin-odoo-snippets/src/OdooSnippet';
+
+import { Toolbar } from '../packages/plugin-toolbar/src/Toolbar';
+import { ParagraphButton } from '../packages/plugin-heading/src/HeadingButtons';
+import { Heading1Button } from '../packages/plugin-heading/src/HeadingButtons';
+import { Heading2Button } from '../packages/plugin-heading/src/HeadingButtons';
+import { Heading3Button } from '../packages/plugin-heading/src/HeadingButtons';
+import { Heading4Button } from '../packages/plugin-heading/src/HeadingButtons';
+import { Heading5Button } from '../packages/plugin-heading/src/HeadingButtons';
+import { Heading6Button } from '../packages/plugin-heading/src/HeadingButtons';
+import { PreButton } from '../packages/plugin-pre/src/PreButtons';
+import { BoldButton } from '../packages/plugin-bold/src/BoldButtons';
+import { ItalicButton } from '../packages/plugin-italic/src/ItalicButtons';
+import { UnderlineButton } from '../packages/plugin-underline/src/UnderlineButtons';
+import { OrderedListButton } from '../packages/plugin-list/src/ListButtons';
+import { UnorderedListButton } from '../packages/plugin-list/src/ListButtons';
+import { IndentButton } from '../packages/plugin-indent/src/IndentButtons';
+import { OutdentButton } from '../packages/plugin-indent/src/IndentButtons';
+import { SaveButton } from '../packages/plugin-odoo-snippets/src/SaveButton';
+import { HtmlNode } from '../packages/plugin-html/src/HtmlNode';
+import { MediaButton } from '../packages/plugin-odoo-snippets/src/MediaButton';
+import { CommandImplementation, CommandIdentifier } from '../packages/core/src/Dispatcher';
+import { JWPlugin } from '../packages/core/src/JWPlugin';
+import { OdooVideo } from '../packages/plugin-odoo-video/src/OdooVideo';
+import { LinkButton } from '../packages/plugin-odoo-snippets/src/LinkButton';
+import { DomZonePosition } from '../packages/plugin-layout/src/LayoutEngine';
+import { HtmlDomRenderingEngine } from '../packages/plugin-html/src/HtmlDomRenderingEngine';
+import {
+ AlignLeftButton,
+ AlignCenterButton,
+ AlignRightButton,
+ AlignJustifyButton,
+} from '../packages/plugin-align/src/AlignButtons';
+
+interface OdooWebsiteEditorOption {
+ source: HTMLElement;
+ location: [Node, DomZonePosition];
+ customCommands: Record
+ An image:hehe
+doo
Jabberwck Dem
-
’Twas brillig, and the slithy toves
Did gyre and gimble in the wabe:
All mimsy were the borogoves,
-And the mome raths outgrabe.
,
): Promise ab[]c a[]c a[b]c