Quick Start

Quick Start

Get Pinke running locally in 5 minutes.

Prerequisites

  • Python 3.11+
  • uv (Python package manager)

Setup

# Clone the repository
git clone <repo-url>
cd pinke

# Install dependencies
uv sync

# Copy environment config
cp .env.example .env  # if .env.example exists

Configuration

Edit .env:

ENV=development           # enables /docs, /redoc
DATA=./data               # data storage path
SKIP_AUTH=true           # skip Cognito for local dev

Run

# Start dev server
make dev
# or
uv run uvicorn app.main:app --reload --port 8003

Open: http://localhost:8003

First Steps

  1. Upload a bank statement: Go to /ingest and upload a CSV/PDF
  2. Analyze transactions: View and categorize in the inspect view
  3. Create rules: Set up auto-categorization rules
  4. Visualize: Check /visualize for charts and insights

Development

# Run tests
make test
# or
uv run pytest

# Format code
make fmt

Makefile Targets

Target Description
make dev Start dev server
make test Run test suite
make fmt Format code

Troubleshooting

Port already in use

lsof -i :8003  # find process
kill <PID>     # terminate it

Database errors

Delete data/users/{user_id}/transactions.db to reset.

Import errors

Check uv sync completed and .venv is active.