Installation
This guide will walk you through setting up Orquestra for local development or deploying it to Cloudflare’s edge network.Prerequisites
Before you begin, ensure you have:- Node.js 18+ or Bun 1.0+
- Cloudflare account (free tier works)
- GitHub account (for OAuth authentication)
- Git installed on your machine
Quick start
The fastest way to get started is using the automated setup script:Run the quick start script
- Install all dependencies
- Set up environment variables
- Create the local database
- Start the development servers
Access the application
- Frontend: http://localhost:5173
- API: http://localhost:8787
- API docs: http://localhost:8787/health
Manual setup
If you prefer to set up Orquestra manually:Configure environment variables
Create a Then edit
.env.local file in the root directory:.env.local with your credentials:How to get Cloudflare credentials
How to get Cloudflare credentials
- Go to Cloudflare Dashboard
- Navigate to My Profile → API Tokens
- Click Create Token
- Use the Edit Cloudflare Workers template
- Copy the API token
- Your Account ID is shown in the dashboard URL or under Account Settings
How to set up GitHub OAuth
How to set up GitHub OAuth
- Go to GitHub Developer Settings
- Click New OAuth App
- Fill in the details:
- Application name: Orquestra (or your choice)
- Homepage URL:
http://localhost:5173(for development) - Authorization callback URL:
http://localhost:8787/auth/github/callback
- Click Register application
- Copy the Client ID
- Generate a Client Secret and copy it
Generate a JWT secret
Generate a JWT secret
Run this command to generate a secure JWT secret:Copy the output and use it as your
JWT_SECRET.Set up the database
Run database migrations to create the necessary tables:This creates the following tables:
users- User accounts from GitHub OAuthprojects- IDL projectsidl_versions- IDL version historyapi_keys- API authentication keysproject_socials- Project social linksknown_addresses- Labeled Solana addresses
Start the development servers
You can start both servers together or separately:
- Both servers
- Separate terminals
Verify the setup
Open your browser and navigate to:
- Frontend: http://localhost:5173
- API health check: http://localhost:8787/health
Development workflow
Common commands
Project structure
Orquestra is organized as a monorepo:Deploying to production
Once you’re ready to deploy Orquestra to production:For detailed deployment instructions, see the Deployment Guide.
Troubleshooting
Port already in use
Port already in use
If you see an error about ports 5173 or 8787 being in use:
Dependencies installation fails
Dependencies installation fails
If dependencies fail to install:
Database migration errors
Database migration errors
If migrations fail:
TypeScript errors
TypeScript errors
If you see TypeScript errors:
Next steps
Quickstart guide
Learn how to use Orquestra with a practical example
Core concepts
Understand how Orquestra works under the hood
Deployment
Deploy Orquestra to production
API reference
Explore the REST API documentation