Static site generator in Go. Made it for myself, here in case you want one too.
  • Go 66.8%
  • CSS 17.6%
  • HTML 13.5%
  • JavaScript 2.1%
Find a file
2026-04-09 23:47:10 -03:00
content/posts standardize the embedding for skeleton 2026-03-19 01:08:54 -03:00
skeleton update skeleton templates 2026-03-19 01:28:51 -03:00
static fix dark/light mode 2026-03-18 21:56:23 -03:00
templates format data in template 2026-03-18 22:20:55 -03:00
.DS_Store update skeleton templates 2026-03-19 01:28:51 -03:00
.gitignore add gitignore and stop tracking output 2026-03-18 23:10:04 -03:00
builder.go format data in template 2026-03-18 22:20:55 -03:00
builder_test.go add tests to important areas 2026-03-19 00:40:03 -03:00
config.go add config defaults 2026-03-19 00:35:46 -03:00
config.yaml add blek cmds 2026-03-18 22:52:26 -03:00
config_test.go add config defaults 2026-03-19 00:35:46 -03:00
go.mod migrate project from GitHub to personal Forgejo server 2026-04-09 23:47:10 -03:00
go.sum add basic features 2026-03-18 21:13:55 -03:00
init.go standardize the embedding for skeleton 2026-03-19 01:08:54 -03:00
LICENSE add LICENSE 2026-03-18 23:23:45 -03:00
main.go update skeleton templates 2026-03-19 01:28:51 -03:00
parser.go format data in template 2026-03-18 22:20:55 -03:00
parser_test.go add tests to important areas 2026-03-19 00:40:03 -03:00
README.md migrate project from GitHub to personal Forgejo server 2026-04-09 23:47:10 -03:00
renderer.go add basic features 2026-03-18 21:13:55 -03:00
rss.go format data in template 2026-03-18 22:20:55 -03:00
rss_test.go add tests to important areas 2026-03-19 00:40:03 -03:00
server.go fix auto reload for new files 2026-03-18 23:05:42 -03:00
static.go add basic features 2026-03-18 21:13:55 -03:00
templates.go format data in template 2026-03-18 22:20:55 -03:00

Blek

I build static site generators when I want to dig deeper into a new language. It's the project I know well enough to focus on the language itself rather than figuring out what to build. Built it in Go, liked it enough, now it's my blog.

It does what I need, nothing more.

What it does

  • build, serve, clean, new, and init commands
  • Development server with live reload
  • RSS feed (feed.xml) generated automatically from posts
  • Go's html/template — no new syntax to learn, full control
  • Posts (listed, dated) and standalone pages (About, Projects, whatever you want)
  • Markdown content

Installation

go install git.thrls.net/thiagorls/blek@latest

If blek isn't found after installation, your Go bin directory probably isn't in your PATH:

export PATH=$PATH:$(go env GOPATH)/bin

Getting started

mkdir my-blog && cd my-blog
blek init .
blek new post "First Post"
blek new page "About" (Optional)
blek serve

When you're ready to publish:

blek build

Output goes to output/.

Commands

Command Description
blek init [dir] Set up a new project with default structure and config
blek build Build the site into output/
blek serve Dev server with auto-rebuild and browser reload
blek new post "Title" New post in content/posts/
blek new page "Title" New standalone page
blek clean Delete output/
blek version Print the current version

License

MIT — do whatever you want with it.