- /similar (nav: Similar): drop a file to get the exact MD5 match, the perceptual matches against the library, and e621 IQDB candidates (auto-run for images when credentials are configured). Read-only — nothing enters the library. - SimilarityCheck model + /api/similarity/ (create/list/retrieve/delete) with signed preview URLs and an expires_at timestamp. - Temp files are wiped on startup (AppConfig.ready, file-only so no database access during initialization), lazily past SIMILARITY_TTL_MINUTES (default 30, env-overridable), on delete, and by manage.py cleanup_similarity. - uploadFile() takes a target path; .env.example documents the TTL.
25 lines
724 B
Bash
25 lines
724 B
Bash
SECRET_KEY=change-me-to-a-long-random-string
|
|
DEBUG=True
|
|
ALLOWED_HOSTS=localhost,127.0.0.1
|
|
# Absolute path to your media folder, or relative to the backend/ folder.
|
|
WATCHED_FOLDER=media/library
|
|
|
|
# MariaDB (docker compose at the repo root)
|
|
DB_HOST=127.0.0.1
|
|
DB_PORT=3307
|
|
DB_NAME=j621
|
|
DB_USER=j621
|
|
DB_PASSWORD=j621
|
|
|
|
# Redis (docker compose at the repo root)
|
|
REDIS_URL=redis://127.0.0.1:6380/1
|
|
|
|
# Guest visibility: e621's anonymous default blacklist is mirrored into
|
|
# Redis by `manage.py refresh_guest_blacklist`.
|
|
# GUEST_BLACKLIST_FALLBACK=young,cub,shota,loli,child,underage
|
|
# GUEST_BLACKLIST_TTL=3600
|
|
|
|
# Ephemeral similarity checks: temp files are wiped on startup and after
|
|
# this many minutes.
|
|
# SIMILARITY_TTL_MINUTES=30
|