Documentation
Welcome to the portfolio documentation. This guide covers setup, development, architecture, and deployment.
Quick Links
| Need to... | Go to... | |------------|----------| | Set up the project | Installation | | Start developing | Development Guide | | Deploy to production | Deployment Overview | | Understand the architecture | Architecture Overview | | Configure the chat | Chat Configuration |
Documentation Structure
Getting Started
- Installation - Set up the project
- Development - Day-to-day workflow
- Commands - Available npm scripts
Architecture
- Overview - System design
- Infrastructure - AWS resources
- OpenNext - Build configuration
- Packages - Monorepo structure
Features
-
Chat System
- Overview - How chat works
- Architecture - Technical details
- Configuration - Tuning options
-
Blog
- Overview - Blog system
-
Projects - GitHub integration
-
Authentication - NextAuth.js setup
Configuration
- Environment Variables - Complete reference
- Secrets Management - Handling secrets
Deployment
- Overview - Deployment strategy
- CI/CD - GitHub Actions
- Environments - Environment setup
- Apps Domain Convention - Apps + API routing and central SSO
Testing
- Overview - Testing strategy
- E2E Testing - Playwright tests
- Chat Evals - Chat quality testing
Package Documentation
Each package has its own README:
| Package | Description | |---------|-------------| | @portfolio/chat-contract | Type contracts | | @portfolio/chat-data | Search and retrieval | | @portfolio/chat-orchestrator | LLM integration | | @portfolio/chat-next-api | API handlers | | @portfolio/chat-next-ui | UI components | | @portfolio/chat-preprocess-cli | Preprocessing | | @portfolio/github-data | GitHub client | | @portfolio/test-support | Test utilities | | @portfolio/cdk | Infrastructure |
Contributing
When adding new documentation:
- Place files in the appropriate category folder
- Use consistent Markdown formatting
- Include code examples where helpful
- Link to related documentation
- Update this index if adding new sections
