sw stands for Suckless Web-framework. As the name suggests It aims to be a minimal and sane web framework.


Get it!

$ hg clone

sw configuration

Configuration is done by editing sw.conf (I think the names of the variables and the comments are self-explanatory enough):

TITLE=""           # Site title
SUBTITLE=""               # Site subtitle
BL=" images"      # Black list
STYLE="style.css"         # Stylesheet name
MDHANDLER="/usr/local/bin/md2html.awk" # md handler

sw installation

Just run:

sudo make install

If you want to override the default prefix (/usr/local):

sudo make install PREFIX=/path/to/prefix


We want to create a web site with a section called "papers" with two papers inside called "paper1" and "paper2" respectively. In this case, we should create a structure like this:

      +- sw.conf
      +- style.css
      +- site/
          +- papers/

And run:

sw site

The static site will be created under "site.static". The whole process can be automatized if you create a Makefile like this in your working directory:

$ cat Makefile
	sw site
	rsync -avz site.static/
	rm -rf site.static


Thanks to Uriel ( for creating werc which inspired sw and which stylesheet was used by default.

Thanks to Jesus Galan (yiyus) for coding md2html.awk.

Thanks to pancake for coding sw.gen.

Thanks to Andrew Antle for the new stylesheet.