Deploy velxio
Browser-based Arduino, ESP32, RP2040, and circuit simulator.
Just deployed
/app/data
Deploy and Host Velxio on Railway
Velxio is an open-source browser-based electronics simulator for Arduino, ESP32, RP2040, and other embedded boards. Users write code, wire circuits, compile sketches, and run interactive emulations directly in a web browser. Its self-hosted image bundles the frontend, FastAPI compiler backend, nginx proxy, and embedded toolchains.
About Hosting Velxio on Railway
Railway runs the official multi-architecture GHCR image as a single HTTP service with a generated public domain. A persistent volume stores project data and the generated signing key, while Railway variables configure routing and optional product news.
Tech Stack
- React/Vite frontend served by nginx
- FastAPI and Uvicorn backend
- Arduino CLI toolchains
- ESP-IDF and QEMU-based ESP32 emulation
- WebAssembly custom-chip compilation with WASI SDK
- Railway public networking and persistent volume storage
Why Deploy Velxio on Railway
Railway provides one-click container deployment, managed HTTPS, public domains, persistent storage, environment variables, and simple operational logs for a complete self-hosted simulator without managing servers or reverse proxies.
Common Use Cases
- Teaching Arduino and embedded programming
- Prototyping circuits and microcontroller sketches
- Testing ESP32, RP2040, AVR, and custom-chip designs
- Demonstrating electronics projects in classrooms or workshops
- Running a private browser-based alternative to hosted simulators
Deployment Notes
The container listens on port 80 through nginx; keep PORT=80 so Railway routes the generated domain correctly. The FastAPI backend runs internally on port 8001 and is proxied by nginx, including /health, /api/*, and WebSocket simulation paths. Mount /app/data for persistent project data and the generated SECRET_KEY. The OSS image is anonymous and has no initial username or password. The deployment uses a minimal start command to remove a conflicting Debian nginx default site before invoking the upstream entrypoint.
Template variables:
| Variable | Default | Purpose |
|---|---|---|
PORT | 80 | Railway HTTP routing port |
SECRET_KEY | ${{secret(64)}} | Generated application signing key |
DATA_DIR | /app/data | Persistent application data path |
VELXIO_NEWS | on | Product news feed toggle |
Dependencies for Velxio on Railway
Velxio is self-contained and requires no database, Redis service, external authentication provider, or worker service. The single container includes the frontend, API, nginx reverse proxy, compilation toolchains, and emulator runtime.
Deployment Dependencies
| Service | Image | Port | Volume |
|---|---|---|---|
| velxio | ghcr.io/davidmonterocrespo24/velxio:master | 80 | /app/data |
Template Content
PORT
DATA_DIR
VELXIO_NEWS
