MCPcopy Index your code
hub / github.com/Orange-OpenSource/Orange-Confort-plus

github.com/Orange-OpenSource/Orange-Confort-plus @v5.5.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v5.5.1 ↗ · + Follow
1,362 symbols 1,918 edges 116 files 42 documented · 3% updated 5d agov6.0.0-alpha.0 · 2026-05-19★ 5280 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Orange-Confort-plus

Orange Confort+ aims to enhance user experience on websites. It works best when said websites are fully accessible.

[!CAUTION] Orange Confort+ does not improve website accessibility: blocking points still stay blocking points, with or without Orange Confort+.

Table of contents

Browser extension

Deploying Orange Confort+ on your website

To deploy Orange Confort+ onto your domain, a prepackaged version is available: simply add the dist/serveur folder to your website.

Customize path

[!IMPORTANT] If dist/serveur/ content is placed at your website root, you do not need the following action.

Edit toolbar.min.js JavaScript file to change the following property:

this.path=`${window.location.origin}/my-custom-path/`

Call Confort+

To initialize Confort+, call it before the body closing tag using the correct path:

<script src="https://github.com/Orange-OpenSource/Orange-Confort-plus/raw/v5.5.1/my-custom-path/js/toolbar.min.js"></script>

[!NOTE] User settings are saved in localStorage, thus depend on your domain. They are never shared with other websites, or extension.

Contribute

Clone

git clone https://github.com/Orange-OpenSource/Orange-Confort-plus.git

Install dependencies

npm ci

Start local server

npm start

It should build all the things and open your browser to http://localhost:9010. You're ready to update files in /src: any changes will trigger a build and reload your browser. For mor specific needs, take a look at existing scripts in our package.json.

Build all the things

To build HTML, CSS, JS and static assets for both the docs and the extension, run:

npm run build

Extension-specific scripts

We're using Mozilla's web-ext to ease our development workflow.

Package extension

A packaging script based on web-ext build exists for both Firefox and chromium, taking care of their specific manifest.json using npm pre-hook.

npm run zip

Lint extension

Based on web-ext lint (using addons-linter under the hood), we're linting the Firefox package.

npm run lint:ext

Load extension

web-ext run is used to load extension. There's a separate script for Firefox and Chrome.

npm run load:firefox
npm run load:chrome

[!Warning] As of today, those scripts are quite buggy on Ubuntu if you use Firefox through snap. See #108 for more context.

Work on Confort+ website

If you need to work on Confort+ very own website, there's a specific script:

npm run start:docs

Bugs and feature requests

Have a bug or a feature request? Please first check the issues and search for existing and closed issues. If your problem or idea is not addressed yet, please open a new issue.

Copyright and license

Code copyright 2014 - 2025 Orange. Code released under the GPLV2 license.

Credits

Font credits

Pictogram Credits

The accessibility icons for usage modes provided by Comfort+ are declared in the ISO 11581-7:2024 standard and are distributed under the Creative Commons CC0-1.0 licence.

Extension points exported contracts — how you extend this code

ModeOfUseModel (Interface)
(no doc)
src/app/core/models.core.ts
SettingModel (Interface)
(no doc)
src/app/core/models.core.ts
SettingsDictionnary (Interface)
(no doc)
src/app/core/models.core.ts
SavedSettingsState (Interface)
(no doc)
src/app/core/models.core.ts
AccordionState (Interface)
(no doc)
src/app/services/categories.service.ts

Core symbols most depended-on inside this repo

getMessage
called by 43
src/serveur/services/i18n.service.ts
getMessage
called by 40
docs/js/toolbar.js
createHandler
called by 32
src/app/services/settings/navigation-auto.service.ts
createHandler
called by 32
docs/js/toolbar.js
setItem
called by 18
src/serveur/services/local-storage.service.ts
setItem
called by 18
docs/js/toolbar.js
getItem
called by 17
src/serveur/services/local-storage.service.ts
getSetting
called by 17
src/app/services/mode-of-use.service.ts

Shape

Class 583
Method 538
Function 231
Interface 10

Languages

TypeScript100%

Modules by API surface

docs/js/toolbar.js433 symbols
docs/js/toolbar.min.js429 symbols
src/extension/vendors/Readability.js62 symbols
src/extension/vendors/custom-elements.min.js37 symbols
src/serveur/services/i18n.service.ts7 symbols
src/app/services/mode-of-use.service.ts7 symbols
src/serveur/services/local-storage.service.ts6 symbols
src/extension/services/local-storage.service.ts6 symbols
src/app/shared/header.component.ts6 symbols
src/app/shared/btn-setting.component.ts6 symbols
src/app/shared/btn-modal.component.ts6 symbols
src/app/services/string.service.ts6 symbols

For agents

$ claude mcp add Orange-Confort-plus \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact