Static site generator
Project description
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
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 wt-3.1.0.tar.gz.
File metadata
- Download URL: wt-3.1.0.tar.gz
- Upload date:
- Size: 175.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","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}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
832674e00af46205115e82c020bfb1a7d1a89ddf212b535c54bd2187e84a7426
|
|
| MD5 |
68873cd43874c428efc131659864c265
|
|
| BLAKE2b-256 |
095dfe02fe85a6f288a3a47eefb14675921e6dffb5ea837a70fd60303918f854
|
File details
Details for the file wt-3.1.0-py3-none-any.whl.
File metadata
- Download URL: wt-3.1.0-py3-none-any.whl
- Upload date:
- Size: 35.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","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}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
423ab8e4b37c4eb7e2cf531fdfa922027fd1f510401dd7b2362d76c90da89c60
|
|
| MD5 |
6c04ebce3fa1c56cf6bedb1ee7f01aeb
|
|
| BLAKE2b-256 |
b92b0b5c210014bc4d0b449df73149204ab170a83669041af9e063150add79f2
|