A lightweight static-site generator built on Python and Jinja2
Project description
Engrave
Engrave is a lightweight static-site generator built with Python and Jinja2. It is designed for small documentation sites, landing pages, and simple content-driven sites that benefit from templating without adding a backend.
Installation
pip install engrave
CLI overview
Top-level usage:
engrave <command>
Core commands:
engrave buildbuilds the site onceengrave watchbuilds once, then rebuilds when files changeengrave serverbuilds once, then starts a local preview server with watch events
Use engrave --help or engrave <command> --help for full command details.
Build once:
engrave build site build --copy 'assets/.*'
Watch and rebuild:
engrave watch site build --copy 'assets/.*'
Run the preview server:
engrave server site build --copy 'assets/.*'
HTML files are rendered automatically. Non-HTML assets such as CSS, JS, images,
and fonts are only copied when their source-relative paths match one or more
--copy regex patterns.
Testing
python -m unittest
Development
Build package artifacts:
uv build
Build docs:
uv sync --group dev
uv run mkdocs build
Preview docs locally:
uv run mkdocs serve
Changelog
See CHANGELOG.md for release notes.
License
MIT. See LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file engrave-3.2.6.tar.gz.
File metadata
- Download URL: engrave-3.2.6.tar.gz
- Upload date:
- Size: 117.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"43","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ee05fa427c57ec41f79654adf23d2d392ea3176a51c24db17cd3c18a91eabf9d
|
|
| MD5 |
9e68e2396587f3e13f826ac6024c1037
|
|
| BLAKE2b-256 |
d5ba61b3054b05fc6045a18feffb2ff525bd0f21ada9e5a8f47ed18e78c08a4a
|
File details
Details for the file engrave-3.2.6-py3-none-any.whl.
File metadata
- Download URL: engrave-3.2.6-py3-none-any.whl
- Upload date:
- Size: 19.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Fedora Linux","version":"43","id":"","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c166ab5a9fff9efd3d1cbf777f98331ca21946c622665f2d6a50a7878885bc52
|
|
| MD5 |
34734947a26206f6faa1ff75f1205d8e
|
|
| BLAKE2b-256 |
aa64b4652b1dcd863d8ed4512698adf9e8423bc5699bbaebce5ff008e62ec27f
|