Webifier
Webifier turns YAML, Markdown, HTML, notebooks, and other static content into a static website. It is meant to remove the publishing overhead from personal projects, research notes, notebooks, reports, and evolving documentation: decide what content goes where, commit it, and let Webifier build a navigable site.
The core package stays small: config loading, page discovery, rendering,
extension loading, hooks, template resolution, and asset copying. First-party
renderers, templates, themes, search, comments, notebooks, and resume sections
ship as the webifier-extensions package, which is installed automatically with
webifier.
Install
pip install webifier
Documentation and examples live at webifier.github.io.
Build Locally
webify --index index.yml --output webified
For project pages, pass a base URL:
webify --baseurl my-repo --index index.yml --output webified
For a root domain or <user>.github.io site, use an empty base URL:
webify --baseurl "" --index index.yml --output webified
Configure Extensions
Extensions are enabled explicitly in your site config. The instance name is local
to your site, and uses points to the installed extension implementation.
config:
webifier:
extensions:
site:
uses: webifier.standard
markdown:
uses: webifier.markdown
notebooks:
uses: webifier.notebook
search:
uses: webifier.search
theme:
uses: webifier.theme
default: system
comments:
uses: webifier.comments
Extensions can register renderers, content renderers, templates, themes, assets, resolvers, format loaders, hooks, and config defaults. Page-aware hooks can inspect page config and page content before injecting assets into the head, navigation, footer, or other extension areas.
GitHub Action
name: Webify
on:
push:
branches: [main]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: webifier/build@v1.0.1
with:
baseurl: ""
index: index.yml
publish_dir: webified
Deploy webified/ with your preferred static hosting or GitHub Pages action.
License
MIT License.
Metadata
Release files for webifier 1.0.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| webifier-1.0.5.tar.gz | 34.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| webifier-1.0.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 70.4 kB
Release files / webifier-1.0.5.tar.gz
| Download URL | webifier-1.0.5.tar.gz |
|---|---|
| Size | 34.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ad11ef7a761695b2bd4007801296b646eb79c7df8086b4c1d232e5f973a42cf2
|
|
BLAKE2b-256 checksum How to use checksums |
6359fa7a4ff45894ae25725f3b1a3e10019be6b937f0e2955233c78ec2b0bbf4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.13
|
Release files / webifier-1.0.5-py3-none-any.whl
| Download URL | webifier-1.0.5-py3-none-any.whl |
|---|---|
| Size | 35.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8e7a14fc0884257190404f2631354353669a21e70cfabe30fc0b5f005b179f98
|
|
BLAKE2b-256 checksum How to use checksums |
2ea1f28bdbda699f5863d25560aedb6b0e7c3d731b95e8802f781d74957863db
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.13
|