Inspiration
The world of finance can be intimidating. Many young adults hesitate to invest because they fear losing money or simply don’t know where to start. We wanted to create a “sandbox” environment—a flight simulator for finance—where users can make mistakes, take risks, and learn from them without any real financial consequences.
The goal was to transform the dry subject of investing into an engaging, level-based game where your Net Worth is your score.
What it does
Finstinct (Financial Instincts) is a gamified financial literacy platform that allows users to simulate trading and portfolio management in a completely risk-free environment.
Gamified Ledger
Users start with virtual cash and build a portfolio. Their success is tracked through a Net Worth score.AI Market Coach
An AI assistant analyzes user trades. Instead of giving predictions or advice, it explains why a portfolio is moving, focusing on educational insights.Visual Feedback
Interactive charts and visual rewards (like confetti on milestones) make finance feel accessible and rewarding.
How we built it
Finstinct is a full-stack application built with a modern web architecture, emphasizing performance and type safety.
Tech Stack
Frontend: React 19 (Vite), TailwindCSS v4, Framer Motion, Canvas Confetti
Charts powered bylightweight-chartsBackend: Node.js & Express (game logic)
Database: PostgreSQL (via Supabase) with Prisma ORM
AI: Google Gemini (
gemini-2.5-flash) powering the AI Market CoachAuth: Supabase Authentication
Challenges we ran into
The “Login Loop”
One of our biggest hurdles was a persistent redirection loop during authentication. The root cause was a misconfiguration between frontend and backend environment variables for Supabase—specifically VITE_SUPABASE_ANON_KEY.
Debugging required tracing network requests and carefully verifying environment consistency across both local and production builds.
Prompt Engineering
Getting the AI to behave strictly as a coach was difficult. Initially, it tried to predict stock prices. We refined system prompts to restrict it to past performance analysis and financial education, avoiding forward-looking advice.
Accomplishments that we’re proud of
Bleeding-Edge Tech
Successfully built and deployed using React 19 and Tailwind v4.Seamless AI Integration
The AI Coach feels native to the UI—not like a chatbot bolted on.End-to-End Type Safety
From Prisma to TypeScript on the client, reducing runtime errors significantly.
What we learned
State Management
We learned effective patterns for managing complex game states—net worth, portfolios, and transaction history—across both client (Zustand) and server, keeping the game responsive while data remains secure.
Financial Math
Implementing portfolio calculations required a solid understanding of weighted averages and percentage growth.
Portfolio Percentage Return ( R ):
$$ R = \left( \frac{V_{current} - V_{initial}}{V_{initial}} \right) \times 100 $$
Net Worth Calculation ( NW ):
Where ( C ) is liquid cash, ( P_i ) is the price of asset ( i ), and ( Q_i ) is the quantity held:
$$ NW = C + \sum_{i=1}^{n} (P_i \times Q_i) $$
AI Constraints
We learned that prompt engineering is less about asking the AI what to do—and more about clearly defining what it must not do.
What’s next for Finstinct
Multiplayer Leagues
Competitive leagues where users compete for the highest percentage returns over fixed periods.Real-Time News Integration
Adding a news API so the AI Coach can correlate portfolio performance with real-world events.Mobile App
Porting the React 19 codebase to React Native to bring financial literacy to mobile users.
Built With
- gemini
- html
- javascript
- node.js
- prisma
- react
- supabase
- tailwindcss
- vite
Log in or sign up for Devpost to join the conversation.