Basicest
Basicest is a minimal static site generator:
- Every produced file has a source file
- Makes use of components (via JinjaX)
- Does not assume you're making a blog, gallery, or any other kind of site
- Does not use the wrong markdown dialect
Installation
Basicest is published in PyPI as basicest.
Usage
- Make a project directory
- Write some HTML files
- Make a _components directory inside of your project
- Make some .jinja files inside of _components
- Use your new components to simplify your HTML
- Run basicest $PROJECT to do a build
For an example, see this site's source.
Local Server
If you install Basicest with the serve extra (eg pip install basicest[serve]), an auto-loading server is also installed. You can invoke it with basicest-serve $PROJECT.
Use in Actions
An action for GitHub Action workflows is provided as AstraLuma/basicest@trunk. A simple example would be:
name: Site on: push: permissions: contents: read # This is required for actions/checkout jobs: # Build job build: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - uses: AstraLuma/basicest@trunk with: root: site output: ./_build
Use in other CI
If you don't want to deal with all the Python installation, a container image is available as ghcr.io/astraluma/basicest.