Skip to content

Enhances the experience of Odoo developers and Odoo.SH users by adding a variety of tools and features

License

Notifications You must be signed in to change notification settings

odoo-lux-dev/odoo-toolbox

Repository files navigation

This extension aims to enhance the experience of Odoo developers and Odoo.SH users by adding a variety of tools and features.

Installation

Non exhaustive functionnalities

  • Star project on odoo SH, order the favorites list and ability to rename them
  • Enable (or not) debug mode by default on Odoo websites
  • Toggle debug mode from the extension's popup
  • Show technical printing options (PDF/HTML)
  • Show technical model name on record from Odoo v17.2 and above
  • Rename tab's title of Odoo.sh project to includes current project's name
  • Add task links to branch names with custom URL patterns and regex support
  • Copy branch name with a single click on Odoo.sh
  • Enable colorblind mode for better accessibility on Odoo.sh build statuses
  • Toggle between light and dark themes for the extension interface
  • Nostalgia mode with retro monkey icons for debug toggles
  • Default dark mode setting for Odoo interfaces
  • Export and import extension configuration for easy sharing or backup
  • Quick access to GitHub repositories from branch pages



Project Structure

The extension is built using WXT (Docs) and follows a modular architecture:

/src/components

Reusable UI components:

  • /icons - SVG icons used throughout the extension
  • /options - Components specific to the options page
  • /popup - Components for the popup interface
  • Common UI elements like tooltips and toggles

/src/entries

Entry points for the extension's different components:

  • /background - Background script for handling alarms. Used for persisting configuration
  • /popup - The extension's popup interface for quick access to favorites and debug toggle
  • /options - The extension's settings page with all configuration options
  • /odoosh.content - Content scripts specifically for Odoo.sh pages
  • /global.content - Content scripts applied to all Odoo pages
  • /odoo-websites.js - Script for enhancing Odoo websites functionality

/src/features

Core functionality modules:

  • /debug-mode.ts - Manages debug mode functionality
  • /technical-report.ts - Handles technical printing options in Odoo reports
  • /technical-model-name.ts - Adds technical model names to Odoo views
  • /default-dark-mode.ts - Controls dark mode settings for Odoo interfaces
  • /odoo-sh - Features specifically for Odoo.sh

/src/hooks

Custom React hooks for reusable logic:

  • use-themed-icons.tsx - Hook to manage icons based on theme and nostalgia mode

/src/utils

Utility functions and shared resources:

  • /storage.ts - Extension storage management with migrations system
  • /constants.ts - Application-wide constants
  • /types.ts - TypeScript type definitions
  • /utils.ts - Shared utility functions
  • /logger.ts - Logging utilities
  • /regex.ts - Regular expressions for parsing branch names and tasks

/src/theme

UI theming components:

  • Dark/light theme implementation
  • Variables and styling utilities for consistent UI



Local development

Installation

This requires Bun Installation guide

Once Bun is installed, you can install the extension by running the following command in your terminal:

bun install

Development

To start developing the extension, you can run the following command in your terminal:

bun dev

This will start a development server that will watch for changes in the source code and automatically reload the extension in your browser.

Build

To build the extension, you can run the following commands in your terminal:

bun build
bun build:firefox

This will create a dist folder containing the built production-ready extension that you can then load into your browser.

Zip

To create a zip file containing the built extension, you can run the following commands in your terminal:

bun zip
bun zip:firefox

This will create a zip file in the dist folder.




Testimonials

"The best chrome extension you'll ever see..."
— SAJU - Odoo Client Solution Developer

"Dinguerie quand même cette extension, tu veux pas la partager au PS-Tech en Belgique?"
— MAVI - Lux PS tech coach, author of the famous "Saaaaaaalut"

"I think I am in love"
— PAL - Lux PS tech leader, 2023 Karting champion, author of the famous "Euuuuh, l'ambiance"

About

Enhances the experience of Odoo developers and Odoo.SH users by adding a variety of tools and features

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published