raycer - habit accountability PWA for ray and cer
Find a file
Spencer Flagg e410f09c93 fix: bump SW version and switch to network-first caching
VERSION was stuck at raycer-v1 so mobile PWAs never picked up
the streak fix (cache-first served the stale stats.js forever).

- Bump to raycer-v2 → triggers install, purges old caches
- Switch same-origin assets from cache-first to network-first
  so future deploys propagate immediately; cache is only used
  as an offline fallback
- Simplify to a single SHELL_CACHE (no separate runtime cache)
- Cross-origin vendor assets (Dexie CDN) stay cache-first
2026-05-03 14:00:59 +02:00
backend Initial commit: raycer accountability PWA 2026-04-23 16:45:06 +02:00
deploy deploy(coolify): record raycer app uuid and docker_compose_domains binding 2026-04-23 17:13:07 +02:00
frontend fix: bump SW version and switch to network-first caching 2026-05-03 14:00:59 +02:00
.editorconfig Initial commit: raycer accountability PWA 2026-04-23 16:45:06 +02:00
.gitignore Initial commit: raycer accountability PWA 2026-04-23 16:45:06 +02:00
docker-compose.coolify.yaml Initial commit: raycer accountability PWA 2026-04-23 16:45:06 +02:00
docker-compose.yml Initial commit: raycer accountability PWA 2026-04-23 16:45:06 +02:00
README.md Initial commit: raycer accountability PWA 2026-04-23 16:45:06 +02:00

raycer

A minimal habit-accountability PWA for two users (ray and cer).

  • Frontend: vanilla HTML/JS/CSS, Dexie.js, service worker, installable PWA
  • Backend: Node 20 + Hono + better-sqlite3
  • Reverse proxy: Traefik on raycer.test (see ~/Code/Personal_TOOLS/traefik-local-proxy)
  • Sync: offline-first with outbox + last-write-wins server upsert

Run

docker compose up -d --build
~/Code/Personal_TOOLS/traefik-local-proxy/add-domain.sh raycer
open https://raycer.test

Layout

frontend/   nginx:alpine serving the static PWA, proxies /api to backend
backend/    Hono API + SQLite (volume: raycer-data)

Goals (preseeded)

  • No sugar — 2026-04-23 → 2026-05-21
  • No social media — 2026-04-23 → 2026-05-21