ssss is a static site generator that uses Jinja2 and Markdown to build fast, lightweight static HTML sites. Scaffold a new site in seconds and run it anywhere.
The recommended way to install ssss is via pipx, which installs Python CLI tools in isolated environments and makes them available globally:
pipx install ssssOn Arch Linux, install pipx first if needed:
sudo pacman -S python-pipxAlternatively, if you are in an active virtual environment:
pip install ssssRun --scaffold to initialize a new project, write starter templates and content, and build the site in one step:
ssss --scaffoldThis creates:
ssss.yml # configuration file
site/
source/
index.md # starter content
_templates/
base.html # HTML base layout (Pico CSS included)
default.j2 # default Jinja2 template
build/
index.html # generated output
Use --init if you only want to create the configuration file and directory structure, without writing any template or content files:
ssss --initOnce a configuration file exists, run ssss without any flags to build:
ssssssss --config path/to/custom.ymlConfigure your site via ssss.yml. The site section defines site-wide variables accessible in all templates and content files:
site:
title: My Site
description: A site built with ssss.
author: Your Name
url: https://example.comTemplates live in site/source/_templates/. ssss uses staticjinja for rendering.
base.html— base HTML layout, extended by Jinja2 templatesdefault.j2— default template, applied to all Markdown files without a dedicated template__<stem>.j2— template applied only to the content file with the matching stem
The default scaffold includes Pico CSS via CDN — a minimal, classless CSS framework for semantic HTML that makes every page look clean with zero extra effort.
ssss --help
| Flag | Description |
|---|---|
--scaffold |
Create config, directories, and starter files, then build |
--init |
Create config and directories only |
--config, -c |
Path to a configuration file |
--version, -v |
Print the version and exit |
--help, -h |
Show help and exit |