CameraHub is a web app for film photography that can be used to track cameras, lenses, accessories, films, negatives and prints, to fully catalogue a collection of photographic equipment as well as the pictures that are made with them.
It replaces an earlier command-line project, called PhotoDB, which has now been deprecated.
There are several ways of installing CameraHub, depending on your needs:
- With Pip
- From source
- With Docker
- With Kubernetes
CameraHub requires almost no additional config to run with default settings. However it is insecure in this configuration so at least CAMERAHUB_SECRET_KEY
and
CAMERAHUB_PROD
must be set if you are running in production.
The following environment variables are supported:
Email address for the admin
account
Default: admin@example.com
Password for the admin
account
Default: admin
Database engine
Default: django.db.backends.sqlite3
Database hostname or IP address if an engine other than SQLite is configured
Database schema or path to SQLite db
db/db.sqlite3
Database password if an engine other than SQLite is configured
Database port if an engine other than SQLite is configured
Database username if an engine other than SQLite is configured
Enable Django production mode
Default: false
Random secret value. The default string is for testing only and is insecure in production. Generate a new one here
Default: OverrideMe!
Email backend
Default: django.core.mail.backends.filebased.EmailBackend
Enable TLS for SMTP
Enable TLS for SMTP
SMTP server hostname
SMTP server username
SMTP server password
SMTP server port number
From email address
Default: noreply@camerahub.info
Site domain
Default: camerahub.info
URL for a status page
Base data is supplied as fixtures and must be manually imported after installation. These are not idempotent so should only be run once.
This data includes things like EXIF exposure programs, film formats, etc that are required to make CameraHub useful.
poetry run python manage.py loaddata --app schema Condition ExposureProgram Format Manufacturer Filmstock MeteringMode MeteringType Mount NegativeSize Process ShutterSpeed
There is also some test data like cameras and negatives which shouldn't be imported into a production deployment.