about summary refs log tree commit diff
path: root/README
blob: 80ad5c4c6d464bc0d8b588080e83205e019ec238 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
   _____ __       _ __      
  / ___// /______(_) /_____ 
  \__ \/ __/ ___/ / //_/ _ \
 ___/ / /_/ /  / / ,< /  __/
/____/\__/_/  /_/_/|_|\___/ 
============================

A static site generator that does exactly what we need it to and no more.

(c) 2021 Starfall <starfall.systems>, all rights reserved until I decide it's in a good enough state for others to use.

Strike has simple goals:
 ✓ Read markup files from source folder
2. Convert to HTML
 ✓ Add boilerplate (head, header, footer, etc)
 ✓ Save to output folder

And some stretch goals to turn it into a blog generator:
 * Create an extra page listing all generated pages in order of creation date (newest first)
 * Add links to next & previous generated pages
 * Turn the extra page into a flexible component that can be added into any other page
 * Use different templates on different files

strike.ini file
---------------

Strike should be passed the location of a .ini file or a directory containing a file named strike.ini. This is a text file in Python's configparser format (for now). You can see an example config file with all supported options at sample/strike.ini.

Markup
------

TBD. No markup is used at the moment.
reStructuredText fulfills most of our desires: https://docutils.sourceforge.io/rst.html
It generates <section>s and has specific markup for page titles.

Templating
----------

TBD. 

Right now, templates are just HTML in a Python f-string. You have access to the following variables:

{content} : Complete file contents.
{meta[title]} : Filename, with extension dropped.
{meta[date]} : File modification date, in HTTP header format (e.g. "Sat, 23 Oct 2021 18:28:37 GMT")

Front matter
------------

None for now.