Files
familysync/.planning/intel/stack.json
T
Lucas Berger d521839a40 docs(intel): refresh codebase intelligence at 99f59c3 — capture Phase 4 lists + live-sync
Stale intel reflected commit 01f7456 (pre-Phase-4). Refresh adds the shared-lists
+ SSE subsystem: 21 API endpoints (was 10), lists/sse routes, listEmitter/listAccess/rank
libs, PWA lists surface, 7 new arch decisions, and Phase 4 deps (react-router, @dnd-kit,
fractional-indexing). Canonical filenames preserved; API-SURFACE.md + .last-refresh.json regenerated.
2026-06-09 14:57:27 -04:00

54 lines
1.7 KiB
JSON

{
"_meta": {
"updated_at": "2026-06-09T18:56:37.176Z",
"commit": "99f59c3999f4ef992f01ef8f8a38c1d86d2f2a0f",
"version": 3
},
"languages": [
"TypeScript",
"SQL"
],
"frameworks": [
"Hono 4.12.23",
"React 19",
"Drizzle ORM 0.45.2"
],
"tools": [
"Vite 8.0.16",
"vite-plugin-pwa 1.3.0",
"Vitest",
"drizzle-kit 0.31.10",
"ESLint",
"node-cron"
],
"build_system": "pnpm workspaces + tsc (api) + vite build (pwa)",
"test_framework": "Vitest",
"package_manager": "pnpm 11.5.1",
"runtime": "Node.js 22 LTS",
"database": "MariaDB via mysql2 3.22.4",
"cache": "Redis (ioredis — available in infra; not yet wired; in-memory EventEmitter used for Phase 4 list SSE fan-out)",
"auth": "Authelia OIDC — authorization_code + PKCE via @hono/oidc-auth 1.8.3",
"calendar_backend": "Fastmail CalDAV via tsdav 2.2.2 + ical.js 2.2.1",
"calendar_ui": "@schedule-x/calendar 4.6.0",
"server_state": "@tanstack/react-query 5.101.0",
"client_state": "zustand 5.0.14",
"routing": "react-router 7.17.0 (BrowserRouter, /calendar + /lists + /lists/:listId)",
"drag_and_drop": "@dnd-kit/core 6.3.1 + @dnd-kit/sortable 10.0.0 (list item reorder)",
"fractional_rank": "fractional-indexing 3.2.0 (list item ordering — utf8mb4_bin collation in DB)",
"content_formats": [
"TypeScript (source)",
"SQL (Drizzle migrations)",
"iCalendar / VCALENDAR (CalDAV payloads)",
"Markdown (planning docs)"
],
"infra": {
"hosting": "Unraid + Docker Compose",
"networking": "Pangolin/Newt tunnel (no open ports), split-DNS"
},
"workspaces": {
"root": "familysync (pnpm workspace root)",
"api": "@familysync/api — apps/api",
"pwa": "@familysync/pwa — apps/pwa"
}
}