70 lines
1.5 KiB
Markdown
70 lines
1.5 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
|
|
|
|
Run the app in Docker while keeping `Ollama` on the host:
|
|
|
|
```bash
|
|
docker compose up --build
|
|
```
|
|
|
|
This compose stack will:
|
|
- start only the Next.js app on `http://localhost:3000`
|
|
- keep SQLite data in a named Docker volume
|
|
- connect to host `Ollama` through `host.docker.internal`
|
|
|
|
Before running Docker Compose, make sure host `Ollama` is already up:
|
|
|
|
```bash
|
|
ollama serve
|
|
ollama pull qwen3.5:9b
|
|
```
|
|
|
|
If you run the app outside Docker, keep using:
|
|
|
|
```bash
|
|
OLLAMA_URL=http://127.0.0.1:11434/
|
|
```
|
|
|
|
## In-app helpers
|
|
|
|
- Use the dashboard runtime panel to refresh Ollama status.
|
|
- If the configured model is missing, use `Pull configured model` from the UI.
|
|
- Use `Download backup` to export the current SQLite database file.
|
|
|
|
## Environment
|
|
|
|
- `DATABASE_URL` - Prisma SQLite connection string
|
|
- `OLLAMA_URL` - Ollama base URL; in Docker Compose this defaults to `http://host.docker.internal:11434/`
|
|
- `OLLAMA_MODEL` - selected model tag, default `qwen3.5:9b`
|