Skip to content

Customizing the Zensical theme

Zensical can be modified using a configuration file called zensical.toml. This file uses a language called TOML.

Coming from Mkdocs framework

Previous year student websites where built with MkDocs and the Material for MkDocs theme. However due to MkDocs seeming like it is unmaintained, the people behide the Material for MkDocs theme release a new framework called Zensical. Zensical provides near complete comparability with MkDocs in terms of markdown/configuration, meaning nothing changes with what you know.

How TOML language works?

As the example below, all configuration must follow this convention.

  • Settings are group into sections, in the format like: [project]
  • Then find or add the setting key, ie. site_name
  • Values go inside quote strings " "
[project]
site_name = "My Zensical project"

See more on the Zensical configuration documentation

Setting your site title

Start by adding your name to your website as the site_name setting and find following lines, site_description, copyright lines.

[project]

site_name = "Your name"

site_description = "Your name Fabricademy site."

site_author = "Your name here"

copyright = """
Copyright © 2026 Your name here - Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International
"""

To add links to your social accounts in the footer of your website, find the following lins in your zensical.toml file:

[[project.extra.social]]
icon = "fontawesome/brands/instagram"
link = "https://instagram.com/fabricademy"

[[project.extra.social]]
icon = "fontawesome/brands/facebook"
link = "https://facebook.com/fabricademy"

[[project.extra.social]]
icon = "fontawesome/brands/twitter"
link = "https://twitter.com/fabricademy"

For other social icons see the Zensical footer docs.

How to change the theme colors

The can change the primary and accent sections. Changing these will update the theme colors in your generated website. See the available colors here

[project.theme]

palette.primary = "custom"
palette.accent = "teal"

Custom means you set your colors in the docs/stylesheets/extra.css file

How to change the theme fonts

You can change the font of your whole site to any font found on Google Fonts.

[project.theme.font]

text = "Montserrat"
code = "Roboto Mono"

Using CSS

If you want to tweak some colors or change the spacing of certain elements, you can do this in a separate stylesheet. The easiest way is by creating a new stylesheet file in the docs directory:

.
├─ docs/
│  └─ stylesheets/
│     └─ extra.css
└─ zensical.yml

Then, add the following line to Zensical.yml:

[project]

extra_css = ["stylesheets/extra.css"]

Further customization

For a list of general site settings, see the setup Zenscial docs


Last update: September 14, 2026