An AI-powered investment account opening platform built with Next.js and Google Gemini AI.
QuickVest AI streamlines the investment account creation process using artificial intelligence to guide users through identity verification, document uploads, and personalized investment recommendations.
- 🤖 AI-Powered Chat Assistant - Real-time investment advice using Google Gemini AI
- 🔐 Secure Authentication - User login and registration with session persistence
- 📸 AI Identity Verification - Automated selfie and ID document verification using Gemini Vision
- 📄 Document Management - Secure upload of investment-related documents
- 🎯 Personalized Recommendations - AI-generated investment strategies based on user profile
- 💾 Progress Persistence - Save and resume your application across sessions
- 📱 Responsive Design - Works seamlessly on desktop and mobile devices
- Framework: Next.js 14 (React)
- Language: TypeScript
- Styling: Tailwind CSS
- Animations: Framer Motion
- AI Integration: Google Gemini API
gemini-2.5-flashfor chat and recommendationsgemini-2.5-flashfor image verification (identity & documents)
This project utilizes the following AI services:
- Provider: Google AI Studio
- Models Used:
gemini-2.5-flash: Powers the AI chat assistant and generates personalized investment recommendationsgemini-2.5-flash(Vision): Analyzes selfies and ID documents for identity verification
- Documentation: Gemini API Docs
- Get API Key: Google AI Studio
- AI Assistant Used: Claude (Anthropic) via Cursor IDE
- Purpose: Code generation, debugging, and development assistance
- Node.js 18+ and npm. To install: Download from: https://nodejs.org/.
- Google Gemini API key (Get one here)
- Go to your terminal and clone the repository:
git clone https://github.com/N-Rocky/quickvest.git
cd quickvest- Install dependencies:
npm install- Create a
.env.localfile under the quickvest directory and copy and paste the following in:
NEXT_PUBLIC_GEMINI_API_KEY=your_gemini_api_key_here
GEMINI_API_KEY=your_gemini_api_key_here- Run the development server in the terminal:
npm run dev- Open http://localhost:3000 in your browser
quickvest/
├── app/ # Next.js app directory
│ ├── api/ # API routes
│ │ ├── chat/ # AI chat endpoint
│ │ ├── verify-selfie/ # Selfie verification endpoint
│ │ └── verify-id/ # ID verification endpoint
│ ├── page.tsx # Main application page
│ └── layout.tsx # Root layout
├── components/ # React components
│ ├── steps/ # Multi-step form components
│ ├── Header.tsx # App header with logout
│ ├── PersistentChatbot.tsx # AI chat assistant
│ └── AuthModal.tsx # Login/register modal
├── hooks/ # Custom React hooks
│ ├── useAuth.ts # Authentication hook
│ └── useFormData.ts # Form state management
├── utils/ # Utility functions
│ └── geminiService.ts # Gemini API service
└── public/ # Static assets
- Powered by Google Gemini's
gemini-2.5-flashmodel - Provides real-time investment advice and answers questions
- Context-aware responses based on user's profile
- Persists chat history across sessions
- Selfie Verification: Uses Gemini Vision to verify that the uploaded image contains a real human face
- ID Document Verification: Analyzes government-issued IDs (driver's license, passport, etc.) using Gemini Vision
- Real-time verification feedback with confidence scores
- "Previously Verified" status for returning users
- Secure login and registration system
- Session persistence across browser tabs
- User-specific data storage in localStorage
- Automatic logout and session cleanup
- All form data is automatically saved to localStorage
- Each user has their own isolated data
- Resume your application exactly where you left off
- Completed steps remain marked even after logout
This application makes API calls to Google Gemini for:
- Chat messages (1 request per message)
- Identity verification (2 requests per verification: selfie + ID)
- Investment recommendations (1 request per generation)
This project uses Fidelity-inspired branding:
- Font: Fidelity Sans (loaded from Fidelity CDN)
- Colors: Fidelity green palette (#006044, #76a923, #E4F5DD)
- Logo: Custom Fidelity "F" logo
MIT License
Copyright (c) [year] [fullname]
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- AI Development: Claude (Anthropic) via Cursor IDE
- AI Services: Google Gemini API
- UI Design: Inspired by Fidelity Investments
- Icons: Lucide React
- Animations: Framer Motion