52 lines
1.0 KiB
Markdown
52 lines
1.0 KiB
Markdown
# Monthy Tracker
|
|
|
|
Private monthly expense tracking with local-first storage, offline category suggestions, and offline monthly insights via `Ollama`.
|
|
|
|
## Local app
|
|
|
|
1. Install dependencies:
|
|
|
|
```bash
|
|
npm install
|
|
```
|
|
|
|
2. Create env config from `.env.example` and keep your local runtime settings:
|
|
|
|
```bash
|
|
cp .env.example .env
|
|
```
|
|
|
|
3. Apply migrations and start the app:
|
|
|
|
```bash
|
|
npx prisma migrate deploy
|
|
npm run dev
|
|
```
|
|
|
|
4. Keep `Ollama` running with the configured model:
|
|
|
|
```bash
|
|
ollama serve
|
|
ollama pull qwen3.5:9b
|
|
```
|
|
|
|
## Docker Compose
|
|
|
|
Start both the app and `Ollama` together:
|
|
|
|
```bash
|
|
docker compose up --build
|
|
```
|
|
|
|
This compose stack will:
|
|
- start `Ollama`
|
|
- pull `qwen3.5:9b` through the `ollama-init` service
|
|
- start the Next.js app on `http://localhost:3000`
|
|
- persist the SQLite database and pulled model with named Docker volumes
|
|
|
|
## Environment
|
|
|
|
- `DATABASE_URL` - Prisma SQLite connection string
|
|
- `OLLAMA_URL` - local or container Ollama base URL
|
|
- `OLLAMA_MODEL` - selected model tag, default `qwen3.5:9b`
|