⚠️ This project is currently in active development. Features may change and some functionality may be incomplete.
A modern, full-stack budget tracking application built to help you take control of your finances with smart insights and an intuitive interface.
- React 19 - The latest version of the generic library
- TanStack Router - Type-safe routing for React applications
- TanStack Query - Powerful asynchronous state management
- shadcn/ui - Beautifully designed, accessible components
- Tailwind CSS 4 - Utility-first CSS framework
- Recharts - Composable charting library
- Better Auth - Comprehensive authentication client
- Hono - Ultrafast web framework running on Node.js/Bun
- Drizzle ORM - TypeScript ORM for SQL databases
- PostgreSQL (Neon) - Serverless Postgres database
- Better Auth - Complete authentication solution
- Nodemailer - Email sending service for OTPs
- Bun - All-in-one JavaScript runtime & toolkit
- Vite - Next Generation Frontend Tooling
- Vercel - Hosting & deployment platform
- Bun v1.0.0 or higher
- PostgreSQL database (Neon recommended)
- Gmail account for SMTP (if using email OTPs)
# Clone the repository
git clone https://github.com/swapnil404/SpendSmart.git
cd SpendSmart
# Install dependencies (from root)
bun installThe project consists of a web frontend and a server backend. You can run them separately.
# Start the frontend (web)
cd web
bun run dev
# Start the backend (server)
cd server
bun run devYou will need to set up .env files in both web and server directories. Check .env.example in each directory for required variables.
Server (server/.env):
- Database credentials
- Better Auth secret & URL
- Google App Password (
GMAIL_APP_PASSWORD) for email OTPs
Web (web/.env):
- API URL
- Auth URL
├── web/ # React frontend (Vite)
│ └── src/
│ ├── components/
│ ├── routes/
│ └── ...
├── server/ # Hono backend API
│ └── src/
│ ├── db/
│ └── ...
└── README.md
MIT