Skip to main content

These are the docs for 0.25.0-beta, an older release.

See the current docs (0.25.1-beta) for what Norish does today.

Server & runtime

General settings for the Norish server process. Most of these do not require editing; MASTER_KEY is mandatory to generate.

Core

VariableDescriptionDefault
MASTER_KEY32+ character key for encryption derivation(required)
AUTH_URLPublic URL used for auth callbacks and linkshttp://localhost:3000
NODE_ENVRuntime environmentproduction (set by the Docker image)
HOSTServer bind address0.0.0.0
PORTServer port3000
REDIS_URLRedis connection URL for events and jobsredis://localhost:6379

Generate a MASTER_KEY

MASTER_KEY derives the encryption keys used to protect stored secrets. changing it invalidates previously encrypted data. Generate with:

openssl rand -base64 32

Networking & origins

VariableDescriptionDefault
TRUSTED_ORIGINSComma-separated additional trusted origins(empty)

TRUSTED_ORIGINS is useful when the instance is reached from more than one origin, for example http://192.168.1.100:3000,https://norish.example.com. The WebSocket refuses an upgrade from a browser origin it does not trust. WebSocket & realtime.

Auth rate limiting

VariableDescriptionDefault
AUTH_RATE_LIMIT_ENABLEDEnable auth endpoint rate limitingtrue
AUTH_RATE_LIMIT_WINDOWWindow length in seconds60
AUTH_RATE_LIMIT_MAXRequests allowed per window20

Warning

Turning this off removes brute-force protection from sign-in.

Registration

VariableDescriptionDefault
ENABLE_REGISTRATIONAllow new-user registrationfalse

After the first user signs in, registration is disabled automatically. See Authentication.

Logging

VariableDescriptionDefault
NEXT_PUBLIC_LOG_LEVELLog verbosity (debug, info, warn, error)info

Uploads

VariableDescriptionDefault
UPLOADS_DIRUpload storage directory./.runtime/uploads (dev), /app/uploads (prod)
MAX_AVATAR_FILE_SIZEMax avatar upload size (bytes)5242880
MAX_IMAGE_FILE_SIZEMax image upload size (bytes)10485760
MAX_VIDEO_FILE_SIZEMax video upload size (bytes)104857600

Scheduler

VariableDescriptionDefault
SCHEDULER_CLEANUP_MONTHSCleanup retention period in months3

Ingredient catalogue

VariableDescriptionDefault
INGREDIENT_CATALOGUE_URLWhere the ingredient catalogue seed is fetched from, nightly and at startup. Empty turns the fetch offThe Open Food Facts ingredients taxonomy
INGREDIENT_REVIEW_CONCURRENCYHow many ingredients are asked at once, from 1 to 50. Lower it when a self-hosted model struggles with parallel requests10

Norish seeds its catalogue of ingredients from the Open Food Facts ingredients taxonomy. The ingredient taxonomy is refreshed at midnight every night.

On a server without internet, serve a copy of ingredients.txt from a local mirror and point INGREDIENT_CATALOGUE_URL at it, or leave it empty. Full functionallity will remain.

The taxonomy is available under the Open Database License (ODbL). Downloadable under: Settings => Ingredients => Data sources.