A next-generation distributed development platform that automatically maps project directories to optimized VMs with intelligent orchestration.
- π Auto-Discovery - Scans your project and automatically detects services (frontend, backend, database, workers)
- πͺ Directory-to-VM Mapping - Each service runs in its own optimized microVM with perfect isolation
- β‘ Lightning-Fast Setup - From
git clone
to running distributed environment in under 5 minutes - π¨ Beautiful CLI - Rich colors, emojis, and intuitive commands that make development fun
- π§ Multi-Service Orchestration - Manage complex workspaces with multiple interconnected services
- π Real-time Monitoring - Live dashboards showing service health, metrics, and logs
# Scan any project directory and auto-detect services
./vortex_orchestrator workspace init ./my-complex-project
# Creates vortex.yaml with detected services:
# frontend/ β Node.js VM
# backend/ β Python VM
# worker/ β Go VM
# database/ β PostgreSQL VM
# Deploy the entire distributed workspace
./vortex_orchestrator workspace create --config vortex.yaml
# Monitor everything in real-time
./vortex_orchestrator monitor
# Create pre-built workspace templates
./vortex_orchestrator workspace create fullstack-webapp myapp
./vortex_orchestrator workspace create microservices-api enterprise
./vortex_orchestrator workspace create ai-ml-pipeline research
# Session management (like tmux for VMs)
./vortex_quick sessions # List background VMs
./vortex_quick attach my-session # Connect to running VM
./vortex_quick create python test # Create new session
Vortex automatically detects project structure and suggests optimal VM configurations:
File Found | Language | Suggested Image | Default Ports |
---|---|---|---|
package.json |
Node.js | node:18-alpine |
3000, 3001 |
requirements.txt |
Python | python:3.11-slim |
8000, 8001 |
go.mod |
Go | golang:1.21-alpine |
8080, 8081 |
Cargo.toml |
Rust | rust:1.70 |
8080 |
composer.json |
PHP | php:8.2-fpm-alpine |
9000 |
Gemfile |
Ruby | ruby:3.2-alpine |
3000 |
Service Type Detection:
frontend/
,ui/
,web/
β Frontend service with hot reloadbackend/
,api/
,server/
β Backend API serviceworker/
,jobs/
,tasks/
β Background worker servicedatabase/
,migrations/
β Database service
- βοΈ Frontend: React with hot reload (3000:3000)
- π Backend: FastAPI with auto-reload (8000:8000)
- π Database: PostgreSQL with persistence (5432:5432)
- π΄ Cache: Redis for sessions (6379:6379)
- πͺ API Gateway: Load balancing and routing (8080:8080)
- π€ User Service: Go microservice (8001:8000)
- π¦ Order Service: Go microservice (8002:8000)
- π‘ Message Queue: NATS for service communication (4222:4222)
- π Database: MongoDB for microservices (27017:27017)
- π Jupyter Lab: TensorFlow with GPU support (8888:8888)
- π§ ML API: FastAPI model serving (8000:8000)
- βοΈ Data Processor: ETL pipeline
- π Database: PostgreSQL for ML data (5432:5432)
- π΄ Cache: Redis for job queues (6379:6379)
- macOS or Linux
- krunvm installed
- Docker/Podman for container images
git clone https://github.com/exec/vortex.git
cd vortex
cargo build --release
# Use the session manager directly
./vortex_quick sessions
./vortex_quick create python myproject
# Use the orchestrator for complex workspaces
./vortex_orchestrator workspace init ./my-project
./vortex_orchestrator monitor
Vortex provides real-time bidirectional file sync between your host and VMs:
# Enable live file sync
./vortex_orchestrator sync enable ./my-project
# Watch file changes in real-time
./vortex_orchestrator sync watch
# Check sync status
./vortex_orchestrator sync status
# Real-time dashboard with service health
./vortex_orchestrator monitor
# Aggregated logs from all services
./vortex_orchestrator logs
# Service-specific logs
./vortex_orchestrator logs frontend
# Cluster resource utilization
./vortex_orchestrator cluster status
./vortex_orchestrator cluster scale up
- β Auto-discovery of project structure
- β Language detection and optimal image selection
- β Service type inference from directory patterns
- β YAML configuration generation
- β Integrated orchestration with existing templates
- Phase 6: Context-aware environments (dev/staging/prod)
- Phase 7: Real file synchronization engine
- Phase 8: Editor integration (VS Code, Neovim, etc.)
- Phase 9: Advanced orchestration (dependencies, scaling)
- Phase 10: Cloud deployment and team collaboration
See ROADMAP.md for detailed development plans.
cd ~/my-ecommerce-platform
./vortex_orchestrator workspace init .
# Output:
# π Discovered project structure:
# frontend/ β Node.js (package.json detected)
# api/ β Python (requirements.txt detected)
# worker/ β Go (go.mod detected)
# database/ β PostgreSQL (migrations/ detected)
#
# β
Configuration saved to: vortex.yaml
# π‘ Run: vortex workspace create --config vortex.yaml
# Show all active workspaces
./vortex_orchestrator workspace status
# Output:
# π₯ Found 3 active workspaces:
# 1. π₯ crazy-ecommerce (3 services)
# 2. π₯ enterprise-platform (5 services)
# 3. π₯ my-project (4 services)
# Stop entire workspace
./vortex_orchestrator workspace stop my-project
# List all background sessions
./vortex_quick sessions
# Create new development session
./vortex_quick create python myproject
# Attach to running session
./vortex_quick attach myproject
# Stop individual session
./vortex_quick stop myproject
- Multi-service applications: Each service in its own VM with perfect isolation
- Language polyglot projects: Different runtime environments for each component
- Microservice development: True service boundaries with networking
- Shared development environments: Consistent setup across team members
- Environment parity: Dev environments match staging and production
- Onboarding: New developers productive in minutes, not hours
- Compliance requirements: Hardware-level isolation for sensitive projects
- Resource allocation: Dedicated CPU/memory per service
- Security boundaries: True isolation between components
Vortex retains its powerful single-VM capabilities:
# One-liner workflows with file sync
vortex run alpine -e "echo 'Hello World'" -q
# Copy project in, build it, sync results back
vortex run node:18 -q \
--copy-to ./my-app:/workspace \
--workdir /workspace \
--sync-back /workspace/dist:./build-output \
-e "npm install && npm run build"
# Start interactive shell in VM
vortex shell alpine
# Development environment with port forwarding
vortex shell node:18 -p 3000:3000 \
--copy-to ./web-app:/workspace \
--workdir /workspace
# Test across different platforms
vortex parallel alpine ubuntu debian \
-e "echo 'Testing on:' && uname -a" \
--copy-to ./tests:/workspace
Vortex maintains comprehensive test coverage across all features:
# Comprehensive test suite
./test_runner.sh
# Individual test categories
cargo test --test cli_integration_test --release
cargo test --test workspace_integration_tests --release
- β Multi-platform builds (Linux, macOS)
- β Security auditing and vulnerability scanning
- β Performance benchmarking
- β Automated deployment with validated artifacts
Vortex is building the future of distributed development environments:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Make changes with comprehensive tests
- Run
./test_runner.sh
to validate - Submit a Pull Request
See ROADMAP.md for planned features and CONTRIBUTING.md for development guidelines.
MIT License - see LICENSE for details.
"The future of development is distributed, isolated, and context-aware. Vortex makes it reality." π₯