RBC Launch – Investify
Inspiration
We kept asking ourselves: how many students want to start investing but never do, simply because it feels overwhelming?
- Which broker is the best?
- How much should I invest each month?
- What if I don’t have the knowledge?
For most people, that uncertainty is enough to stop them from investing altogether.
We wanted to remove that barrier by building a product that makes investing feel as simple and motivating as setting a life goal, so students can start early, stay consistent, and actually watch their future take shape.
What it does
Investify is a goal-based investing + rewards experience that turns saving toward life milestones into a gamified, AI-supported journey.
- 🎯 Goal Setting – choose from a goal list (trip, laptop, down payment, emergency fund) or create your own.
- 📊 Dashboard – shows progress bars, time estimates, and milestones.
- 🤖 AI Coach (GPT-4o-mini) – uses the Martian API key if present to give short tips (or a fallback message if not).
- 💎 Rewards – you earn “lifetime points” that turn into levels and tiers; compare progress on a simple leaderboard.
- 📈 Portfolio Simulation – each goal creates a simulated portfolio using the hackathon portfolio API plus a basic growth formula after the first period.
- 🎉 Year Wrap (Prototype) – a summary idea for what you achieved during the year.
With a few clicks, you go from “I don’t know where to start” to “I’m moving toward my goals.”
How we built it
- Frontend: Next.js 15 (App Router, React 19), TypeScript, Tailwind CSS 4, Radix UI, Framer Motion.
- State: Zustand with devtools + manual localStorage save/load (not using the persist helper yet).
- Data & Simulation: Helper in
apiServicecalling the Hackathon Portfolio Simulation API. - Charts: Recharts + small custom components.
- Persistence: No real database yet. We just keep data in memory and also store a copy in the browser (
localStorage) so a refresh keeps the demo. Clearing storage or switching devices resets it. - AI Coach: GPT-4o-mini via Martian. If no key or error, we show a random fallback tip.
- Rewards Logic: Lifetime points → level (every 1,000 pts) → tier (Bronze, Silver, Gold, Diamond). Leaderboard uses lifetime points so redeeming later won’t drop your rank.
Development Flow
- Set up a goal model (
Goal,UserGoal,Milestone). - Built a central store that seeds demo data and reloads it from the browser.
- Wrapped outside API calls in a simple helper (
apiService). - Combined first 12‑month simulation data with a simple savings growth formula for longer projections.
- Added clean UI pieces and light animations.
- Ensured the demo loads “full” instantly for judging.
How Your Data Is Stored Right Now
- No real database yet
- Data lives in memory while the site is open
- A simple copy (user, client, goals, demo flags) is saved in your browser (
localStorage) so refresh keeps the demo - Clear storage / new browser = fresh start
Rewards, Levels & Tiers (Exact Logic)
- Level = floor(lifetimePoints / 1000).
- Tier ranges:
- Bronze: Levels 0–4
- Silver: Levels 5–14
- Gold: Levels 15–29
- Diamond: Levels 30 and above (visual bar capped at 49+).
- Progress bar sections get wider for higher tiers (they take more levels).
Challenges we ran into
- Learning a new external API fast.
- Designing a flexible model for goals, milestones, and rewards.
- Making AI tips feel specific, not generic.
- Shipping UI polish under time pressure.
Accomplishments we’re proud of
- 🚀 Built an investing + AI + simulation experience in under 36 hours.
- 🎨 A simple, modern interface that feels approachable.
- 🤖 Context-aware AI tips (with safe fallback).
- 📊 Clear visual progress that makes saving feel tangible.
What we learned
- Clear goal framing motivates users.
- Simple design beats complex dashboards early on.
- Blending API results with a local formula gives resilience.
- Team focus and scoping matter in short sprints.
What’s next
- Real bank data → smarter “spend less here, reach goal faster” tips.
- Real rewards backend + tracking of redemptions.
- Group goals (shared trip, etc.).
- Mobile app + push notifications (milestones, streak reminders).
- Avion Rewards + other RBC tie‑ins.
- Production backend (database + secure auth).
- Rich Year Wrap animations and deeper stats.
Built With
- gpt-4o-mini
- localstorage
- node.js
- radix
- react
- recharts
- tailwind
- typescript
- zustand

Log in or sign up for Devpost to join the conversation.