Files
kvitt/web/public/favicon.svg
T
jacobh2 2ae65a5a9f
Build Kvitt images / build (push) Failing after 1h14m5s
W0 web foundation: Vite + React SPA under /app/, sync-pull ledger, auth, tokens, shared components
web/ is the browser client's scaffold: Vite 8, React 19, TypeScript 5.9 strict, React Router 7 (basename /app, every
fixed route with a lazy placeholder page), TanStack Query 5 (refetch on focus and every 60 s), openapi-typescript
types generated from contracts/openapi.yaml with openapi-fetch. Reads go through GET /sync (no REST reads exist for
the ledger, SPEC §7): useLedger() pulls from cursor 0 and then incrementally, restarting on a new epoch or
cursor_ahead. Login pairs the browser as "Web · <browser>" with an invite code (E-3); every call sends the SPEC
§14.3.1 headers, a 401 signs out. kvitt-domain's split, balances, allocation and settlement rules are ported to
web/src/lib and pass every case of contracts/test-vectors. Design tokens from design-spec §2 in tokens.css
(light-dark()), Material Symbols Rounded (Apache-2.0) as generated inline SVG, sv/en catalogs generated from
docs/ux/strings.csv plus web-strings.csv. Gate: cd web && npm run check.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TQd3pEP9UeN2uifbHknQ7B
2026-10-21 21:03:25 +02:00

2 lines
1.4 KiB
XML

<svg xmlns="http://www.w3.org/2000/svg" viewBox="-120 -1080 1200 1200"><circle cx="480" cy="-480" r="600" fill="#9c5238"/><path fill="#ffffff" d="M224.26-54q-52.32 0-88.55-36.23t-36.23-88.55v-98.96q0-16.64 11.45-28.4 11.45-11.77 28.72-11.77h93.61v-548.61q0-6.95 5.91-9.39 5.92-2.44 11.05 2.69l32.04 32.05q5.87 6.13 14.26 5.84 8.39-.28 14.52-6.41l34.05-33.48q5.87-6.13 14.26-6.13t14.52 6.13l32.48 33.48q5.87 6.13 14.26 6.13t14.52-6.13l34.61-33.48q5.2-6.13 13.8-6.13 8.59 0 14.98 6.13L532-841.74q5.87 6.13 14.26 6.13t14.52-6.13l34.05-33.48q5.2-6.13 13.79-6.13 8.6 0 14.99 6.13l33.48 33.48q5.87 6.13 14.26 6.13t14.52-6.13l34.04-33.48q5.21-6.13 13.8-6.13 8.6 0 14.99 6.13l33.47 33.48q5.87 6.13 14.27 6.41 8.39.29 14.52-5.84L843-873.22q5.13-5.13 11.33-2.69 6.19 2.44 6.19 9.39v687.74q0 52.32-36.39 88.55Q787.73-54 735.74-54H224.26Zm509.98-79.78q19.5 0 31.5-12.5t12-32.5v-605.35H315.48v516.22h339.65q16.71 0 28.16 11.77 11.45 11.76 11.45 28.4v48.96q0 20 10 32.5t29.5 12.5ZM398.48-686.74h169.26q12.75 0 21.37 8.68 8.63 8.67 8.63 21.5 0 12.82-8.63 21.32-8.62 8.5-21.37 8.5H398.48q-12.75 0-21.38-8.67-8.62-8.68-8.62-21.5 0-12.83 8.62-21.33 8.63-8.5 21.38-8.5Zm0 134h169.26q12.75 0 21.37 8.68 8.63 8.67 8.63 21.5 0 12.82-8.63 21.32-8.62 8.5-21.37 8.5H398.48q-12.75 0-21.38-8.67-8.62-8.68-8.62-21.5 0-12.83 8.62-21.33 8.63-8.5 21.38-8.5Zm292.26-74q-12 0-21-9t-9-21q0-12 9-21t21-9q12 0 21 9t9 21q0 12-9 21t-21 9Zm0 129q-12 0-21-9t-9-21q0-12 9-21t21-9q12 0 21 9t9 21q0 12-9 21t-21 9Z"/></svg>