Commit Briefs

ca3ca403aa Murilo Ijanc

replace cargo with rustc makefile, add manpage, separate site content (main)

remove cargo dependency, compile with rustc via makefile and vendored crates. move source from src/main.rs to kssg.rs. add kssg.1 mandoc manpage. remove example content (site content lives in ijanc.org repo now). add new subcommand, updated frontmatter field, draft visibility in serve, post listing by year, root/ directory support, webring footer, content type detection, watcher re-registration for new dirs.



5bf6d120ef Murilo Ijanc

add file watcher via inotify and kqueue


7c20cf6f8f Murilo Ijanc

add embedded http server for local preview


bf6a94c965 Murilo Ijanc

add index page with post listing sorted by date


044348ebfe Murilo Ijanc

add series navigation between posts


41ac9085dc Murilo Ijanc

add log macro with utc timestamp via gmtime


2e6b707359 Murilo Ijanc

add recursive walk and static file copy


cf2f714a89 Murilo Ijanc

parse frontmatter from markdown ast


58c421947d Murilo Ijanc

initial skeleton: read md, generate html


Branches

Tags

This repository contains no tags

Tree

.gitignorecommits | blame
.rustfmt.tomlcommits | blame
LICENSEcommits | blame
Makefilecommits | blame
README.mdcommits | blame
kssg.1commits | blame
kssg.rscommits | blame
templates/

README.md

kssg - KISS static site generator
==================================
kssg is a minimal static site generator written in Rust.


Requirements
------------
In order to build kssg you need rustc.


Installation
------------
Edit Makefile to match your local setup (kssg is installed into
the /usr/local/bin namespace by default).

Afterwards enter the following command to build and install kssg:

    make clean install

To fetch vendored dependencies from crates.io:

    make vendor


Running kssg
------------
Build your site:

    kssg build

Start the development server with live reload (drafts are visible):

    kssg serve

Create a new post:

    kssg new "Post title"


Configuration
-------------
The configuration of kssg is done by editing the template
in templates/base.html and (re)building the site. There is no
configuration file.

Content lives in content/ as Markdown files with YAML frontmatter:

    ---
    title: Post title
    date: 2026-04-07
    description: Short description
    draft: false
    ---

    # Content here


Directory structure
-------------------
    content/       Markdown source files
    templates/     HTML templates
    static/        Static assets (copied to public/static/)
    root/          Files copied to the root of public/
    public/        Generated output
    vendor/        Vendored Rust dependencies


Download
--------
    got clone ssh://anon@ijanc.org/kssg
    git clone https://git.ijanc.org/kssg.git

License
-------
ISC — see LICENSE.