# Build output
/verdande
/dist/
*.exe

# The data volume: database, uploaded files, backups. Never in git.
/data/
*.db
*.db-wal
*.db-shm

# Frontend
node_modules/
# iCloud syncs ~/Documents, and it evicts what it thinks is cold — which for a
# dependency tree is nearly all of it. An evicted file blocks on read until it is
# downloaded again, and a download that stalls hangs the build for good: 0 % CPU,
# no output, forever. macOS never syncs anything ending in .nosync, so the tree
# lives there and `node_modules` is a symlink to it. Redo it after a fresh clone:
#
#     mv node_modules node_modules.nosync && ln -s node_modules.nosync node_modules
#
# The real fix is a repo path outside a synced folder.
node_modules.nosync/
/web/.svelte-kit/
/web/build/

# Local environment
.env
.env.local

# Editor / OS
.DS_Store
*.swp
.idea/
.vscode/

# Copied in by the Docker build; never committed.
/cmd/verdande/webbuild/

# Frontend build output and dependencies
/web/build/
/web/.svelte-kit/

# End-to-end runs: the throwaway instance the suite starts, the saved session it
# signs in with, and whatever a failure left behind.
/web/.playwright-data/
/web/e2e/.auth/
/web/test-results/
/web/playwright-report/

# Built documentation
/site_build/

# Vite writes these while bundling vite.config.js and removes them again — unless
# the process is killed, which during a hung build is exactly what happens. One
# was committed by accident.
/web/vite.config.js.timestamp-*.mjs

# A compiled `go build ./tools/shots` in the repo root. It was committed once by
# accident — 8.9 MB of macOS binary — and `go build ./tools/shots` without -o puts
# it right back.
/shots

# The working handover. It names the panel, the server id and the production
# address — a map of one person's setup, which does not belong in a public repo.
# Kept on disk because it is how a session hands over to the next one.
HANDOFF.md
