# An open source alternative to Splitwise

## TODO

- [ ] Add expenses with an individual or groups
- [ ] Overall balances across the groups
- [ ] Multiple currency support
- [ ] Upload expense bills
- [ ] PWA support
- [ ] Split expense unequally (share, percentage, exact amounts, adjustments)
- [ ] Push notification
- [ ] Download your data
- [ ] Import from splitwise


## Tech stack

- [NextJS](https://nextjs.org/)
- [Tailwind](https://tailwindcss.com/)
- [tRPC](https://trpc.io/)
- [ShadcnUI](https://ui.shadcn.com/)
- [Prisma](https://www.prisma.io/)
- [Postgres](https://www.postgresql.org/)
- [NextAuth](https://next-auth.js.org/)

## Getting started.

### Prerequisites

- Node.js (Version: >=18.x)
- PostgreSQL
- pnpm (recommended)

## Developer Setup

### Install Dependencies

```bash
corepack enable
```

```bash
pnpm i
```

### Setting up the environment

- Copy the env.example file into .env
- Must: Google Provider
- Must: DATABASE_URL
```bash
pnpm db:dev # init schema
```
- Option: R2 related

### Run the app

```bash
pnpm d
```
