Mercurial > yakumo_izuru > aya
changeset 8:90f73028f891 draft
added readme
author | zaitsev.serge |
---|---|
date | Fri, 05 Dec 2014 21:49:42 +0000 |
parents | 11073a30f71f |
children | a890cb66ad4b |
files | README.md |
diffstat | 1 files changed, 82 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/README.md Fri Dec 05 21:49:42 2014 +0000 @@ -0,0 +1,82 @@ +zs +== + +zs is an extremely minimal static site generator written in Go. + +It's inspired by `zas` generator, but is even more minimal. + +The name stands for 'zen static' as well as it's my initials. + +## Features + +* Zero configuration (no configuration file needed) +* Cross-platform +* Highly extensible +* Easy to learn +* Fast + +## Installation + +Download the binaries from Github or build it manually: + + $ go get github.com/zserge/zs + +## Ideology + +Keep your texts in markdown format in the root directory of your blog/site. + +Keep all service files (extensions, layout pages, deployment scripts etc) +in the `.zs` subdirectory. + +Define variables in the header of the markdown files: + + title: My web site + keywords: best website, hello, world + + Markdown text goes after a *newline* + +Use placeholders for variables and plugins in your markdown or html +files, e.g. `{{ title }}`. + +Write extensions in any language you like and put them into the `.zs` +subdiretory. + +Everything the extensions prints to stdout becomes the value of the +placeholder. + +Extensions can use special environment variables, like: + +* `$ZS` - a path to the `zs` executable +* `$ZS_OUTDIR` - a path to the directory with generated files +* `$ZS_FILE` - a path to the currently processed markdown file +* `$ZS_URL` - a URL for the currently generated page + +You can also pass command line arguments, e.g: `{{ my-plugin arg1 arg2 }}` + +## Example of RSS generation + +## Hooks + +There are two special plugin names that are executed every time the build +happens - `pre` and `post`. You can define some global action here like compile +your LESS to CSS etc: + + # .zs/post + + #!/bin/sh + lessc < $ZS_OUTDIR/styles.less > $ZS_OUTDIR/styles.css + rm -f $ZS_OUTDIR/styles.css + +## Command line usage + +`zs build` re-builds your site. + +`zs watch` rebuilds your site every time you modify any file. + +`zs var <filename> [var1 var2...]` prints a list of variables defined in the +header of a given markdown file, or the values of certain variables (even if +it's an empty string). + +## License + +The software is distributed under the MIT license.