Distribusi is a content management system for the web that produces static pages based on the file system.
Go to file
2019-09-04 16:13:29 +02:00
distribusi speed up by not calling exiftools always, images now always have figcaptions, catch errors properly 2019-09-04 16:13:29 +02:00
scripts Package it up! Get it in shape for PyPi. 2018-11-23 14:49:48 +01:00
.gitignore Ignore new Pip related files 2019-07-08 20:01:15 +02:00
CHANGELOG.md Add changelog 2019-07-08 20:25:00 +02:00
LICENSE Package it up! Get it in shape for PyPi. 2018-11-23 14:49:48 +01:00
Makefile Don't use pipenv for releases 2019-07-08 20:01:25 +02:00
pyproject.toml Add Black and Pip files config 2019-07-08 20:01:36 +02:00
README.md Show how to upgrade 2019-07-08 20:43:33 +02:00
setup.py speed up by not calling exiftools always, images now always have figcaptions, catch errors properly 2019-09-04 16:13:29 +02:00
TODO.md Package it up! Get it in shape for PyPi. 2018-11-23 14:49:48 +01:00

Distribusi CMS

PyPI version

distribusi is a content management system for the web that produces static index pages based on folders in the filesystem. It is inspired by the automatic index functions featured in several web servers. It works by traversing the file system and directory hierarchy to automatically list all the files in the directory and providing them with html classes and tags for easy styling.

Requirements

While a Pip install will pull in Python dependencies, you might need system dependencies. This package requires two underlying packages. Those are python-magic, and pillow. Here are the installation documentation for those packages:

Install It

$ export PATH=$PATH:$HOME/.local/bin
$ pip install --user distribusi

Upgrade It

If you already have it, you can upgrade with:

$ pip install -U distribusi

Use It

Get help with:

$ distribusi --help

Make a distribusi of your home folder:

$ distribusi -d ~/

You will find that you now have an index.html in every folder.

Create a quick gallery for the web:

$ distribusi -d /path/to/my/photos -t

This creates an index.html with base64 encoded thumbnails.

Generate verbose output:

$ distribusi -v

Make an index of the archive page:

$ distribusi -d /var/www/archive/my_event -t -v

Change It

You'll need to get a copy of the repository and then do an editable install:

$ git clone https://git.vvvvvvaria.org/varia/distribusi.git && cd distribusi
$ python3 -m venv .venv && source .venv/bin/activate
$ pip install -e .

You're then ready to make your changes and experiment with them.

Release It

You'll need a PyPi account and to be added as a maintainer.

Please ask around @ Varia for who has PyPi access.

$ pip install twine
$ make publish