~hxii/hajime

Simple, lightweight static site generator made in Python
Sync functionality; See CHANGELOG
Removed build file
Readme, license and testing

refs

main
browse  log 

clone

read-only
https://git.sr.ht/~hxii/hajime
read/write
git@git.sr.ht:~hxii/hajime

You can also use your local clone with git send-email.

Hajime Logo

Hajime (はじめ), the Japanese word meaning "beginning" (初め, 始め), is a simple and efficient SSG (static site generator) built in Python intended for personal use.

Note: Hajime is slightly opinionated.[^1]

#What

Hajime is not intended to be a feature complete replacement to SSGs like Jekyll or Hugo, but instead provide a stable enough platform to help you get your writing out to the world.

Hajime is intended to invoke a cozy and familiar feeling of an 80-s era pick-up truck with a casette player, rather than a Tesla.

#Why

Similarly to it's predecessor, Saisho, Hajime was built from the ground up with the intention to only keep the most necessary features because just as it was true back then, as it is now, in my personal experience, the biggest hurdle to sharing content with the world was the tool itself.

With Hajime this is resolved by automating the publishing process using SourceHut Builds[^2]. Thus, the tool takes itself out of the equation post the initial time investment of configuration, and relatively basic theme set-up.

#How

#External Dependencies

Hajime requires the following libraries:

For the full list, please consult the pyproject.toml file.

#Metadata

Hajime supports the following properties:

  • title - The title to display, as it may be different than the filename.
  • tags - A comma-delimited list of tags.
  • date - The date of the entry, in YYYY-MM-DD format.
  • description - Used mainly for projects.
  • type - entry (default) for a regular entry, page for a static page and project for a project.

#Template

[!note] A theme is not currently included or available. I'm working on it. For the time being, please see the template I use for my blog.

Hajime requires two template files:

  • list.html for entry listing.
  • page.html for entry content.

[^1]: Due to the personal nature of this project, certain "assumptions" have been made (e.g. template files, metadata fields, general usage). I might address these going forward. [^2]: This functionality is currently not built-in to Hajime. See how I do it.