Signia supports two database backends out of the box: a zero-configuration SQLite file for local development and a Neon-hosted PostgreSQL instance for production. The active backend is determined entirely by theDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/jtapieromalambo-ctrl/Signia/llms.txt
Use this file to discover all available pages before exploring further.
DATABASE_URL environment variable — when the variable is absent, Django falls back to db.sqlite3 automatically. Both paths use the same Django migration system, so switching between them requires no code changes.
Choosing a Backend
- SQLite (Local Development)
- PostgreSQL Neon (Production)
SQLite requires no installation or configuration. Django creates
db.sqlite3 in the project root the first time you run migrations. This is the recommended starting point for all local development work.Setup steps:-
Ensure
DATABASE_URLis not set in your.envfile (or comment it out): -
Apply all migrations to create the database schema:
-
Create an administrator account:
-
Start the development server:
db.sqlite3 is listed in .gitignore and should never be committed.Connection Pooling and SSL Settings
Signia’ssettings.py configures the database connection with several options specifically required for Neon’s serverless architecture:
conn_max_age=0 setting keeps connections short-lived, which is the correct strategy for a serverless database that may suspend compute between requests.
DATABASE_URL Format Reference
| Component | Example value | Notes |
|---|---|---|
USER | signia_owner | Database role created by Neon |
PASSWORD | abc123xyz | Shown once in Neon dashboard on creation |
HOST | ep-xyz.us-east-2.aws.neon.tech | Includes the Neon endpoint ID prefix |
DBNAME | signia | Default database name |
sslmode | require | Mandatory — do not omit |
Migration Commands
Run these commands whenever you create or pull new database schema changes:Creating a Superuser
The superuser account grants access to the Django admin panel at/django-admin/ and the video administration panel at /admin-videos/. Create one after running migrations on any fresh database:
ACCOUNT_AUTHENTICATION_METHOD = 'email'.