Symfony voegt automatisch de basis packages/*.yaml-bestanden samen met die in de bijbehorende omgevingssubmap (dev/, prod/, of test/), zodat omgevingsspecifieke bestanden alleen de waarden hoeven te overschrijven die verschillen.
Buildconfiguratie
Bestand
Doel
webpack.config.js
Webpack Encore configuratie (ingangen, loaders, plugins)
Alle bestanden bevinden zich in de projecthoofdmap. PostCSS-plugins (Tailwind + Autoprefixer) worden inline geconfigureerd binnen webpack.config.js via enablePostCssLoader() — er is geen standalone postcss.config.js. webpack.config.js leest tailwind.config.js indirect via PostCSS, dus wijzigingen in de content- of theme-secties van Tailwind worden van kracht bij de volgende uitvoering van yarn encore dev / yarn encore production.
Tailwind is geïntegreerd via PostCSS. assets/css/_tailwind.scss genereert de basis-, component- en utility-lagen; assets/css/app.scss importeert deze als eerste, zodat Tailwind-utilities beschikbaar zijn in alle andere deelbestanden. De Tailwind-configuratie — inhoudspaden voor het opschonen, thema-uitbreidingen en plugins — bevindt zich in tailwind.config.js in de hoofdmap van het project (/var/www/chamilo/tailwind.config.js).
Aangepaste utility-klassen en componentklassen die zijn gedefinieerd met @layer (zichtbaar in app.scss) volgen de laagconventie van Tailwind, zodat door de gebruiker gedefinieerde klassen dezelfde specificiteitsregels respecteren als de gegenereerde utilities.
Kleurenthema's
Chamilo ondersteunt een kleurenthemasysteem dat direct vanuit de beheerdersinterface kan worden geconfigureerd (Beheer > Kleurenthema's). Elk opgeslagen thema schrijft zijn bestanden naar een specifieke map onder var/themes/:
colors.css definieert CSS aangepaste eigenschappen als ruimtegescheiden RGB-kanaal-tripletten in plaats van rgb()-waarden, wat Tailwind in staat stelt om opacity-varianten (bijv. bg-primary/50) samen te stellen zonder extra configuratie:
De themalaag bevindt zich bovenop de gecompileerde Tailwind/SCSS-bundel: de browser laadt colors.css na het hoofdstylesheet, waardoor thema-aanpassingen direct van kracht worden zonder een buildstap.