π Devpost Submission: https://devpost.com/software/rbc-launch
Experience the next generation of goal-based investing with AI-powered insights and seamless portfolio management.
Investify is a modern fintech application that revolutionizes personal investing by combining goal-based financial planning with AI-powered insights. Built with cutting-edge web technologies, it provides an intuitive platform for users to set financial goals, receive personalized investment strategies, and track their progress through engaging visualizations.
- Smart Goal Catalogue: Choose from curated financial goals across categories like travel, tech, education, and experiences
- Personalized Strategies: AI-powered recommendation engine suggests optimal investment strategies based on your timeline and risk tolerance
- Visual Goal Tracking: Interactive dashboards with progress visualization and milestone tracking
- Intelligent Insights: AI coach analyzes spending patterns and provides personalized saving suggestions
- Real-time Analytics: Smart analysis of your financial data to identify optimization opportunities
- Contextual Recommendations: Get actionable advice tailored to your specific financial situation
- Risk Profile Matching: Multiple investment strategies from conservative to aggressive growth
- Real-time Simulations: Advanced Monte Carlo simulations for portfolio projections
- Automated Rebalancing: Smart portfolio management with automated investment strategies
- Achievement System: Unlock badges and rewards for reaching financial milestones
- Social Features: Leaderboards and community challenges to motivate saving habits
- Partner Discounts: Exclusive offers from retail partners when you reach your goals
- Epic Year Summary: Beautiful annual recap showing your financial growth journey
- Interactive Visualizations: Engaging charts and animations celebrating your achievements
- Shareable Content: Social media-ready summaries of your financial wins
- Next.js - React framework with App Router
- React - Latest React with enhanced performance
- TypeScript - Type-safe development
- Tailwind CSS - Utility-first CSS framework with custom design system
- Radix UI - Accessible, unstyled UI primitives
- Framer Motion - Smooth animations and transitions
- Recharts - Interactive data visualizations
- Lucide React - Beautiful SVG icon library
- Zustand - Lightweight state management
- Local Storage - Persistent user preferences
- ESLint 9 - Code linting with Next.js configuration
- PostCSS - CSS post-processing
- Turbopack - Fast build system (dev mode)
- Node.js 18.x or later
- npm, yarn, or pnpm package manager
- Clone the repository
git clone https://github.com/MatteoGuidii/investify.git
cd investify- Install dependencies
npm install
# or
yarn install
# or
pnpm install- Start the development server
npm run dev
# or
yarn dev
# or
pnpm dev- Open your browser Navigate to http://localhost:3000 to see the application.
npm run build
npm startinvestify/
βββ public/ # Static assets
β βββ file.svg
β βββ globe.svg
β βββ next.svg
β βββ rbc_sweater.jpg # Custom goal image
β βββ vercel.svg
β βββ window.svg
βββ src/
β βββ app/ # Next.js App Router
β β βββ api/ # API routes
β β β βββ insight/ # AI insights endpoint
β β β βββ wrap/ # Annual wrap data
β β βββ wrap/[period]/ # Dynamic wrap pages
β β βββ favicon.ico
β β βββ globals.css # Global styles
β β βββ layout.tsx # Root layout
β β βββ page.tsx # Home page
β βββ components/ # React components
β β βββ ui/ # Reusable UI components
β β βββ wrap/ # Wrap feature components
β β βββ ai-coach-new.tsx # AI coaching interface
β β βββ dashboard.tsx # Main dashboard
β β βββ goal-catalogue.tsx # Goal selection
β β βββ goal-setup.tsx # Goal configuration
β β βββ rewards-new.tsx # Rewards system
β βββ data/
β β βββ mockData.json # Mock financial data
β βββ hooks/ # Custom React hooks
β βββ lib/ # Utility functions
β β βββ wrap/ # Wrap feature logic
β β βββ api.ts # API service layer
β β βββ goals-data.ts # Goal definitions
β β βββ store.ts # Zustand state store
β β βββ types.ts # TypeScript definitions
β βββ types/ # Additional type definitions
βββ eslint.config.mjs # ESLint configuration
βββ next.config.ts # Next.js configuration
βββ package.json # Dependencies and scripts
βββ postcss.config.mjs # PostCSS configuration
βββ tailwind.config.js # Tailwind CSS configuration
βββ tsconfig.json # TypeScript configuration
The application uses a custom "neo-dark" theme with:
- Primary: Green-based accent colors (#22c55e)
- Background: Dark theme with gradient overlays
- Surface: Card-based layouts with glassmorphism effects
- Text: High contrast white/gray hierarchy
- Font: Inter variable font with system fallbacks
- Scale: Semantic sizing for headers, body, and UI text
- Weight: Strategic use of font weights for hierarchy
The app uses Zustand for global state with the following key stores:
- User State: Authentication and profile data
- Goals: User's financial goals and progress
- Portfolio: Investment portfolios and performance
- UI State: Current view and navigation state
- Mock Data: Realistic financial data for development
- AI Insights: Intelligent analysis of spending patterns
- Portfolio Simulation: Advanced financial projections
- Wrap Generation: Annual summary creation
- Travel: Vacation packages and experiences
- Tech: Latest devices and gadgets
- Education: Courses and learning opportunities
- Experience: Musical instruments and hobbies
- Home: Home improvement and real estate
- Clothing: Fashion and lifestyle items
- RBC - For providing the Portfolio Simulation API
- Hack the North 2025 - For the inspiring hackathon environment
Built with β€οΈ for Hack the North 2025
Live Demo β’ Documentation β’ Report Bug