# System Styles The templates folder of ILIAS contains the ILIAS System Styles. System Styles are defined by the set of icons, fonts, html templates and CSS/SCSS files that define the visual appearance of ILIAS. They differ from Content Styles, which enable to manipulate the classes defining the appearance of user generated content. ## Custom Styles System Styles may be customized by creating custom System Styles. Custom styles have to be placed in the `./public/Customizing/skin` directory to be active. One may have multiple substyles which may be active for different branches of the repository. ### Tools The ILIAS default system style called Delos is written in SCSS, which has to be compiled using the SASS pre-processor to a CSS file that the browser can read. For any larger scale styling project, we recommend that you consider using SASS as well. This way, you can build on and modify all the work that has been done by the community to style the many views and components used in ILIAS. You may want to use the same version of SASS that is referenced in the NPM package.json and automatically installed to `node_modules/` when using `npm install`. This specific SASS version can be executed like this from the ILIAS root: `node_modules/.bin/sass` Alternatively, you can install the latest version of SASS globally with `npm install sass -g`. You can find a starting point for a custom System Style based on the default Delos system style here: [Delos Repository](https://github.com/ILIAS-eLearning/delos) At the point of writing, it does require modification to be recognized as a custom System Style as outlined later in this document. ### Access available Styles through Frontend 1. Navigate to "Administration -> Layout and Styles" of you ILIAS Installation. 2. In a table you see all available System Styles. 3. You may assign users to styles via Actions Dropdown 4. You may set Sub Styles for certain sections of the repository via Actions Dropdown ### How-To #### Step 1: Create skin directory To create a new skin, first add a new subdirectory to directory `./public/Customizing/skin`, e.g. `./public/Customizing/skin/myskin/`. #### Step 2: Create template.xml File One file that must exist in every skin is the file template.xml. E.g. `./public/Customizing/skin/myskin/template.xml`: ```