Skip to content

Latest commit

 

History

History
138 lines (102 loc) · 4.07 KB

SCRIPTS_READY.md

File metadata and controls

138 lines (102 loc) · 4.07 KB

🚀 Codespace Setup Scripts - Ready to Use!

✅ Available Scripts

Your repository now includes three powerful setup scripts:

1. 🎯 Full Setup: ./setup-codespace.sh

Complete environment setup with verification

  • Updates system packages
  • Installs UV (modern Python package installer)
  • Installs specify-cli for project specification management
  • Installs all Node.js and Python dependencies
  • Sets up environment files
  • Comprehensive verification and testing
  • Recommended for new codespaces

2. ⚡ Quick Setup: ./quick-setup.sh

Minimal fast installation

  • Essential system updates
  • UV and specify-cli installation
  • Project dependency installation
  • Use when you need speed over verification

3. 🔍 Verification: ./verify-setup.sh

Check environment status

  • Verifies all tools and versions
  • Tests project functionality
  • Shows setup completeness score
  • Run anytime to check status

🏃‍♂️ Quick Start

For a brand new codespace:

# Make executable (if needed)
chmod +x setup-codespace.sh

# Run full setup
./setup-codespace.sh

# Verify everything works
./verify-setup.sh

📋 What Gets Installed

System Tools

  • ✅ System package updates
  • ✅ Essential build tools
  • ✅ UV (modern Python package installer)
  • ✅ specify-cli (project specification management)

Development Environment

  • ✅ Node.js 22.17.0 (verified compatible)
  • ✅ Python 3.12.1 (verified compatible)
  • ✅ NX 21.6.4 (monorepo management)
  • ✅ All npm dependencies
  • ✅ All Python dependencies for all services

Project Configuration

  • ✅ Environment files (.env) created from examples
  • ✅ NX workspace configured with 15 projects
  • ✅ Docker and Docker Compose ready
  • ✅ All build and serve targets configured

🎯 Ready Commands

After running setup, these commands are immediately available:

# Development servers
npx nx serve jane-ui          # Frontend (http://localhost:3000)
npx nx serve jane-orchestrator # API (http://localhost:8000/docs)
npx nx serve cyber-llm-server  # Cyber LLM (http://localhost:8001)
npx nx serve mtg-llm-server    # MTG LLM (http://localhost:8002)  
npx nx serve code-llm-server   # Code LLM (http://localhost:8003)

# Build and test
make build                    # Build all projects
make test                     # Run all tests
make lint                     # Lint all projects

# Docker services
cd infrastructure/docker && docker-compose up

🔄 Codespace Persistence

These scripts are designed for codespace recreation scenarios:

  1. Destroy codespace → No problem!
  2. Create new codespace → Run ./setup-codespace.sh
  3. Ready to develop → Everything restored automatically

The scripts handle:

  • ✅ Fresh system setup
  • ✅ Tool installation and configuration
  • ✅ Dependency management
  • ✅ Environment file creation
  • ✅ Verification and testing

🛠️ DevContainer Integration

The repository includes .devcontainer/devcontainer.json that:

  • Automatically runs setup-codespace.sh on container creation
  • Pre-configures VS Code with Python, TypeScript, and NX extensions
  • Sets up port forwarding for all services
  • Configures development environment settings

📁 Files Created

The setup process creates these executable scripts:

/workspaces/modular-monolith-2/
├── setup-codespace.sh        # Full setup (346 lines)
├── quick-setup.sh            # Quick setup (minimal)
├── verify-setup.sh           # Environment verification
└── .devcontainer/
    └── devcontainer.json     # Auto-setup configuration

🎉 Success!

Your modular monolith repository is now equipped with:

  • Bulletproof setup - Works from completely fresh environments
  • Zero-configuration - Handles all dependencies automatically
  • Verification included - Confirms everything works before you start
  • Codespace optimized - Perfect for GitHub Codespaces workflow
  • Developer friendly - Clear output, error handling, and next steps

Next time you create a codespace, just run ./setup-codespace.sh and you're ready to code! 🚀