• Stars
    star
    179
  • Rank 212,766 (Top 5 %)
  • Language
    Python
  • License
    MIT License
  • Created over 12 years ago
  • Updated 8 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A static site generator in Python

Hastie - static site generator

Hastie is a static site generator, it processes a folder of markdown text files, applies a template, and generates an HTML site.

Using Hastie

To use Hastie:

  1. Create your content in markdown organized by directory.
  2. Specify templates to use in hastie.toml
  3. Run Hastie to smash the two together, output to output/
  4. Upload and serve.

Install

Install using pip

python3 -m pip install git+https://github.com/mkaz/hastie

Template Building

See the docs site in this repo for documentation.

# clone repo
git clone https://github.com/mkaz/hastie
cd hastie

# install dependencies
poetry install

# build docs site
cd docs
poetry run python ../hastie/main.py

# serve site
python3 -m http.simple --directory output/

History

Hastie started as a Go project, but rewritten to Python. See golang branch for archived code.

Why? I switched my mkaz.blog site over to static for easier maintenance and looked briefly at Pelican but it does too much. Domain name aside, my site isn't really a blog in the reverse-chronological order of posts sense; it is a collection of pages in categories.

Pelican has a lot of requirements around dates, and template types. It generates numerous additional pages for author, tags, and other things I don't really want.

So I dusted off Hastie which does exactly what I want, but since I haven't coded in Go in awhile, I switched it over to Python.

License

The project is licensed under the MIT LICENSE.

More Repositories

1

termgraph

a python command-line tool which draws basic graphs in the terminal
Python
3,131
star
2

working-with-go

A set of example golang code to start learning Go
1,152
star
3

lanyon

markdown web server
CSS
508
star
4

code-syntax-block

A WordPress plugin which extends Gutenberg adding color syntax highlighting to the code block.
CSS
319
star
5

tsblock

An example WordPress block written in Typescript
TypeScript
25
star
6

fswatch

Python script that monitors a Mac OS X folder and on change syncs with remote site
Python
20
star
7

jot

A simple command-line tool to jot notes
Rust
20
star
8

wpsync

A utility to publish posts and media to your WordPress
Go
10
star
9

templets

WordPress plugin to make it easier to create block patterns.
PHP
10
star
10

juxtapose-block

A block for WordPress that enables drop in side-by-side image comparison
JavaScript
10
star
11

dotfiles

My configuration scripts
Vim Script
10
star
12

php-doge

A basic PHP library for interacting with dogecoind
PHP
9
star
13

oneliner

A command-line tool for saving one line notes in plain text files.
Python
7
star
14

chester-colors

Repo for collecting up Chester color scheems
HTML
7
star
15

ephemeral

A program that delete tweets
Go
5
star
16

qrcode-block

QRCode Block for Gutenberg editor - see step-by-step screencasts at https://mkaz.blog/
JavaScript
5
star
17

mkaz-block-template

A block template
Mustache
4
star
18

mcbain

A WordPress theme for mkaz.blog
PHP
4
star
19

fetcher

A client library to help make HTTP requests a little easier in Go.
Go
4
star
20

carbon

A WordPress theme using React
PHP
3
star
21

light.wtf

Photography Exposure Calculators
JavaScript
3
star
22

tasks

Command-line task todo list
Python
2
star
23

ctrl-alt-vim

A fork of vim-anywhere
Vim Script
2
star
24

neojot

A Neovim plugin for jotting notes
Python
2
star
25

test-block

A block for testing.
JavaScript
2
star
26

copyright-block

A copyright block for WordPress
PHP
2
star
27

octoack

Selectively query GitHub and post to Slack
Rust
2
star
28

gutenpride

A simple example block displaying Gutenberg pride
JavaScript
2
star
29

asciinema-block

A block for WordPress to play asciinema recordings
CSS
1
star
30

wpscrub

A WordPress plugin to remove a few bits
PHP
1
star
31

anim

Simple scripts for creating 2D animation using a camera
Python
1
star
32

browser-pad

A simple HTML page that turns your browser into a basic editor.
HTML
1
star
33

wprs

A toy WordPress client written in Rust
Rust
1
star