Files
Spendlight/scripts/dev.sh
Chris Olson c3cf0f3eb8 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>
2026-10-07 19:52:07 -04:00

25 lines
690 B
Bash
Executable File

#!/usr/bin/env bash
# Run a command with the project's Node 24 toolchain, inside the official
# Node image, so the host needs nothing but Docker.
#
# scripts/dev.sh npm install
# scripts/dev.sh npm test
# scripts/dev.sh npm run dev:server
set -euo pipefail
cd "$(dirname "$0")/.."
tty_flag=()
if [ -t 0 ] && [ -t 1 ]; then tty_flag=(-t); fi
exec docker run --rm -i "${tty_flag[@]}" \
--user "$(id -u):$(id -g)" \
--network host \
-e HOME=/tmp \
-e npm_config_cache=/app/.npm-cache \
-e npm_config_update_notifier=false \
-e npm_config_fund=false \
-e npm_config_audit=false \
-e TZ="${TZ:-America/New_York}" \
-v "$PWD":/app -w /app \
node:24-bookworm-slim "$@"