Volcano Documentation
Volcano is a serverless platform for building applications with functions, databases, and authentication.
Volcano is a serverless platform for building applications with functions, databases, and authentication. Deploy backend logic, provision PostgreSQL databases, and add user authentication—all through a unified API.
Quick start
New to Volcano? Start here:
- Quickstart guide — Deploy your first function in 5 minutes
- Core concepts — Understand how Volcano works
- Installation — Set up the SDK and CLI
Ways to use Volcano
Everything Volcano does is one API. The dashboard, the CLI, the SDKs, and the MCP server are all ways of calling it — see Ways to use Volcano for which to reach for.
| Interface | Reach for it when | Documentation |
|---|---|---|
| Dashboard | Exploring, one-off changes, reading logs and usage | Dashboard |
| CLI | Deploying from a terminal or CI, migrations, local development | CLI reference |
| SDK | Writing application code — auth, queries, storage, realtime | JavaScript, Python, Ruby |
| REST API | Automating what the CLI does not cover | API reference |
| MCP server | Letting an AI agent inspect or change one project | MCP server |
Core features
Functions
Serverless functions that run your backend code. Supports Node.js, Python, and Ruby.
| Guide | Description |
|---|---|
| Overview | What functions are and how they work |
| Creating functions | Deploy your first function |
| Durable functions | Long-running work that checkpoints and resumes |
| Developing durable functions locally | Run one on your machine, then deploy it unchanged |
| Invoking functions | Call functions from your app |
| User context | Access authenticated user data |
| Environment variables | Configure secrets and settings |
| Logs | View and filter function logs |
Databases
Serverless PostgreSQL with built-in authentication and row-level security.
| Guide | Description |
|---|---|
| Overview | Database features and access methods |
| Quick start | Set up a database in 5 minutes |
| Query Builder API | Query from the browser with the SDK |
| REST API | HTTP endpoints for database operations |
| Direct connection | Connect from a function with user impersonation |
| Row-level security | Secure data with policies |
| Auth helpers | SQL functions for user context |
Authentication
User authentication with email/password, OAuth providers, and anonymous users.
| Guide | Description |
|---|---|
| Overview | Authentication features and flow |
| Quickstart | Add auth to your app |
| Concepts | Users, tokens, and sessions |
| OAuth providers | Google, GitHub, Microsoft, Apple |
| Anonymous users | Guest access with upgrade path |
| Password reset | Forgot password flow |
| Configuration | Customize auth behavior |
Storage
Durable object storage with RLS-style access control policies.
| Guide | Description |
|---|---|
| Overview | Storage features and quick start |
| JavaScript SDK | Complete SDK reference |
| Policies | RLS-style access control |
| Buckets | Creating and managing buckets |
Project locks
Renewable leases so only one backend worker runs a task at a time.
| Guide | Description |
|---|---|
| JavaScript SDK | Coordinate backend workers with renewable project leases |
Realtime
Live updates over WebSockets: Postgres changes, presence, and broadcast.
| Guide | Description |
|---|---|
| Overview | Realtime features and the connection model |
| Postgres changes | Subscribe to database changes |
| Broadcast | Send messages between clients |
| Presence | Track who is online |
| JavaScript SDK | Client SDK reference |
| Security | Channel authorization and limits |
Frontends
Deploy static and server-rendered sites (Next.js) with build/runtime variables and custom domains.
| Guide | Description |
|---|---|
| Overview | How frontends build, deploy, and serve |
| Deploy a frontend | Deploy a Next.js site with the CLI |
Security
| Guide | Description |
|---|---|
| Anon keys | Public keys for frontend use |
| Service keys | Secret keys with admin access |
| Project access tokens | Project-scoped API credentials for CI, scripts, and agents |
| Token types | Understanding different token types |
| Security checklist | Production security guide |
Projects
| Guide | Description |
|---|---|
| Deploy from GitHub | Connect a repo and deploy on every push to the production branch |
| Export your source to GitHub | Initialize an empty repository with a project's stored source and deploy it from Git |
| Configuration manifest | Declarative volcano-config.yaml reference (config deploy/pull) |
API reference
Complete REST API documentation for all Volcano endpoints.
| Reference | Description |
|---|---|
| Overview | API basics and authentication |
| Using the API | Create an access token, deploy, read logs, handle errors |
| OpenAPI specification | Fetch the machine-readable contract and generate a client |
| Authentication | Auth headers and token types |
| Auth endpoints | Signup, signin, and user management |
| Projects | Project management endpoints |
| Functions | Function deployment and invocation |
| Databases | Database provisioning endpoints |
| Storage | Storage bucket and object endpoints |
| Project locks | Backend lease endpoints |
| Errors | Error codes and handling |
Guides
Step-by-step guides for common tasks.
| Guide | Description |
|---|---|
| Deploy to production | Ship your project to the cloud |
| Plans and limits | HOBBY vs SUPERAGENT limits by resource |
| Database migrations | Manage schema changes with the CLI |
| Deployment performance | Deployment latency objectives, phases, and telemetry |
Examples
Working code examples in the examples/ directory:
- nodejs-hello/ — Simple Node.js function
- python-data/ — Python data processing
- frontend-auth-nextjs/ — Next.js frontend with authentication
- function-sdk-example/ — Using the SDK inside a function
- realtime-chat/ — Real-time chat with presence tracking
Getting help
- GitHub Issues — Report bugs and request features
- API reference — REST API endpoints, authentication, and errors