gotukola

command module
v1.0.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 20, 2023 License: GPL-3.0 Imports: 8 Imported by: 0

README

logo gotukola

Or, Gotu kola, or Centella asiatica.

Gotukola is simple markdown server and compiler of static sites, written on go. I started it as the engine of my personal website.

What's inside

  • A simple web server (http.ServeMux) for serving static files and markdown pages.
  • Go Markdown parser for pages, complemented with custom rendering extensions.
  • Structured logging via Logrus.
  • My custom implementation of in-memory LFU cache for rendered pages.
  • Configuration structure using gopkg.in/yaml.v3
  • Code formatting using gofumpt (set as a git hook).

Working with gotukola

  1. Install gotukola engine
    go install github.com/dissipative/gotukola
    
  2. Create directory with your markdown files and assets:
    • generate new project with gotukola --init <project name>
    • put .md files to <project name> directory
    • put images and other files to <project name>/assets/
    • edit template at <project name>/templates/default.html (or create your own)
  3. Start engine with gotukola --serve!
  4. Compile static website with gotukola --compile

To Do

  • Increase test coverage.
  • Implement cache TTL.
  • Migrate to Go 1.21.
  • Live reloading for serve mode

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
internal
app
fs

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL