fabro/apps/arc-web/app/lib
Bryan Helmkamp 1fd9a8ebfe SQLite-backed sessions with GitHub email and app manifest fix
Replace cookie-based sessions with SQLite-backed storage using
better-sqlite3 and React Router's createSessionStorage. Sessions are
now stored in ~/.arc/arc-web.db with a session ID cookie, enabling
larger payloads and server-side revocation.

- Add db.server.ts (lazy singleton, WAL mode, web_sessions table)
- Add session-storage.server.ts (CRUD ops, probabilistic cleanup)
- Fetch primary verified email from /user/emails during OAuth
- Add emails:read to GitHub App manifest default_permissions
- Expand session data: userUrl, githubId, githubNodeId, email
- Default ARC_API_BASE_URL to localhost:3000
- Whitelist better-sqlite3 in trustedDependencies
- Externalize better-sqlite3 from Vite SSR bundling

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 21:05:59 -05:00
..
db.server.ts SQLite-backed sessions with GitHub email and app manifest fix 2026-03-02 21:05:59 -05:00
format.ts Add demo API server and wire React app to fetch from API 2026-03-02 09:39:53 -05:00
github.server.ts Base64-encode GITHUB_APP_PRIVATE_KEY in .env 2026-03-02 20:21:53 -05:00
graph-theme.ts Add light mode support with theme toggle 2026-03-01 18:06:45 -05:00
session-storage.server.ts SQLite-backed sessions with GitHub email and app manifest fix 2026-03-02 21:05:59 -05:00
session.server.ts SQLite-backed sessions with GitHub email and app manifest fix 2026-03-02 21:05:59 -05:00
theme.tsx Add light mode support with theme toggle 2026-03-01 18:06:45 -05:00