about summary refs log tree commit diff
diff options
context:
space:
mode:
authorsternenseemann <0rpkxez4ksa01gb3typccl0i@systemli.org>2020-08-18 18:55:15 +0200
committersternenseemann <0rpkxez4ksa01gb3typccl0i@systemli.org>2020-08-18 18:55:15 +0200
commitf5f1eb61204bea7ea21af9b9964b63ffb00f2184 (patch)
treef5d1d30ac1eca6c29e8026fd9b38edab2487963d
parent21062e26ad339f3fcbe53218880d2a86c5486253 (diff)
doc(README): reflect current (unstable) state
-rw-r--r--.gitignore3
-rw-r--r--README.md50
-rw-r--r--TODO12
3 files changed, 49 insertions, 16 deletions
diff --git a/.gitignore b/.gitignore
index 4e4dd00..2e7c44e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -16,3 +16,6 @@ assets/favicon.ico
 
 # nix
 /result*
+
+# t
+.TODO.done
diff --git a/README.md b/README.md
index 8b2cd3e..80bffec 100644
--- a/README.md
+++ b/README.md
@@ -1,17 +1,35 @@
 # sternenblog
-sternenblog is a blogging engine written in C intended to work with [CGI](https://de.wikipedia.org/wiki/Common_Gateway_Interface).
-
-## How to blog with it?
-* In `config.h` set the constants to your custom values
-* In the Makefile set `TEMPLATE` to your template (see below)
-* run `make`
-* symlink/move `./blog` somewhere where your webserver will execute it as CGI script
-* blogpost are stored in `BLOG_DIR` (defined in `config.h`) the must be named like this: `YYYY-MM-DD-HH-MM-title`
-* the RSS Feed ist located at `http://your-server.com/cgi-bin/blog/rss.xml`
-
-## writing templates
-See [template.h](./template.h), [blogdefs.h](./blogdefs.h) and [simple.c](./templates/simple.c).
-(more detailed documentation is coming soon)
-
-## Is it anyhow useful?
-Oh yes. And it will take you to the stars! :stars:
+
+🌟blog — file based CGI blog software
+
+## user documentation
+
+sternenblog is documented in `sternenblog.cgi(1)` which you can read using
+`man -l doc/man/man1/sternenblog.cgi.1`. A rendered version for your
+web browser will be added soonâ„¢.
+
+## configuration and building
+
+configuration of sternenblog is static and done in
+`config.h` and `config.mk`. After configuring you
+can compile the CGI application and (optionally)
+install it:
+
+```
+make
+make install # default installation to /usr/local/share/sternenblog
+```
+
+the possible customizations are detailed in the
+[user documentation](#user%20documentation).
+
+## templating and development
+
+templating is unstable at the moment. for the current state
+you have to refer to `core.h` and `template.h`.
+
+you can generate documentation from all source files using `make doc`
+which requires `doxygen` to be installed.
+
+outstanding tasks are managed using [t](https://hg.stevelosh.com/t)
+and stored in [`TODO`](./TODO). The format is also text editor friendly.
diff --git a/TODO b/TODO
new file mode 100644
index 0000000..d89a742
--- /dev/null
+++ b/TODO
@@ -0,0 +1,12 @@
+make RSS_TTL optional | id:32a848e82d8b39bb8495f49d491882da320a3c7d
+atom feed | id:44aca4a04ff19c567e08968370cc535139807bbd
+add support for caching | id:472d68f1af5489020f4c5808e805822e3da77ffc
+rethink logging / debug output | id:5734e2717f28d80ac65d3f2123a0f46c01d4a0c1
+if possible determine BLOG_SERVER_URL automatically | id:5ad1fabab42a5776ab1446d09659c7a99a104245
+support markdown markup via lowdown | id:90c72d144f21d78d1b56790a927f6eea52df2a2c
+get rid of as many fixed size buffers as possible | id:9281f3a25aa08f6ba5d67c02e65cd0fb7f0a6b3c
+templating: give all functions context (index or not, SCRIPT_NAME, entry struct if applicable) | id:930c2e4f2c4c9ec3efef87b6ddd50a6ba6dd4903
+improve man3 situation | id:bf918930f6361c30f288c42894cbf9b0541c3340
+use errno instead of returning HTTP status codes in make_index | id:bfa35c48dcedbecd3a951eba243c4840178289ed
+templating: unify single_entry and index_entry | id:e6dcb195d890bb0b5186716808d806101d81e4f6
+sandboxing, at least chroot | id:f209aec893fe310c8276f64f6ff4a3208a2a4f28