Skip to content

Nitzan94/financemodels

Repository files navigation

Financial Modeling App

Build comprehensive financial models for startups and SaaS businesses with multi-year projections, scenario comparisons, and professional financial statement generation.

Features

  • Multi-year financial projections (1-20 years, default 5)
  • Cash Flow, P&L, and Balance Sheet generation
  • Multiple scenarios (base/best/worst/custom)
  • SaaS metrics (MRR, ARR, CAC, LTV, churn)
  • Professional Excel export
  • Employee and loan tracking
  • Real-time calculations with Decimal.js (no floating-point errors)

Tech Stack

  • Framework: Next.js 15 (App Router) with React 19
  • Language: TypeScript 5.6 (strict mode)
  • Styling: Tailwind CSS 4.x + shadcn/ui
  • State: Zustand 5
  • Forms: React Hook Form 7 + Zod 4
  • Database: Neon PostgreSQL + Drizzle ORM
  • Financial: Decimal.js 10 + Finance.js 4
  • Visualization: Recharts 3 + TanStack Table 8
  • Export: SheetJS (xlsx) 0.18

Getting Started

Prerequisites

Installation

  1. Clone the repository:

    git clone https://github.com/Nitzan94/financemodel.git
    cd financemodel
  2. Install dependencies:

    npm install
  3. Set up Neon database:

  4. Create .env file:

    cp .env.example .env
  5. Add your Neon connection string to .env:

    DATABASE_URL=postgresql://user:password@host/database?sslmode=require
    
  6. Push database schema:

    npm run db:push
  7. Start development server:

    npm run dev
  8. Open http://localhost:3000

Database Commands

  • npm run db:generate - Generate migrations from schema changes
  • npm run db:push - Push schema directly to database (development)
  • npm run db:migrate - Run migrations (production)
  • npm run db:studio - Open Drizzle Studio (database GUI)

Development

  • npm run dev - Start dev server with Turbopack
  • npm run build - Build for production
  • npm run start - Start production server
  • npm run lint - Run ESLint
  • npm run typecheck - Run TypeScript compiler

Project Structure

financemodel/
├── app/                    # Next.js app router
├── components/
│   └── ui/                # shadcn/ui components
├── features/              # Feature-based modules
│   ├── projections/
│   ├── assumptions/
│   └── scenarios/
├── lib/
│   ├── db/               # Database schema & client
│   ├── financial/        # Calculation engine
│   ├── services/         # API services
│   └── utils/            # Utilities
├── stores/               # Zustand stores
└── types/                # TypeScript types

Contributing

See GitHub Issues for the full implementation plan.

License

ISC

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors