staticvita 🪪
A lightweight yet customizable static site generator built on staticjinja, designed to generate a link tree and CV from JSON data. The focus is on a minimal footprint and producing output that is accessible to both machines (such as search engines and CV parsers) and assistive technologies like screen readers.
Demo: bnthn.github.io/staticvita
Requirements
- Python 3.9+
Install
pip install staticvita
Build a site
Run staticvita in a project directory. If site.json is missing, the command writes site.example.json and avatar.example.svg when those are not already there, then stops. Copy or rename them to site.json and avatar.svg, then run staticvita again. That reads site.json and writes the site to dist/.
Field reference: SITE.md.
Stock templates and base styles ship in the package. A templates/ directory in the project replaces them. A project static/ directory is merged on top of the packaged assets.
staticvita # site.json → dist/
staticvita -i site.json # ./site.json, else data/site.json
staticvita -C /path/to/project # build that directory
Open dist/index.html in a browser, or serve the dist/ directory with any static file server.
This repository
From a clone, at the repository root:
./build.sh
That creates a local virtual environment at venv/ if needed, installs the package, copies site.example.json to site.json when that file is missing, copies avatar.example.svg to avatar.svg when no avatar image is present, and runs staticvita.
Contributing
Development notes are in CONTRIBUTING.md.
Metadata
Release files for staticvita 0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| staticvita-0.2.tar.gz | 503.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| staticvita-0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 524.0 kB
Release files / staticvita-0.2.tar.gz
| Download URL | staticvita-0.2.tar.gz |
|---|---|
| Size | 503.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b94b7fe634567e08a1dc57f39e5d7f33f7a6e26827ecf60f4da08845f88b3999
|
|
BLAKE2b-256 checksum How to use checksums |
3aeaa3ccf7021bc9cae2754966371164ab855f9a276698fcd091a6723fde007f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.
Transparency logRelease files / staticvita-0.2-py3-none-any.whl
| Download URL | staticvita-0.2-py3-none-any.whl |
|---|---|
| Size | 20.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
62d3fa1b68fdfbb9576e9adb92f4b8e45ffec1a993e6f6b93f27c9419cd7859d
|
|
BLAKE2b-256 checksum How to use checksums |
b618842260a1bb96ee16f35744034c7b4007d385ae9a41c86e96598151927f9f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 11, 2026.
Transparency log