About this project
Tally is a browser‑based expense‑splitting tool that works offline first and can synchronize a trusted group through short, capability‑protected live activity links backed by Supabase. Users create activities, add friends by name, record who paid, and split costs equally, by exact amounts, or via receipt photo review. The app suggests clear person‑to‑person payments, keeps a repayment history, and lets users edit or delete expenses and activities. Data persists in localStorage for local activities, while live activities store a SHA‑256‑hashed edit token in Supabase and keep a read‑only recovery copy in each browser when offline. Tally supports English and Simplified Chinese with locale‑aware defaults, IANA time‑zone timestamps, and optional AI‑assisted expense drafting via OpenRouter edge functions. Analytics and feedback are first‑party, privacy‑preserving events stored in Supabase, never exposing personal data, amounts, or capability tokens. The project is built with React 19, TypeScript, Vite, TanStack Query, Zod, Vite PWA/Workbox, Lucide icons, Vitest, and GitHub Actions, and can be self‑hosted by deploying a personal Supabase instance.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.