docs: Restructure documentation with Bookstack-compatible hierarchy
- Organized docs into numbered shelf/book/chapter/page structure - Created comprehensive README.md with project overview - Added Getting Started book (quick start, installation, configuration) - Added Development book (workflow, testing, type sharing) - Added Architecture book (design principles, PDA-friendly patterns) - Added API Reference book (conventions, authentication) - Moved TYPE-SHARING.md to proper location - Updated all cross-references in main README - Created docs/README.md as master index - Removed old QA automation reports - Removed deprecated SETUP.md (content split into new structure) Documentation structure follows Bookstack best practices: - Numbered books: 1-getting-started, 2-development, 3-architecture, 4-api - Numbered chapters and pages for ordering - Clear hierarchy and navigation - Cross-referenced throughout Complete documentation available at: docs/README.md Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
172
docs/1-getting-started/2-installation/1-prerequisites.md
Normal file
172
docs/1-getting-started/2-installation/1-prerequisites.md
Normal file
@@ -0,0 +1,172 @@
|
||||
# Prerequisites
|
||||
|
||||
Required and optional software for Mosaic Stack development.
|
||||
|
||||
## Required
|
||||
|
||||
### Node.js 20+
|
||||
|
||||
```bash
|
||||
# Install using nvm (recommended)
|
||||
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
|
||||
nvm install 20
|
||||
nvm use 20
|
||||
|
||||
# Verify installation
|
||||
node --version # Should be v20.x.x
|
||||
```
|
||||
|
||||
### pnpm 9+
|
||||
|
||||
```bash
|
||||
# Install globally
|
||||
npm install -g pnpm@9
|
||||
|
||||
# Verify installation
|
||||
pnpm --version # Should be 9.x.x
|
||||
```
|
||||
|
||||
### PostgreSQL 17+
|
||||
|
||||
**Option 1: Native Installation (Linux)**
|
||||
|
||||
```bash
|
||||
# Ubuntu/Debian
|
||||
sudo apt update
|
||||
sudo apt install postgresql-17 postgresql-contrib postgresql-17-pgvector
|
||||
|
||||
# Start PostgreSQL
|
||||
sudo systemctl start postgresql
|
||||
sudo systemctl enable postgresql
|
||||
|
||||
# Verify installation
|
||||
sudo -u postgres psql --version
|
||||
```
|
||||
|
||||
**Option 2: macOS (Homebrew)**
|
||||
|
||||
```bash
|
||||
brew install postgresql@17
|
||||
brew services start postgresql@17
|
||||
```
|
||||
|
||||
**Option 3: Docker (Recommended for Development)**
|
||||
|
||||
```bash
|
||||
# PostgreSQL will be started via docker compose
|
||||
# No native installation required
|
||||
```
|
||||
|
||||
### Git 2+
|
||||
|
||||
```bash
|
||||
# Ubuntu/Debian
|
||||
sudo apt install git
|
||||
|
||||
# macOS
|
||||
brew install git
|
||||
|
||||
# Verify installation
|
||||
git --version
|
||||
```
|
||||
|
||||
## Optional
|
||||
|
||||
### Docker & Docker Compose
|
||||
|
||||
Required for containerized deployment and recommended for development.
|
||||
|
||||
**Linux:**
|
||||
|
||||
```bash
|
||||
# Install Docker
|
||||
curl -fsSL https://get.docker.com -o get-docker.sh
|
||||
sudo sh get-docker.sh
|
||||
|
||||
# Add user to docker group
|
||||
sudo usermod -aG docker $USER
|
||||
newgrp docker
|
||||
|
||||
# Install Docker Compose
|
||||
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
|
||||
sudo chmod +x /usr/local/bin/docker-compose
|
||||
|
||||
# Verify installation
|
||||
docker --version
|
||||
docker compose version
|
||||
```
|
||||
|
||||
**macOS:**
|
||||
|
||||
```bash
|
||||
# Install Docker Desktop
|
||||
# Download from: https://www.docker.com/products/docker-desktop
|
||||
|
||||
# Verify installation
|
||||
docker --version
|
||||
docker compose version
|
||||
```
|
||||
|
||||
### Authentik
|
||||
|
||||
Required for OIDC authentication in production.
|
||||
|
||||
**Docker Installation:**
|
||||
|
||||
```bash
|
||||
# Download Authentik compose file
|
||||
curl -o authentik-compose.yml https://goauthentik.io/docker-compose.yml
|
||||
|
||||
# Start Authentik
|
||||
docker compose -f authentik-compose.yml up -d
|
||||
|
||||
# Access at http://localhost:9000
|
||||
```
|
||||
|
||||
**Or use an existing Authentik instance**
|
||||
|
||||
See [Configuration → Authentik](../3-configuration/2-authentik.md) for setup instructions.
|
||||
|
||||
### Ollama
|
||||
|
||||
Required for AI features (optional for core functionality).
|
||||
|
||||
**Linux:**
|
||||
|
||||
```bash
|
||||
curl -fsSL https://ollama.com/install.sh | sh
|
||||
|
||||
# Pull a model
|
||||
ollama pull llama2
|
||||
```
|
||||
|
||||
**macOS:**
|
||||
|
||||
```bash
|
||||
brew install ollama
|
||||
|
||||
# Pull a model
|
||||
ollama pull llama2
|
||||
```
|
||||
|
||||
**Or use remote Ollama instance**
|
||||
|
||||
Configure `OLLAMA_MODE=remote` and `OLLAMA_ENDPOINT` in `.env`.
|
||||
|
||||
## Verification
|
||||
|
||||
Check all required tools are installed:
|
||||
|
||||
```bash
|
||||
node --version # v20.x.x or higher
|
||||
pnpm --version # 9.x.x or higher
|
||||
git --version # 2.x.x or higher
|
||||
docker --version # 24.x.x or higher (if using Docker)
|
||||
psql --version # 17.x.x or higher (if using native PostgreSQL)
|
||||
```
|
||||
|
||||
## Next Steps
|
||||
|
||||
Proceed to:
|
||||
- [Local Setup](2-local-setup.md) for native development
|
||||
- [Docker Setup](3-docker-setup.md) for containerized deployment
|
||||
Reference in New Issue
Block a user