DreamChat Project Documentation
This directory contains comprehensive planning and implementation documentation for the DreamChat project.
Documentation Structure
| Document | Description |
|---|---|
| architecture.md | System architecture, tech stack, component diagrams |
| monorepo-guide.md | pnpm workspace setup, shared packages |
| database-schema.md | PostgreSQL schema, vector store design, entities |
| api-spec.md | REST API & WebSocket specifications, OpenAPI |
| implementation-plan.md | Phased roadmap, milestones, deliverables |
| frontend-guide.md | Frontend architecture, component hierarchy |
| deployment.md | Docker Compose, devcontainer, deployment guide |
Quick Reference
Tech Stack
- Backend: NestJS (TypeScript)
- Frontend: React + Vite (TypeScript)
- Package Manager: pnpm (monorepo workspaces)
- Database: PostgreSQL with pgvector
- ORM: Prisma
- Vector Store: PostgreSQL (pgvector) + LangChain + Local HuggingFace Embeddings
- LLM: OpenRouter (flexible adapter pattern)
- Real-time: WebSocket (shared types package)
- Auth: Keycloak + Password-based
- Web Scraping: Puppeteer/Playwright (headless browser)
Implementation Phases
- MVP: Single character chat with memory
- Phase 2: Story generation with branching tree view
- Phase 3: Multi-character group chat
Key Design Patterns
- Adapter Pattern: LLM providers, data import sources
- Repository Pattern: Database access
- Strategy Pattern: Predefined web scrapers
- Observer Pattern: WebSocket events
Last updated: 2026-02-23