Skip to main content
Free Tool

Odoo ScaffoldGenerator

Generate a complete Odoo module structure in your browser. Configure models, views, security, and more — download as a ready-to-install ZIP.

Odoo 14-19 Support
Models & Views
Security & Tests
Download ZIP

What is Odoo Scaffold?

The odoo scaffold command generates a directory structure for a new Odoo module. This online tool does the same thing — with more features, no CLI required. Configure your module visually, define models and fields, select features, and download a complete module as a ZIP file.

Featureodoo scaffold CLIThis Generator
Model definitionsPlaceholder onlyFull fields, types, labels
Views (form/tree/search)Empty templatesAuto-generated from fields
Security (ACL)Not includedir.model.access.csv generated
ControllersBasic templateRoute + render boilerplate
TestsNot includedTransactionCase boilerplate
Reports (QWeb PDF)Not includedTemplate + action generated
Demo dataNot includedSample records per model
Multiple modelsSingle modelUnlimited models
Download formatDirectory on diskZIP file
RequirementsOdoo installed locallyBrowser only

Configure your module below. The generated output updates in real time.

Module Information

Basic module metadata for __manifest__.py

Auto-generated from module name

Comma-separated module names

Module Features

Select which components to include in the module

Model Definitions

Define your Odoo models and fields

Fields
Name
Type
Label
Required
Files
my_custom_module
models
views
security
static
my_custom_module/__manifest__.py
python
1# -*- coding: utf-8 -*-
2{
3 'name': 'My Custom Module',
4 'version': '18.0.1.0.0',
5 'category': 'Uncategorized',
6 'summary': 'A short description of the module',
7 'description': """
8 My Custom Module
9 ================
10
11 A short description of the module
12 """,
13 'author': 'My Company',
14 'license': 'LGPL-3',
15 'depends': ['base'],
16 'data': [
17 'security/ir.model.access.csv',
18 'views/my_model_views.xml',
19 'views/menu.xml',
20 ],
21 'assets': {
22 'web.assets_backend': [
23 'my_custom_module/static/src/css/style.css',
24 ],
25 },
26 'installable': True,
27 'application': True,
28 'auto_install': False,
29}
30
9 files in my_custom_module/

How It Works

Step 1

Configure Your Module

Set the module name, Odoo version, author, category, and license. Choose which features to include: models, views, security, controllers, reports, tests, and demo data.

Step 2

Define Models & Fields

Add one or more models with custom fields. Choose field types (Char, Integer, Many2one, etc.), set labels and required flags. Views, security, and tests are auto-generated from your definitions.

Step 3

Download & Install

Download the ZIP file, extract it into your Odoo addons directory, update the module list, and install. The module is ready to use immediately.

The CLI Alternative

If you prefer the command line, here is the equivalent odoo scaffold command. Note that the CLI generates a minimal template compared to this tool.

Terminal
# Odoo scaffold CLI (generates minimal template)
odoo scaffold my_custom_module /mnt/extra-addons

# With Docker
docker exec -it odoo odoo scaffold my_custom_module /mnt/extra-addons

Frequently Asked Questions

Common questions about Odoo module scaffolding and development.

What does the Odoo scaffold command do?
The odoo scaffold command generates a skeleton directory structure for a new Odoo module. It creates __manifest__.py, __init__.py, models/, views/, controllers/, security/, static/, and demo/ directories with boilerplate code. This generator does the same thing in your browser with more customization options and no CLI required.
How do I use odoo scaffold from the command line?
The CLI syntax is: odoo scaffold <module_name> <destination_path>. For example: odoo scaffold my_module /mnt/extra-addons. However, the CLI only generates a minimal template. This online generator lets you configure models, fields, views, security, controllers, reports, tests, and demo data before downloading a complete module.
What files should every Odoo module have?
Every Odoo module needs at minimum: __manifest__.py (module metadata, dependencies, data files), __init__.py (Python package initialization), and at least one data or code file. Production modules typically also include models/ (business logic), views/ (UI definitions), security/ir.model.access.csv (access control), and static/description/icon.png (module icon).
What is the correct Odoo module directory structure?
The standard Odoo module structure is: __manifest__.py and __init__.py at the root, models/ for Python model files, views/ for XML view definitions and menus, security/ for ir.model.access.csv and ir.rules, controllers/ for HTTP controllers, reports/ for QWeb report templates, static/ for CSS/JS/images, tests/ for unit tests, and demo/ for demo data. Each Python subdirectory needs its own __init__.py.
How do I add custom fields to an Odoo model?
Define fields in your model class using the fields module: fields.Char for text, fields.Integer for numbers, fields.Boolean for true/false, fields.Selection for dropdowns, fields.Many2one for foreign keys, fields.One2many for reverse relations, and fields.Many2many for many-to-many relationships. Each field accepts parameters like string (label), required, default, help, and more.
What Odoo versions does this scaffold generator support?
This generator supports Odoo versions 14.0 through 19.0. The generated module structure is compatible with all these versions. The version number is automatically included in the module version string in __manifest__.py (e.g., 18.0.1.0.0 for Odoo 18). Select your target version in the configuration panel.
How do I install a custom Odoo module?
Place the module folder in your Odoo addons path (e.g., /mnt/extra-addons). Then go to Settings > Apps > Update Apps List in the Odoo backend. Search for your module name and click Install. If using Docker, mount the module directory as a volume and add it to --addons-path. With OEC.sh, push to your Git repository and the platform deploys it automatically.
What is the difference between odoo scaffold and this generator?
The CLI scaffold command creates a minimal template with placeholder files. This generator creates a complete, ready-to-install module with fully defined models, views (form, tree, search), security access rules, menu items, controllers, reports, tests, and demo data. You configure everything visually and download a ZIP file — no terminal access needed.

Ready to Deploy Your Odoo Module?

OEC.sh deploys your custom Odoo modules to any cloud provider. Push to Git, and the platform handles the rest — server provisioning, updates, backups, and monitoring.