Volcano/ Docs

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:

  1. Quickstart guide — Deploy your first function in 5 minutes
  2. Core concepts — Understand how Volcano works
  3. Installation — Set up the SDK and CLI

Core features

Functions

Serverless functions that run your backend code. Supports Node.js, Python, and Ruby.

GuideDescription
OverviewWhat functions are and how they work
Creating functionsDeploy your first function
Invoking functionsCall functions from your app
User contextAccess authenticated user data
Environment variablesConfigure secrets and settings
LogsView and filter function logs

Databases

Serverless PostgreSQL with built-in authentication and row-level security.

GuideDescription
OverviewDatabase features and access methods
Quick startSet up a database in 5 minutes
Query Builder APIQuery from the browser with the SDK
REST APIHTTP endpoints for database operations
Direct connectionConnect from Lambda with user impersonation
Row-level securitySecure data with policies
Auth helpersSQL functions for user context

Authentication

User authentication with email/password, OAuth providers, and anonymous users.

GuideDescription
OverviewAuthentication features and flow
QuickstartAdd auth to your app
ConceptsUsers, tokens, and sessions
OAuth providersGoogle, GitHub, Microsoft, Apple
Anonymous usersGuest access with upgrade path
Password resetForgot password flow
ConfigurationCustomize auth behavior

Storage

S3-backed file storage with RLS-style access control policies.

GuideDescription
OverviewStorage features and quick start
JavaScript SDKComplete SDK reference
PoliciesRLS-style access control
BucketsCreating and managing buckets

Realtime

Live updates over WebSockets: Postgres changes, presence, and broadcast.

GuideDescription
OverviewRealtime features and the connection model
Postgres changesSubscribe to database changes
BroadcastSend messages between clients
PresenceTrack who is online
JavaScript SDKClient SDK reference
SecurityChannel authorization and limits

Frontends

Deploy static and server-rendered sites (Next.js) with build/runtime variables and custom domains.

GuideDescription
OverviewHow frontends build, deploy, and serve
Deploy a frontendDeploy a Next.js site with the CLI

Security

GuideDescription
Anon keysPublic keys for frontend use
Service keysSecret keys with admin access
Token typesUnderstanding different token types
Security checklistProduction security guide

Projects

GuideDescription
Configuration manifestDeclarative volcano-config.yaml reference (config deploy/pull)

CLI

The Volcano CLI lets you manage your projects from the terminal.

GuideDescription
Volcano CLICLI installation, authentication, and command reference — maintained in the volcano-cli repo (volcano <command> --help, volcano docs search)

API reference

Complete REST API documentation for all Volcano endpoints.

ReferenceDescription
OverviewAPI basics and authentication
AuthenticationAuth headers and token types
Auth endpointsSignup, signin, and user management
ProjectsProject management endpoints
FunctionsFunction deployment and invocation
DatabasesDatabase provisioning endpoints
StorageStorage bucket and object endpoints
ErrorsError codes and handling

Guides

Step-by-step guides for common tasks.

GuideDescription
Deploy to productionShip your project to the cloud
Plans and limitsFree vs Pro limits by resource
Database migrationsManage schema changes with the CLI

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
  • lambda-sdk-example/ — Using the SDK in Lambda functions
  • realtime-chat/ — Real-time chat with presence tracking

Getting help

On this page