graph LR
Core_Data_ORM_Layer["Core Data & ORM Layer"]
Web_Presentation_Layer["Web & Presentation Layer"]
Module_Management_System["Module Management System"]
Core_Business_Objects_Configuration["Core Business Objects & Configuration"]
Security_Access_Control["Security & Access Control"]
Business_Application_Modules_Addons_["Business Application Modules (Addons)"]
Server_CLI_Operations["Server & CLI Operations"]
External_Clients["External Clients"]
External_Clients -- "send requests to" --> Web_Presentation_Layer
Web_Presentation_Layer -- "serves UI/data to" --> External_Clients
Web_Presentation_Layer -- "interacts with for data operations" --> Core_Data_ORM_Layer
Core_Data_ORM_Layer -- "provides data services to" --> Web_Presentation_Layer
Web_Presentation_Layer -- "provides UI for" --> Business_Application_Modules_Addons_
Business_Application_Modules_Addons_ -- "define UI elements used by" --> Web_Presentation_Layer
Core_Data_ORM_Layer -- "is protected by" --> Security_Access_Control
Security_Access_Control -- "interacts with to enforce rules" --> Core_Data_ORM_Layer
Core_Data_ORM_Layer -- "processes data models defined by" --> Module_Management_System
Module_Management_System -- "uses for module data storage" --> Core_Data_ORM_Layer
Core_Business_Objects_Configuration -- "utilizes" --> Core_Data_ORM_Layer
Core_Data_ORM_Layer -- "provides ORM capabilities to" --> Core_Business_Objects_Configuration
Business_Application_Modules_Addons_ -- "use for data operations" --> Core_Data_ORM_Layer
Core_Data_ORM_Layer -- "provides ORM capabilities to" --> Business_Application_Modules_Addons_
Module_Management_System -- "manages the loading/configuration of" --> Business_Application_Modules_Addons_
Business_Application_Modules_Addons_ -- "are managed by" --> Module_Management_System
Server_CLI_Operations -- "interact with for module commands" --> Module_Management_System
Module_Management_System -- "is controlled by" --> Server_CLI_Operations
Security_Access_Control -- "manages access permissions for" --> Core_Business_Objects_Configuration
Core_Business_Objects_Configuration -- "interacts with for user roles/permissions" --> Security_Access_Control
Business_Application_Modules_Addons_ -- "use for common data" --> Core_Business_Objects_Configuration
Core_Business_Objects_Configuration -- "provides base data for" --> Business_Application_Modules_Addons_
Server_CLI_Operations -- "interact with for database operations" --> Core_Data_ORM_Layer
Core_Data_ORM_Layer -- "is accessed by" --> Server_CLI_Operations
click Core_Data_ORM_Layer href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/odoo/Core_Data_ORM_Layer.md" "Details"
click Web_Presentation_Layer href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/odoo/Web_Presentation_Layer.md" "Details"
click Module_Management_System href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/odoo/Module_Management_System.md" "Details"
click Core_Business_Objects_Configuration href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/odoo/Core_Business_Objects_Configuration.md" "Details"
click Security_Access_Control href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/odoo/Security_Access_Control.md" "Details"
click Business_Application_Modules_Addons_ href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/odoo/Business_Application_Modules_Addons_.md" "Details"
click Server_CLI_Operations href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/odoo/Server_CLI_Operations.md" "Details"
click External_Clients href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/odoo/External_Clients.md" "Details"
Abstract Components Overview of an Odoo-like system.
Core Data & ORM Layer [Expand]
Provides the foundational data persistence and retrieval mechanisms, including the ORM, database connection management, transaction handling, and caching. It abstracts database interactions for all other components.
Related Classes/Methods:
odoo/models.pyodoo/fields.pyodoo/sql_db.py(1:1)
Web & Presentation Layer [Expand]
Handles all client-side interactions, including HTTP request processing, session management, RPC communication, and rendering dynamic user interfaces using QWeb. It also manages and serves static web assets.
Related Classes/Methods:
odoo/http.pyodoo/addons/web/controllers/main.py(1:1)odoo/addons/web/models/ir_ui_view.py(1:1)odoo/addons/website/(1:1)
Module Management System [Expand]
Manages the entire lifecycle of Odoo modules (addons), including installation, upgrade, and uninstallation. It builds and maintains the Odoo registry, ensuring proper module loading order and dependency resolution.
Related Classes/Methods:
odoo/modules/module.pyodoo/modules/loading.pyodoo/modules/registry.py
Core Business Objects & Configuration [Expand]
Defines the fundamental, system-wide business entities and configurations (e.g., users, partners, companies, currencies, system parameters, actions, reports). These are the base models extended by specific business modules.
Related Classes/Methods:
odoo/addons/base/models/res_partner.pyodoo/addons/base/models/res_users.pyodoo/addons/base/models/res_company.pyodoo/addons/base/models/ir_rule.py
Security & Access Control [Expand]
Enforces security policies, managing user authentication, authorization, and granular access rules (record rules, field access) for models and records across the entire application.
Related Classes/Methods:
odoo/service/security.pyodoo/addons/base/models/ir_rule.pyodoo/addons/auth_oauth/(1:1)odoo/addons/auth_passkey/(1:1)
Business Application Modules (Addons) [Expand]
Encapsulates specific business functionalities (e.g., CRM, Accounting, Inventory). These are self-contained modules that extend the core Odoo framework by defining new models, views, and business logic, providing the comprehensive ERP features.
Related Classes/Methods:
odoo/addons/account/(1:1)odoo/addons/crm/(1:1)odoo/addons/sale/(1:1)odoo/addons/stock/(1:1)
Server & CLI Operations [Expand]
Manages the Odoo server's runtime environment, including process management and different worker types. It also provides command-line interface tools for administrative tasks like database management, deployment, and testing.
Related Classes/Methods:
odoo/cli/server.pyodoo/cli/command.pyodoo/service/server.py
External Clients [Expand]
Represents external users or systems interacting with the Odoo system.
Related Classes/Methods: None