Fino is a modern, AI-powered personal finance management application designed specifically for the Indian market. It provides users with a comprehensive suite of tools to take control of their finances, from managing daily budgets to planning long-term investments, all with the help of a sophisticated AI assistant.
- AI-Powered Financial Advice: An integrated AI finance coach (named Fino) provides expert advice on financial terminology, investment plans, and insurance products relevant to the Indian context.
- Comprehensive Dashboard: A centralized dashboard gives users a 360-degree view of their financial health, including income, expenses, savings, and investments.
- Debt Management: Users can input their debts, income, and expenses to receive an AI-generated, personalized repayment plan using strategies like the debt avalanche or snowball method.
- Goal Tracker: Set, track, and manage financial goals, from short-term savings to long-term aspirations like buying a car or a home.
- Budget Planning: Create detailed monthly budgets for recurring expenses or specific, event-based budgets for things like vacations or weddings.
- Investment Tracking: Add and monitor various investments such as stocks, mutual funds, and fixed deposits.
- Credit Card Management: Easily add and manage multiple credit/debit cards from a single interface.
- AI Landing Page Assistant: A friendly AI chatbot on the landing page to guide new users and answer their questions about the app's features.
- Framework: Next.js (with App Router)
- Language: TypeScript
- Styling: Tailwind CSS
- UI Components: ShadCN UI
- AI/Generative AI: Genkit with Google's Gemini models.
- State Management: Zustand
- Forms: React Hook Form & Zod for validation.
- Icons: Lucide React
Follow these instructions to get a copy of the project up and running on your local machine for development and testing purposes.
- Node.js (v18 or later recommended)
- npm or yarn
-
Clone the repository:
git clone <your-repository-url> cd <repository-directory>
-
Install dependencies:
npm install
Before running the application, you need to set up your environment variables.
-
Create a
.envfile in the root of your project. -
Add your Google AI (Gemini) API key to the
.envfile. You can get one from Google AI Studio.GEMINI_API_KEY=your_gemini_api_key_here
The application requires two processes to run concurrently: the Next.js frontend and the Genkit AI server.
-
Start the Next.js development server: Open a terminal and run:
npm run dev
This will start the frontend on http://localhost:9002.
-
Start the Genkit development server: Open a second terminal and run:
npm run genkit:dev
This starts the Genkit server, which powers the AI flows. You can view the Genkit developer UI at http://localhost:4000 to inspect and test your AI flows.
src/app/: Contains the main application pages and layouts, following the Next.js App Router structure.src/ai/: Houses all Genkit-related code.flows/: Defines the AI-powered flows for features like the finance coach and debt recommendations.
src/components/: Contains all the React components used throughout the application.dashboard/: Components specific to the user dashboard.landing/: Components for the public-facing landing page.ui/: Reusable UI components from ShadCN.
src/hooks/: Custom React hooks, primarily for state management with Zustand (e.g.,use-card-store.ts,use-debt-store.ts).src/lib/: Utility functions and shared libraries.