Skip to main content

Distribusi is a content management system for the web that produces static pages based on the file system.

Project description

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:

Optional requirements

If you wish to use the --caption flag to add image captions read from EXIF comment metadata you will need a utility called exiftool.

You can install it via your package manager. For other options please consult the website: https://www.sno.phy.queensu.ca/~phil/exiftool/

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

distribusi-0.0.7-py2.py3-none-any.whl (18.9 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file distribusi-0.0.7-py2.py3-none-any.whl.

File metadata

  • Download URL: distribusi-0.0.7-py2.py3-none-any.whl
  • Upload date:
  • Size: 18.9 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.14.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.7.4

File hashes

Hashes for distribusi-0.0.7-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 84e4eae4ef21ce3fc34ea2bbc8ec748507ae3021d754adad4a50ea8021c4f5e0
MD5 57e66ed2b372e569b8c4ca45a531d666
BLAKE2b-256 7cebf9e544277aaf7ea834f7227f8aa9d0b284517ad824086b1d436fa6352d9e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page