SQLite Setup
Run Auvyra with no separate database server.
SQLite is fully supported. It passes the same contract test suite as MongoDB, and every Auvyra feature works the same on every engine. Your whole database is one file, so there is no database server to install or look after.
Choose it for a small station on one server. If you expect heavy traffic, or a busy newsletter list, use one of the other engines. SQLite writes one change at a time, and that file must sit on a disk attached to the server, not a network share.
With Docker Compose
Use the SQLite Compose file instead of the default one:
node scripts/generate-env.mjs
docker compose -f docker-compose.sqlite.yml up -d --buildUse the same -f docker-compose.sqlite.yml for every later docker compose command, such as logs and down.
Your database and uploads live together in one Docker volume, mounted at /data. If you already have a .env, running the script again adds anything it lacks and changes nothing else.
Your own server
Set these in .env, using a full path to a folder Auvyra can write to:
DATABASE_PROVIDER=sqlite
DATABASE_URL=file:/var/lib/auvyra/auvyra.sqliteAuvyra creates the file and its folder. Three files appear side by side while it runs, because SQLite keeps recent changes in auvyra.sqlite-wal. Keep them together.
Check the connection
pnpm db:initA success prints the SQLite version. Tables are also created automatically when Auvyra starts.
Versions
SQLite comes with Node.js, so there is nothing to install. Node.js still labels this module experimental, so your logs may show an ExperimentalWarning when Auvyra starts. That is expected.