- Define 6 implementation phases
- Detail Phase 1 (foundation) and Phase 2 (session notes MVP)
- Include data model for Phase 2
- Add milestone tracker
🤖 Generated with Claude Code
Owlibou TTRPG
Collaborative TTRPG platform with session notes, campaign management, and character tools.
Quick Start
# Start all services (API, frontend, database, MinIO)
docker-compose up -d
# Or run individually for development:
# API (Rust)
cd api && cargo run
# Frontend (SvelteKit)
cd suite && pnpm install && pnpm dev
Architecture
owlibou-ttrpg/
├── api/ # Rust backend (axum + PostgreSQL)
├── suite/ # SvelteKit frontend (Tailwind)
└── docs/ # Architecture documentation
Tech Stack
| Layer | Technology |
|---|---|
| Backend | Rust + axum + tokio |
| Database | PostgreSQL + pgcrypto |
| Real-time | WebSockets |
| Auth | JWT + OAuth2 |
| File Storage | MinIO (S3-compatible) |
| Frontend | SvelteKit + Tailwind |
Development
Prerequisites
- Rust 1.75+
- Node.js 20+ & pnpm
- Docker & Docker Compose
- PostgreSQL 16 (or use Docker)
Environment Setup
# Copy environment files
cp .env.example .env
cp api/.env.example api/.env
cp suite/.env.example suite/.env
# Start database and MinIO
docker-compose up -d db minio
# Run migrations
cd api && sqlx migrate run
# Start API
cd api && cargo watch -x run
# Start frontend (new terminal)
cd suite && pnpm dev
URLs
- Frontend: http://localhost:5173
- API: http://localhost:3000
- MinIO Console: http://localhost:9001
License
AGPLv3
Description
Languages
Rust
51.5%
TypeScript
19.6%
Svelte
16.8%
Dockerfile
4.9%
JavaScript
4.1%
Other
3.1%