Manual · 1
The concept in five minutes
IllusionCMS is made for people who want to write HTML, CSS and JavaScript themselves – without a site builder that takes the markup out of your hands, but with the conveniences of a CMS.
| Building block | What for | Where in the admin |
|---|---|---|
| Pages | Form a tree; the URL follows from the position (/leistungen/webdesign). Each page has its own HTML. Several page trees = several websites, distinguished by domain. |
Pages |
| CSS & JS | A shared library of files. You assign them to pages – optionally inherited by all subpages. A change takes effect everywhere the file is used. | CSS & JS and in the page editor |
| Snippets | Reusable HTML building blocks (header, footer, cards …). They are included, used as a component with slots, or extended as a layout. | Snippets |
| Files | Images, PDFs, fonts, videos. Images automatically get size variants for srcset. |
Files |
| Collections | Your own data structures (blog, team, products …) with fields and entries. | Collections |
| REST sources | Data from external systems (shop, CRM, headless CMS …) via a JSON API. | REST sources |
Templates connect everything. A page’s HTML is a template in Twig/Django-like syntax. With it you fetch data (data("blog")), build navigation (nav()), include Snippets and set images with srcset:
{% include "header" %}
<main>
<h1>{{ page.title }}</h1>
{% for post in data("blog", "sort", "-datum", "limit", 3) %}
{% component "card" %}
{% fill "titel" %}{{ post.titel }}{% endfill %}
{{ post.text|markdown }}
{% endcomponent %}
{% endfor %}
</main>
{% include "footer" %}
The public website lives at /, the administration at /cms-admin, the REST API at /api/v1.