🚀 Installation Guide¶
This guide will help you get Curio up and running on your system. Curio includes a multi-server management tool that orchestrates three key components: the Backend for provenance tracking and user management, the Sandbox for executing code modules, and the Frontend for building visual workflows.
System Requirements
- Python >= 3.10 & < 3.12
- Tested on Windows 11, macOS Sonoma 14.5, and Ubuntu
- Docker (for Docker installation method)
🎯 Installation Overview¶
The curio launcher is a unified command-line tool for starting, stopping, and rebuilding the various Curio servers. Depending on your installation method, you'll use either:
curiocommand (if installed via pip)python curio.pycommand (if installed from Git repository)
You can inspect the help message by running:
Sample output:
Usage:
curio start # Start all servers (Backend, Sandbox, Frontend)
curio start backend # Start only the backend (localhost:5002)
curio start sandbox # Start only the sandbox (localhost:2000)
curio start --verbose VERBOSE # Verbosity level (e.g., 0=silent, 1=normal, 2=debug)
curio start --force-rebuild # Re-build the frontend and start all servers
curio start --force-db-init # Re-initialize the backend database and start all servers
⚡ Quick Installation (Recommended)¶
The fastest way to get started with Curio:
That's it!
This will start the backend, sandbox, and frontend servers. The first time Curio runs, it will automatically install UTK. Curio's frontend will be available at http://localhost:8080.
📦 Installation Methods¶
Choose the installation method that best fits your needs:
Perfect for: Quick setup and general usage
Starting Curio:
# Start all components
curio start
# Or start components individually
curio start backend
curio start sandbox
curio start frontend
Frontend Limitations
The pip installation includes a pre-built frontend and does not support rebuilding it. If you need to modify or rebuild the frontend, please use the manual installation method.
Perfect for: Easy deployment and consistent environments
Prerequisites: Docker
# Clone the repository
git clone git@github.com:urban-toolkit/curio.git
cd curio
# Start with Docker Compose
docker compose up
For older Docker versions:
Docker Notes
- Initial builds can take time
- Use
--buildflag to rebuild if needed - Curio's frontend will be available at http://localhost:8080
Perfect for: Development, customization, and frontend modifications
Step 1: Clone and setup environment
# Clone the repository
git clone git@github.com:urban-toolkit/curio.git
cd curio
# Create conda environment (recommended)
conda create -n curio python=3.10
conda activate curio
Step 2: Install dependencies
# Install Python requirements
pip install -r requirements.txt
# Install Node.js
conda install -c conda-forge nodejs=22.13.0
Step 3: Start Curio
# Start all components
python curio.py start
# Or start individual servers
python curio.py start backend
python curio.py start sandbox
python curio.py start frontend
Additional options:
# Force rebuild the frontend
python curio.py start --force-rebuild
# Force re-initialize the backend database
python curio.py start --force-db-init
First Run
The first time Curio runs, it will automatically install UTK. The installation of all required packages might take a few minutes.
🖼️ Ray Tracing Support¶
To use Ray Tracing capabilities, please see UTK's requirements.
➡️ Next Steps¶
Congratulations! You've successfully installed Curio. Here's what to do next:
Get Started
Follow our Quick Start Tutorial for a hands-on introduction to Curio's capabilities.
Additional Resources:
- 🔧 User Guide - Detailed documentation
- 💬 Discord Community - Get help and connect with users
- 🐛 Report Issues - Found a bug?
Ready to build amazing urban analytics workflows? Get started with a Quick Start Tutorial! 🎉