Skip to content

lintuxt/lintc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

lintc

Zero-dependency Python static-site generator. Base layout + partials

  • Markdown content + YAML data + shortcodes. One file, stdlib only.

PyPI CI License: MIT

Install

uv tool install lintc      # recommended — isolated, no env needed
pipx install lintc         # equivalent if you prefer pipx
pip install --user lintc   # also fine

Requires Python 3.9 or newer. No other dependencies.

Quickstart

Scaffold a site:

src/
├── content/
│   ├── pages/home.yaml       # structured pages
│   ├── blog/*.md             # Markdown posts with YAML front matter
│   └── products/*.yaml
├── layouts/
│   ├── _base.html            # the master layout
│   ├── home.html             # page layouts
│   └── partials/             # shared chrome (head, header, footer, components)
├── data/                     # site-wide data (site.yaml, nav.yaml, etc.) + optional lintc.yaml
└── static/                   # copied verbatim into dist/

Build it:

lintc build              # emits dist/
lintc serve              # dev server with live reload at http://127.0.0.1:8000/
lintc check              # post-emit validations + GitHub-repo parity

CLI

lintc build [--root DIR] [--include-drafts]
lintc serve [--root DIR] [--host HOST] [--port PORT] [--no-reload] [--no-drafts]
lintc check [--root DIR]
lintc --version
lintc --help

build hides drafts by default — use --include-drafts to opt them in. serve shows drafts by default — use --no-drafts to hide them.

lintc check's validators are configurable via src/data/lintc.yaml — see docs/index.md for the schema.

Documentation

Full docs: docs/index.md. Changelog: docs/changelog.md.

License

MIT — see LICENSE.

About

Zero-dependency Python static-site generator. One file, stdlib only.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages