Set of posix sh scripts to generate static sites (like bashblog but not dependent on bash)
Go to file
Aoi Koizumi 29a14cced9 Updated `mkpage` and README.md.
Signed-off-by: Aoi Koizumi <novaburst@kalli.st>
2022-02-02 20:00:03 -03:00
output Breaking changes, listed in CHANGELOG 2021-07-28 12:36:15 -03:00
pages More or less the same , but XD 2021-06-24 13:08:43 -03:00
.gitignore More or less the same , but XD 2021-06-24 13:08:43 -03:00
CHANGELOG mkpage has been rewritten 2021-08-17 12:27:47 +00:00
LICENSE Updated copyright statement on LICENSE , updated CHANGELOG 2021-07-28 15:10:17 -03:00
Makefile Breaking changes, listed in CHANGELOG 2021-07-28 12:36:15 -03:00
README.md Updated `mkpage` and README.md. 2022-02-02 20:00:03 -03:00
TODO More or less the same , but XD 2021-06-24 13:08:43 -03:00
gensite Moved from gt kallist -> tildegit. Also updated some stuff 2021-08-08 19:58:40 -03:00
mkpage Updated `mkpage` and README.md. 2022-02-02 20:00:03 -03:00

README.md

static site scripts

Description

This is a fork of the original project enabling XHTML 1.1 support. As well featuring the gensite script and the ability to source configuration files like Saait and filenames as UUIDs inherited from Logarion

Control-C/~novaburst is a site generated using those scripts

Usage

  • mkpage <switch> <title> <description> <author>
  • gensite

Features

  • Small and simple to understand (I hope).
  • Small amount of dependencies, requires a POSIX shell and basic Linux/Unix utilities[1][2].
  • Markdown supported by default[0], easily extendable to add your <favorite markup language>.
  • RSS and Atom output support.
  • Sitemap support (sitemap.xml and urllist.txt).

Pages

Pages are defined as shellscripts containing the metadata, for example the file pages/html-example.sh. The content filename is the basename of the shellscript with the type of markup file appended to it (.html or .md), for example the file pages/html-example.html.

If mkpage is used the filename is a value from openssl rand -hex 3 and a .md file with the same name. Example: ddc7ac.sh + ddc7ac.md => output/ddc7ac.html

(either LibreSSL or regular OpenSSL should work)

Markdown is supported. By default "smu"[0] is set as a Markdown processor, to change this set $markdown to your favorite Markdown-to-HTML converter in the file gensite

Dependencies

cat, cut, date, mkdir, printf, read, sed, sh (POSIX), test, tr

License

ISC, see LICENSE file.

References

Extras

  • The sample CSS file included is envs's default CSS file