Milestones 0 and 1: foundation and money in (20261007.10)
Foundation: single arm64 container (Hono + SQLite via Drizzle, React + Vite), local sign-in with long-lived sessions and passkeys, roles (read-only, full access, admin), nightly and pre-upgrade backups, light and dark themes, date-based version numbers, and the ideas lightbulb behind IDEAS_ENABLED. Money in: accounts with balances, CSV import with bank detection, a column mapping pop-up for unknown layouts, duplicate checks, transfer pairing and undo; one-tap review with learned rules; activity with search, splits, tags, notes and cash entries. Statement files are blocked from commits by a pre-commit hook; tests use synthetic fixtures only. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
18
scripts/deploy.sh
Executable file
18
scripts/deploy.sh
Executable file
@@ -0,0 +1,18 @@
|
||||
#!/usr/bin/env bash
|
||||
# Build a new version and (re)start Spendlight with it.
|
||||
set -euo pipefail
|
||||
cd "$(dirname "$0")/.."
|
||||
|
||||
if [ ! -f .env ]; then
|
||||
cp .env.example .env
|
||||
echo "Created .env from .env.example; review it, then run this again if needed."
|
||||
fi
|
||||
|
||||
# Read the folder settings so the bind mounts exist and belong to this user
|
||||
# (otherwise Docker creates them as root and the app can't write).
|
||||
set -a; . ./.env; set +a
|
||||
mkdir -p "${DATA_PATH:-./data}" "${BACKUP_PATH:-./backups}"
|
||||
|
||||
scripts/build.sh
|
||||
docker compose up -d
|
||||
echo "Spendlight $(cat VERSION) is starting on port ${HOST_PORT:-8095}."
|
||||
Reference in New Issue
Block a user