smartbill

0
0
0
TypeScript
public

SmartBill

SmartBill is a Next.js 15 invoice app for freelancers and small teams. It includes:

  • invoice editing and PDF export
  • invoice records with local-first sync
  • reusable invoice templates
  • Supabase auth and persistence
  • share links and email delivery
  • AI-assisted invoice drafting

Stack

  • Next.js 15
  • React 19
  • Tailwind CSS
  • Supabase
  • Resend
  • DeepSeek

Local Setup

  1. Install dependencies:
pnpm install
  1. Create local env vars:
cp .env.example .env.local
  1. Fill in the required values in .env.local:
  • NEXT_PUBLIC_SUPABASE_URL
  • NEXT_PUBLIC_SUPABASE_ANON_KEY
  1. Optional features:
  • DEEPSEEK_API_KEY: enables AI chat in the editor
  • RESEND_API_KEY: enables real email sending for shared invoices
  • GEMINI_API_KEY: enables legacy Gemini helper functions
  1. Start the dev server:
pnpm dev

Open http://localhost:3000.

Scripts

pnpm dev
pnpm lint
pnpm build
pnpm start

Notes

  • Google OAuth is configured in the Supabase dashboard, not in .env.local.
  • Without RESEND_API_KEY, invoice email sending falls back to mock mode.
  • Public invoice sharing depends on the Supabase share tables and RPC functions in the SQL files in this repo.
v0.3.3[beta]