Inspiration
Money stress feels heavy. Many students and gig workers have irregular income, so normal finance apps or budgeting spreadsheets just make them feel worse. We wanted to make a tool that feels kind, not judging — something you can use in 60 seconds, on a cheap phone, even on a slow connection.
What it does
Kupa is an AI financial wellness companion. Every day you answer three short questions: how money feels today, what you spent, and one money worry. In about a minute, Kupa writes back with one small, personal nudge — like moving a little money aside for rent. You can also chat with Kupa about your worries. The chat remembers your conversation, stays private, and always sounds like a supportive friend, never a lecture.
Other screens: a 4-week mood trend, a feed of past nudges, tiny savings goals, and an anonymous encouragement board where people share small wins.
How we built it
Frontend: React with TanStack Start — server-rendered, so pages load fast. Backend: Convex — a real-time database with serverless functions for auth, chat, and check-ins. AI: We use OpenRouter, which gives us access to a strong LLM (deepseek-v4-flash) for chat replies and nudge generation. Login: Email + password login, so each user's data stays private. Safety: Kupa detects when someone might be in crisis and gently points them to real help lines instead of giving money advice. Deploy: Hosted on Netlify as a server-rendered app with a static frontend.
Challenges we ran into
Making a server-rendered app work on Netlify. The biggest headache — we had to remove the old build tooling and set up TanStack Start + Nitro's Netlify preset so the page is rendered on the server but deployed cleanly. Keeping replies fast. Calling the AI model on every message could be slow, so we tune temperature, keep prompts short, and always have a kind fallback message if the model fails. Design. We wanted it to feel soft and human, not like a bank. We spent a lot of time on colors, calm wording, and animations. Time. It's a lot of features for a hackathon — we had to decide which parts to fully finish and which to polish as screens first.
Accomplishments that we're proud of
A real, working AI chat that remembers your conversation and stays private. Crisis detection built in — Kupa knows when to stop giving money advice and point to real support lines. A friendly, working sign-in system so every user has their own private space. It's light and fast, built for low-end phones and slow connections. The app actually deployed successfully to Netlify after rewriting the whole build setup.
What we learned
A good AI companion needs to sound human and stay short — kind and practical beats long and clever. Ethics matter even in a hackathon: we learned to design safety (crisis handling) into the conversation flow from the start. Server-side rendering is powerful but comes with tricky build and deploy problems. Building for real people (students, gig workers) means designing for bad network, small screens, and gentle language.
What's next for Kupa
Connect check-ins fully to the backend so mood trends and nudge history are driven by real user data. Streaks and gentle reminders (nudges at the right time of day). Optional anonymous posting to the encouragement board with real storage. Better personalization — Kupa learns your spending patterns and income rhythm over time. More languages and an even simpler version for very low-end devices.
Built With
- convex
- convex-auth
- deepseek
- eslint
- framer-motion
- lucide-icons
- netlify
- nitro
- openrouter
- prettier
- radix-ui
- react
- shadcn-ui
- tailwind-css
- tanstack-router
- tanstack-start
- typescript
- vite
- vitest
Log in or sign up for Devpost to join the conversation.