Nudge is a mobile banking feature for Sound Credit Union that surfaces personalized deals, tracks your savings, and delivers AI-powered financial advice — all inside the app you already use.
Built at HuskyHack 2025.
Credit union members leave money on the table every day. Cashback offers go unnoticed, local deals expire unclaimed, and loyalty points pile up unredeemed. Banks have the transaction data to fix this — but most don't act on it.
Nudge turns your spending history into savings. It lives inside the Sound Credit Union mobile app as a dedicated tab and does three things:
Members see a curated feed of offers matched to their spending habits — local coffee shops, grocery cashback, travel rewards, loan promotions, and limited-time bonuses. Deals are filterable by category and sorted by relevance. Tap any deal to see full details and a QR code for instant redemption.
When a member is near a partner merchant, Nudge sends a real-time in-app notification ("You're 0.4 mi from Stumptown Coffee — get 25% off now"). No separate app. No opt-in friction.
A dedicated savings dashboard shows:
- Total saved this month with month-over-month trend
- Savings over time chart (5-month history)
- Category breakdown — Food, Travel, Loans, Shopping
- Nudge Advice — personalized tips generated by GPT-4o-mini based on the member's actual savings profile
- Savings projection — forecasted savings if current habits continue
The app runs as a mobile phone mockup in the browser. Sign in with any credentials to explore:
npm install
npm run dev
Open http://localhost:3000 — the UI renders inside an iPhone frame.
| Layer | Technology |
|---|---|
| Frontend | React 18, TypeScript, Vite |
| Styling | Tailwind CSS, shadcn/ui, Radix UI |
| Charts | Custom SVG + Recharts |
| Animations | Motion |
| Backend | Node.js, Express |
| AI | OpenAI GPT-4o-mini |
| Deployment | GitHub Pages, Docker + Nginx |
docker-compose up -dAvailable at http://localhost:8080.
The Express server powers the AI savings analysis endpoint:
OPENAI_API_KEY=your_key node src/server/index.jsGET /api/savings/analysis returns { totalSaved, changePercent, timeline, insight } — the insight is generated by GPT-4o-mini from the member's savings profile.
Built by the HuskyHack team for the Sound Credit Union fintech challenge.