I built Cardly because I kept finding expired gift cards in my drawer or forgetting how much balance was left on them. I wanted a simple, mobile-friendly way to track them without checking 5 different websites.
The Tech Stack:
Frontend: Next.js 14 (App Router), TypeScript, Tailwind CSS
Auth: Supabase with Google OAuth
State/Storage: React Context API + LocalStorage (currently user-scoped local persistence)
Key Features: Visual dashboard for total value/spending
Color-coded expiration alerts (Red < 7 days, Yellow < 30 days)
Works offline (data persists locally)
It's fully open source (MIT). I’m currently working on adding cloud sync and transaction history.I'd love to hear your feedback on the code structure or features you think are missing.