wt - static site generator
What
Yet another static site generator with following features:
- markdown for content
- toml for configuration
- toml for content front-matter
- atom for feed
- content pages pagination
Under the hood this project uses following python libraries:
- attrs for models
- markdown-it for markdown-to-html conversion
- jinja for templating
- starlette for development web-server
Why
It was curiosity - "how would I do it?" and good intentions - "let's create something easy to work with".
Documentation
wt documentation is not available online yet but you can check
docs/pages/ folder for it.
How
Requirements
Hard dependency is Python>=3.12.
Installation
Install from PyPI with pip:
$ pip install wt
Or pipx:
$ pipx install wt
Or uv:
$ uv tool install wt
Bootstrapping
To initialize new project with some example content use wt init command:
$ wt init .
Configuration
Your site must have configuration file written in toml.
By default wt will look for the file named wt.toml in current dir.
To dump default configuration example to console use wt config command:
$ wt config
Usage
To start development server use wt develop command:
$ wt develop
Bt default the server will be listening at 127.0.0.1:9000.
To use multiple configuration files and custom port:
$ wt develop -c wt.toml -c wt-extra.toml --port 3000
When content is ready you will need to build it using wt build command:
$ wt build
By default generated site will be placed to output/ folder
(can be changed in configuration file).
To see command-line help use wt help command:
$ wt help
Roadmap
-
documentation -
support for pagination -
support for multiple configuration files - support for tags
License
MIT
Metadata
Release files for wt 3.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| wt-3.2.0.tar.gz | 177.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| wt-3.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 213.5 kB
Release files / wt-3.2.0.tar.gz
| Download URL | wt-3.2.0.tar.gz |
|---|---|
| Size | 177.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8c219bff9c039ee018fa832a710ddd0ebc75b84a4f97eb3ab927af3621da75b7
|
|
BLAKE2b-256 checksum How to use checksums |
6d2e135f550b8b139a3b9c965c829fa7ad9096cdc51b0af596828b20a2518e1f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / wt-3.2.0-py3-none-any.whl
| Download URL | wt-3.2.0-py3-none-any.whl |
|---|---|
| Size | 35.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d8f30c46751c15cd5e43b5403f4a1ef4e7305cff21b03ff8f3a5692019ca8ad4
|
|
BLAKE2b-256 checksum How to use checksums |
5f5419b6fa86affb5dc65d2c3855e0015bad7cc0d4e1e0bde212d24a1a2d5433
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.0 {"installer":{"name":"uv","version":"0.12.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|