Skip to content

About

Professional invoice and proposal generator for Indian freelancers

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

FreelanceProof

Professional invoice and proposal generator for Indian freelancers.

Live: freelanceproof.in


Features

  • Invoice Generator — Line items, GST support, multiple templates (Classic/Modern/Bold), invoice history, PDF download
  • Proposal Generator — Project overview, scope of work, timeline, investment summary, PDF download
  • No account required — Everything runs in your browser; no data is sent to any server
  • Multi-currency — INR (default), USD, EUR
  • Pro tier — Unlimited downloads, no watermark, email to client, custom branding
  • Privacy first — All PDF generation happens client-side via @react-pdf/renderer

Tech Stack

Layer Technology
Framework Next.js 16 (App Router)
UI React 19 + Tailwind CSS v4
PDF @react-pdf/renderer v4
Forms react-hook-form
Fonts Space Grotesk · Inter · JetBrains Mono
Analytics Vercel Analytics + Speed Insights
Payments Razorpay (scaffolded)
Email Resend (scaffolded)
Testing Playwright
CI GitHub Actions

Local Development

npm install
cp .env.example .env.local
npm run dev

Open http://localhost:3000.


Environment Variables

Variable Required Description
NEXT_PUBLIC_APP_URL No App base URL (default: https://freelanceproof.in)
RAZORPAY_KEY_ID Pro only Razorpay Key ID for payment orders
RAZORPAY_KEY_SECRET Pro only Razorpay Key Secret
NEXT_PUBLIC_RAZORPAY_KEY_ID Pro only Public key for client-side Razorpay checkout
RESEND_API_KEY Pro only Resend API key for email delivery

Copy .env.example to .env.local and fill in the values you need.


Scripts

npm run dev          # Start development server
npm run build        # Production build
npm run start        # Start production server
npm run lint         # ESLint
npx tsc --noEmit     # TypeScript type check
npm run test         # Playwright E2E tests (requires dev server)
npm run test:ci      # Playwright tests in CI mode

Deployment

Vercel (recommended)

  1. Push to GitHub
  2. Import project at vercel.com/new
  3. Add environment variables in the Vercel dashboard
  4. Deploy

The vercel.json file includes security headers and SEO redirects.


Project Structure

src/
├── app/
│   ├── invoice/          # Invoice generator page
│   ├── proposal/         # Proposal generator page
│   ├── pricing/          # Pricing page
│   ├── about/            # About page
│   ├── privacy/          # Privacy policy
│   ├── terms/            # Terms of service
│   ├── api/
│   │   ├── create-order/ # Razorpay order endpoint
│   │   └── send-email/   # Resend email endpoint
│   ├── opengraph-image.tsx
│   ├── sitemap.ts
│   ├── robots.ts
│   ├── layout.tsx
│   └── globals.css
├── components/
│   ├── Navbar.tsx
│   ├── InvoicePDF.tsx
│   ├── ProposalPDF.tsx
│   ├── UpgradeModal.tsx
│   └── EmailModal.tsx
└── lib/
    ├── types.ts
    ├── sanitize.ts
    ├── usage.ts
    └── analytics.ts

License

MIT — free to use, modify, and distribute.

About

Professional invoice and proposal generator for Indian freelancers

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages