Tandem DSFR is a custom base theme for TANDEM - Ministère de l'Éducation projects. It extends the ui_suite_dsfr theme and acts as a foundation for sub-themes tailored to specific sites.
The theme hierarchy is structured for modularity and reusability:
- ui_suite_dsfr (Contrib theme) - The foundational theme providing core DSFR integration.
- tandem_dsfr (Custom base theme) - The main theme extending ui_suite_dsfr with project-specific customizations.
- [shortcode]_dsfr (Custom sub-themes) - Site-tailored themes (e.g., edugouv_dsfr) inheriting from tandem_dsfr.
This theme is managed via Composer and included in the composer.libraries.json file of the tandem/socle profile.
The installation is handled automatically when running composer install on a project using this profile.
Compiled CSS and JavaScript assets are managed automatically.
This project uses a GitHub Actions workflow to compile and commit assets automatically.
assets/ directory.
The workflow is triggered automatically on every merge to the 1.0.x branch, ensuring assets stay up-to-date.
To see your style or script changes locally, compile the assets manually:
cd docroot/themes/custom/tandem_dsfr
yarn install # run once
yarn build # compile assets for production
yarn watch # run watch mode to recompile on changesReminder: Do not commit files generated in assets/. The CI system handles this.
This theme serves as the base for more specific sub-themes. For detailed instructions on creating sub-themes, refer to the dedicated documentation.