| Crates.io | orches |
| lib.rs | orches |
| version | 0.1.0 |
| created_at | 2025-12-13 16:54:10.003607+00 |
| updated_at | 2025-12-13 16:54:10.003607+00 |
| description | Orches - The manager of WASM: zero-code WASM runtime with ultra-fast cold starts |
| homepage | |
| repository | https://github.com/Omar52344/orches.git |
| max_upload_size | |
| id | 1983167 |
| size | 99,416 |
Orches 🔥 Docker for WebAssembly — Deploy microservicios WASM en milisegundos con cold starts ultra-rápidos, lĂmites de recursos estrictos y telemetrĂa integrada por entorno. Orches es un orquestador WASM nativo en Rust que te permite desplegar y ejecutar mĂłdulos WebAssembly como si fueran contenedores Docker, pero con:
Cold starts < 15ms
Aislamiento real (sandbox Wasmtime)
TelemetrĂa automática (OpenTelemetry OTLP + Jaeger)
Multi-entorno nativo (dev/staging/prod con OTLP separado) -
Multi-entorno nativo (service@dev, service@staging, service@prod)
ConfiguraciĂłn simple con orches.toml
Zero-code para casos simples
"Si Docker revolucionĂł los contenedores, Orches revoluciona WASM en el edge y serverless."
🚀 Quick Start (30 segundos)
Instala Orches
cargo install orches
Crea una carpeta con tu servicio:
my-service/ ├── orches.toml ├── payment.wasm └── payment.wit (opcional)
orches.toml:
name = "payment-service" environment = "production" otlp_endpoint = "http://localhost:4318/v1/traces" memory_mb = 128
[[routes]] path = "/charge" method = "POST" function = "charge"
[[routes]] path = "/health" method = "GET" function = "health"
Despliega y corre:
orches deploy my-service/ orches deploy examples/payment-service --port 3001
→ Server en http://0.0.0.0:3000 con endpoints automáticos.
Prueba:
curl http://localhost:3000/health curl -X POST http://localhost:3000/charge -d '{"amount": 999}'
Abre Jaeger → filtra por service.name = payment-service
¡Listo! Traces automáticos con duración, runtime_id y eventos custom.
⚡ Por qué Orches
Feature Cold start <15ms TelemetrĂa por entorno Integrada desde v1 Multi-entorno nativo,SĂ (name@env) ConfiguraciĂłn,orches.toml simple LĂmites de memoria (hard) SĂ CLI orches deploy folder/
📦 Estructura de un servicio Cada servicio es una carpeta con:
orches.toml → Configuración y rutas *.wasm → Tu módulo compilado *.wit → Interfaz (próximo: tipos automáticos)
Ejemplo completo en /examples/payment-service
đź” Observabilidad Orches usa tu librerĂa wasm-obs-agent-lib para enviar traces OTLP con:
service.name = nombre del orches.toml environment = dev/staging/prod Endpoint configurable por entorno
Filtra en Jaeger por service.name y environment.
🛡️ Seguridad y Recursos
Sandbox total (Wasmtime) LĂmites de memoria duros Fuel para evitar bucles infinitos Timeout por request
Roadmap
Deploy desde carpeta Rutas automáticas TelemetrĂa por entorno Soporte WIT completo (tipos reales) Docker image oficial Orches Cloud (SaaS) SDK para power users
Contribuye ¡Orches es open source y necesita tu ayuda!
¡Orches es open source!
Abre issues EnvĂa PRs Ăšnete al movimiento WASM
Abre issues PRs bienvenidos Ăšnete al Discord (prĂłximo)
Licencia MIT OR Apache-2.0
Orches — Porque tus microservicios WASM merecen encenderse como un rayo. 🔥 ¿Listo para probar?
Markdown## Uso
cargo install orches
orches deploy my-service/
orches deploy my-service/ --port 3001
curl http://localhost:3001/health curl -X POST http://localhost:3001/charge -d '{"amount": 999}'