Software that makes simple Markdown content go. Used on bss.zone and other domains of mine.
Go to file
Brian S. Stephan 1de69dfc70 requirements bump 2021-10-08 07:30:46 -05:00
incorporealcms remove a bunch of unnecessary font size styling 2021-10-08 07:16:31 -05:00
requirements requirements bump 2021-10-08 07:30:46 -05:00
tests handle graphviz parsing errors more cleanly 2021-06-24 11:37:57 -05:00
.gitattributes add setup.py with versioneer support 2020-03-07 00:29:17 -06:00
.gitignore replace CI tools with tox invocation 2020-06-16 23:00:49 -05:00
CONTRIBUTING.md add a CONTRIBUTING file 2021-06-04 17:41:18 -05:00
LICENSE relicense the project under GPLv2 2021-06-02 07:44:23 -05:00
MANIFEST.in versioneer.py doesn't need to be included in the package 2020-06-18 23:29:37 -05:00
README.md add installation and usage information 2021-06-05 22:59:00 -05:00
setup.cfg replace CI tools with tox invocation 2020-06-16 23:00:49 -05:00
setup.py call the pydot rendering support 'dot' in package extras 2021-10-08 07:09:21 -05:00
tox.ini safety in tox: scan requirements for known bad packages 2021-06-24 11:46:56 -05:00
versioneer.py add setup.py with versioneer support 2020-03-07 00:29:17 -06:00

README.md

incorporeal-cms

Software that makes simple Markdown content go.

Installation and Usage

I recommend getting a release from https://git.incorporeal.org/bss/incorporeal-cms/releases and installing the Python package in a virtualenv. Something like the following should suffice:

% cd ~/site
% virtualenv --python=python3.8 env-py3.8
% source env-py3.8/bin/activate
% pip install -U pip
% pip install ~/incorporeal_cms-1.3.0-py3-none-any.whl
% pip install -U gunicorn
% gunicorn -w 5 -t 60 -b 127.0.0.1:10000 --reload 'incorporealcms:create_app()'

This will get the CMS up and running, and listening on the specified port. The application is further configured within env-py3.8/var/incorporealcms-instance/config.py, and content is served out of env-py3.8/var/incorporealcms-instance/pages/.

Serving a Site

Put content inside env-py3.8/var/incorporealcms-instance/pages/ and go.

  • Markdown files (ending in .md) are rendered via Python-Markdown if they are accessed without the suffix (i.e., post.md should be referred to as /post to get it to render as Markdown.
  • Directory paths (e.g. /dir/) can be rendered with a /dir/index.md file.
  • Symlinks to files are treated as redirects to the destination content.
  • Request paths with file suffixes are not rendered and served directly, so images, etc., can be referenced naturally, and even the unrendered Markdown can be served as a text file via e.g. /post.md.

Care is taken to not serve content above the pages/ dir, even via symlink.

Author and Licensing

Written by and copyright Brian S. Stephan (bss@incorporeal.org).

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License (included in this repository), or (at your option) any later version.