Simple, light-weight, stand-alone, hierarchical document library as a reusable django app.
- you need a library of static media documents (PDF or other formats);
- documents are organized in hierarchical categories;
- permanent URLs for direct access to document, category, and file download (even if filename changes)
- opt-out private file storage (file storage / downloads protected by login, on by default)
- plugin permissions settings
- plugin document list view customization
- upload / edit / delete documents via django admin, and/or..,
- opt-in user-facing edit / upload / delete views and AJAX API
- python 3.8+
- django 3.2+
- django-mptt
or
- django-constrainedfilefield
- python-magic (if you want to validate file content_types)
- dropzone: drag-and-drop file uploads
- django-admin-sortable2: drag-and-drop document ordering
Special thanks to BC Hydro, Chartwell, and all Contributors
Python3, HTML5, CSS3, JavaScript
Django, django-mptt, django-private-storage
jQuery, bootstrap, dropzone
> pip install -r reqirements_dev.txt
> pytest
> tox
> isort
> black
> flake8
- Semantic Versioning
> bumpver
- invoke
> invoke -l
- GitHub Actions (see .github/workflows)
- GitHub Webhooks (see settings/hooks)