docs/customization.md
To use this feature, simply set the FRONTEND_CSS_URL environment variable to the URL of your custom CSS file. For example:
FRONTEND_CSS_URL=http://anything/custom-style.css
Once you've set this variable, Docs will load your custom CSS file and apply the styles to our frontend application.
This feature provides several benefits, including:
Let's say you want to change the background color of our application to a custom color. You can create a custom CSS file with the following contents:
body {
background-color: #3498db;
}
Then, set the FRONTEND_CSS_URL environment variable to the URL of your custom CSS file. Once you've done this, our application will load your custom CSS file and apply the styles, changing the background color to the custom color you specified.
To use this feature, simply set the FRONTEND_JS_URL environment variable to the URL of your custom JavaScript file. For example:
FRONTEND_JS_URL=http://anything/custom-script.js
Once you've set this variable, Docs will load your custom JavaScript file and execute it in the browser, allowing you to modify the application's behavior at runtime.
This feature provides several benefits, including:
Let's say you want to add a custom menu to the application header. You can create a custom JavaScript file with the following contents:
(function() {
'use strict';
function initCustomMenu() {
// Wait for the page to be fully loaded
const header = document.querySelector('header');
if (!header) return false;
// Create and inject your custom menu
const customMenu = document.createElement('div');
customMenu.innerHTML = '<button>Custom Menu</button>';
header.appendChild(customMenu);
console.log('Custom menu added successfully');
return true;
}
// Initialize when DOM is ready
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', initCustomMenu);
} else {
initCustomMenu();
}
})();
Then, set the FRONTEND_JS_URL environment variable to the URL of your custom JavaScript file. Once you've done this, our application will load your custom JavaScript file and execute it, adding your custom menu to the header.
You can add your own Docs icon in the header from the theme customization file.
THEME_CUSTOMIZATION_FILE_PATH=<path>
You can activate it with the header.icon configuration: https://github.com/suitenumerique/docs/blob/main/src/helm/env.d/dev/configuration/theme/demo.json
This configuration is optional. If not set, the default icon will be used.
The footer is configurable from the theme customization file.
THEME_CUSTOMIZATION_FILE_PATH=<path>
The json must follow some rules: https://github.com/suitenumerique/docs/blob/main/src/helm/env.d/dev/configuration/theme/demo.json
footer.default is the fallback if the language is not supported.
Below is a visual example of a configured footer ⬇️:
The translations can be partially overridden from the theme customization file.
THEME_CUSTOMIZATION_FILE_PATH=<path>
The json must follow some rules: https://github.com/suitenumerique/docs/blob/main/src/helm/env.d/dev/configuration/theme/demo.json
The Waffle (La Gaufre) is a widget that displays a grid of services.
THEME_CUSTOMIZATION_FILE_PATH=<path>
The Waffle can be configured in the theme customization file with the waffle key.
See: LaGaufreV2Props
From the theme customization file: https://github.com/suitenumerique/docs/blob/main/src/helm/env.d/dev/configuration/theme/demo.json
data.services is provided, the Waffle will display those services staticallyapiUrl property