Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
c861fba
feat: add configurable Claude executable path
krzemienski Jul 13, 2025
a2a3ab5
docs: update CLAUDE.md with executable path configuration
krzemienski Jul 13, 2025
65ac9ef
feat: add comprehensive Docker Compose support
krzemienski Jul 13, 2025
7538699
Merge branch 'siteboon:main' into feature/docker-compose-support
krzemienski Jul 13, 2025
ea9c466
enhance Docker Compose support with full host integration
krzemienski Jul 13, 2025
c4a830a
fix port configuration and Docker development setup
krzemienski Jul 13, 2025
4853178
refactor: remove hardcoded user paths and make them configurable
krzemienski Jul 13, 2025
aa82a92
feat: implement MCP server detection from host Claude configuration
krzemienski Jul 14, 2025
1b06474
feat: complete MCP server management implementation
krzemienski Jul 14, 2025
919e1b6
fix: remove --only=production flag from frontend build stage
krzemienski Jul 14, 2025
314a0e2
fix: address PR review comments for Docker configuration
krzemienski Jul 14, 2025
9bc0591
fix: correct file references in documentation
krzemienski Jul 14, 2025
93e0110
Merge branch 'main' into feature/docker-compose-support
krzemienski Jul 14, 2025
337d2a0
Merge branch 'main' into feature/docker-compose-support
krzemienski Jul 14, 2025
f224dfa
feat: make Docker configuration platform-agnostic
krzemienski Jul 15, 2025
ed7ae2e
fix: make MCP configuration paths platform-agnostic
krzemienski Jul 15, 2025
dde7e3e
Merge branch 'main' into feature/docker-compose-support
krzemienski Jul 15, 2025
7e1332b
fix: resolve Docker issues from PR feedback
krzemienski Aug 1, 2025
ec42999
chore: remove cursor and windsurf configuration files
krzemienski Aug 2, 2025
18a98c7
chore: remove roo configuration files and taskmaster rules
krzemienski Aug 2, 2025
985c15b
Merge branch 'main' from upstream/main into feature/docker-compose-su…
krzemienski Aug 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 49 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# Dependencies
node_modules/
npm-debug.log
yarn-error.log

# Build outputs
dist/
build/

# Development files
*.log
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local

# Editor directories
.vscode/
.idea/
*.swp
*.swo

# Git
.git/
.gitignore

# Testing
coverage/
.nyc_output/
test-screenshots/
screenshots/

# Documentation
*.md
docs/

# Temporary files
tmp/
temp/
.tmp/

# Database (will be created in container)
server/database/*.db

# Test files
test-*.js
*.test.js
*.spec.js
127 changes: 127 additions & 0 deletions .env.docker
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
# Claude Code UI Docker Environment Configuration
# Copy this file to .env and customize for your setup

# ===========================================
# APPLICATION CONFIGURATION
# ===========================================

# Server ports
PORT=2008
VITE_PORT=2009

# Environment
NODE_ENV=development

# Database configuration
DB_PATH=/app/server/database/auth.db

# ===========================================
# AUTHENTICATION & SECURITY
# ===========================================

# JWT Secret (generate a secure random string)
JWT_SECRET=your-super-secure-jwt-secret-key-here

# Default admin user (created on first startup)
DEFAULT_ADMIN_USERNAME=admin
DEFAULT_ADMIN_PASSWORD=change-this-secure-password

# Session timeout (in milliseconds, 24 hours = 86400000)
SESSION_TIMEOUT=86400000

# ===========================================
# CLAUDE API CONFIGURATION
# ===========================================

# Your Anthropic API key (optional - only needed if using Claude CLI directly)
# The UI uses the Claude CLI which should already be configured on your host
# ANTHROPIC_API_KEY=sk-ant-your-api-key-here

# Claude model configuration
CLAUDE_DEFAULT_MODEL=sonnet
CLAUDE_MAX_TOKENS=4096

# Custom Claude executable path (optional)
CLAUDE_EXECUTABLE_PATH=/usr/local/bin/claude

# ===========================================
# WORKSPACE CONFIGURATION
# ===========================================

# Project workspace directory (mounted as read-only)
WORKSPACE_PATH=/workspace

# Allowed project directories (comma-separated)
ALLOWED_DIRECTORIES=/workspace,/home/projects,${HOME}/Desktop

# ===========================================
# DOCKER-SPECIFIC CONFIGURATION
# ===========================================

# Host directories to mount for projects
HOST_WORKSPACE_PATH=${HOME}/Desktop
HOST_CLAUDE_PATH=/usr/local/bin/claude

# User home directory configuration
# macOS: /Users/username
# Linux: /home/username
# Windows: C:\Users\username (use forward slashes: C:/Users/username)
USER_HOME_DIR=${HOME}

# Claude configuration paths (platform-specific)
CLAUDE_PROJECTS_PATH=${HOME}/.claude/projects
CLAUDE_CONFIG_DIR=${HOME}/.claude
CLAUDE_CONFIG_FILE=${HOME}/.claude.json

# Network configuration
DOCKER_NETWORK_NAME=claude-network

# ===========================================
# DEVELOPMENT OPTIONS
# ===========================================

# Enable hot reload for development
CHOKIDAR_USEPOLLING=true
WATCHPACK_POLLING=true

# Debug logging
DEBUG=claude-ui:*
LOG_LEVEL=info

# ===========================================
# PRODUCTION OPTIONS
# ===========================================

# SSL/TLS configuration (for production)
SSL_ENABLED=false
SSL_CERT_PATH=/etc/ssl/certs/cert.pem
SSL_KEY_PATH=/etc/ssl/private/key.pem

# Reverse proxy configuration
BEHIND_PROXY=false
TRUST_PROXY=false

# ===========================================
# SECURITY HEADERS
# ===========================================

# CORS configuration
CORS_ORIGIN=http://localhost:2009
CORS_CREDENTIALS=true

# Rate limiting
RATE_LIMIT_WINDOW=900000 # 15 minutes
RATE_LIMIT_MAX=100 # requests per window

# ===========================================
# MONITORING & ANALYTICS
# ===========================================

# Enable telemetry
TELEMETRY_ENABLED=false

# Sentry error tracking (optional)
SENTRY_DSN=

# Analytics (optional)
ANALYTICS_ENABLED=false
16 changes: 15 additions & 1 deletion .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,18 @@
#API server
PORT=3008
#Frontend port
VITE_PORT=3009
VITE_PORT=3009

# =============================================================================
# CLAUDE CONFIGURATION
# =============================================================================

# Path to Claude projects directory (default: ~/.claude/projects)
# Use ${HOME} for dynamic home directory
CLAUDE_PROJECTS_PATH=${HOME}/.claude/projects

# Claude configuration directory (default: ~/.claude)
CLAUDE_CONFIG_DIR=${HOME}/.claude

# User home directory (for Docker containers)
USER_HOME_DIR=${HOME}
Loading