$ show OCA/website
This repository is a collection of Odoo website extension modules (addons) from the Odoo Community Association (OCA). Each module provides specific functionality to enhance Odoo's website capabilities, such as captcha solutions (Altcha, Cloudflare Turnstile), cookie consent management (Cookiebot, Cookiefirst), analytics integrations (Google Tag Manager, Matomo), user experience improvements (breadcrumbs, search in header, country dropdown), content management (scheduled blog posts, legal pages), access control (login requirements, menu visibility), and third-party integrations (WhatsApp). The modules follow standard Odoo architecture with models, views, controllers, static assets, and configuration via res.config.settings. They are designed to be installed independently in an Odoo instance and extend core website functionality through QWeb template inheritance, model extensions, and HTTP controllers. The repository shows active maintenance with recent commits, standardized module structure, and proper licensing (AGPL-3.0).
The LLM identified 5 files worth highlighting for reuse:
Implements a privacy-friendly Altcha captcha using proof-of-work. Features a custom reactive system (signals/effects) for efficient UI updates and offloads intensive computations to web workers to prevent UI blocking. Encapsulated as a custom element for easy integration into Odoo's website builder. Demonstrates non-obvious frontend performance optimization and encapsulation patterns.
Provides a reusable QWeb template for a country dropdown that can be inserted into any Odoo form view. Includes XML structure and styling, requiring no modification for reuse. Demonstrates a clean, self-contained frontend component pattern that solves a common form enhancement need.
Integrates the Select2 library into Odoo as a widget for enhanced form selects. Wraps third-party CSS/JS in an Odoo-compatible widget with proper asset bundling. Shows a standardized pattern for incorporating external JavaScript libraries into Odoo while maintaining upgrade safety.
Adds blog post scheduling functionality by extending the blog.post model with a scheduled publication date. Includes a transient model wizard for setting dates and a cron job for automatic publishing. Demonstrates a well-contained feature following Odoo's patterns for wizards, model extensions, and automated actions.
Implements URL-based access control by overriding Odoo's ir.http model to check authentication. Provides a res.config.settings model to configure restricted URLs. Shows an isolated, reusable pattern for adding authentication requirements to specific website pages without modifying core code.