45 lines
1.7 KiB
Markdown
45 lines
1.7 KiB
Markdown
# DreamChat Project Documentation
|
|
|
|
This directory contains comprehensive planning and implementation documentation for the DreamChat project.
|
|
|
|
## Documentation Structure
|
|
|
|
| Document | Description |
|
|
|----------|-------------|
|
|
| [architecture.md](./architecture.md) | System architecture, tech stack, component diagrams |
|
|
| [monorepo-guide.md](./monorepo-guide.md) | pnpm workspace setup, shared packages |
|
|
| [database-schema.md](./database-schema.md) | PostgreSQL schema, vector store design, entities |
|
|
| [api-spec.md](./api-spec.md) | REST API & WebSocket specifications, OpenAPI |
|
|
| [implementation-plan.md](./implementation-plan.md) | Phased roadmap, milestones, deliverables |
|
|
| [frontend-guide.md](./frontend-guide.md) | Frontend architecture, component hierarchy |
|
|
| [deployment.md](./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
|
|
1. **MVP**: Single character chat with memory
|
|
2. **Phase 2**: Story generation with branching tree view
|
|
3. **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*
|