Skip to content
Sign In

The Bkper Platform

The Bkper Platform provides managed app hosting, shared private source, authentication, previews, logs, secrets, storage, and local event delivery.

The Bkper Platform is a complete managed environment for building, deploying, and hosting apps on Bkper. It removes infrastructure complexity so you can focus on business logic.

What the platform provides

Hosting

Apps are deployed to {appId}.bkper.app on a global edge network powered by Cloudflare Workers for Platforms. Your app runs close to your users, with zero infrastructure to manage.

Preview environments are built in — deploy to a preview URL to test before going to production.

App APIs

The same Worker can expose app-defined /api/* routes. Treat those routes as the reusable contract for your app behavior:

  • The bundled web client can call them.
  • Scripts, external clients, and agents can call them too.
  • The default template documents them with an app OpenAPI spec at /openapi.json.

AI inference

When an app needs model inference, use Bkper AI by default. An authenticated app API route or event establishes the user and app identity, then platform outbound supplies authorization and usage attribution for the Worker’s Bkper AI requests. The app does not need provider credentials.

See Add Bkper AI to an App for live model discovery, strict structured output, validation, and the client-to-Worker authentication flow.

Authentication

OAuth is pre-configured. No client IDs, no redirect URIs, no consent screens to build.

Services

Declare the services you need in bkper.yaml and the platform provisions them:

  • KV storage — Key-value storage for caching and state. Access via c.env.KV in your handlers.
  • Secrets — Securely stored environment variables. Set via bkper app secrets put, access via c.env.SECRET_NAME.

Developer experience

The project template composes the full development environment:

npm run dev

This runs two processes concurrently: vite dev for the client UI (HMR), and bkper app dev for the Worker runtime (Miniflare for /api/* and /events, plus a Cloudflare tunnel so Bkper can route webhook events to your laptop). Your entire development environment, running locally.

Shared app source

Bkper can host one private codebase for your app. Authorized teammates and coding agents can clone it, improve it locally, and continue building from the same shared history.

Source synchronization remains separate from deployment. A Git push stores source but never builds or deploys the app.

See Shared App Source for the collaboration workflow, access rules, and external Git options.

Deployment

Check and deploy the app template:

npm run check
npm run deploy

Your app is live at {appId}.bkper.app. The platform handles routing, SSL, and edge distribution.

What you’d build yourself without it

Without the platform, creating a Bkper app with a UI, event handling, and authentication requires:

ConcernWithout the platformWith the platform
HostingProvision servers, configure domains, SSL, CDNbkper app deploy
AuthenticationRegister OAuth client, build consent screen, handle token refresh, manage redirect URIsauth.getAccessToken()
Event webhooksSet up a public endpoint, configure DNS, handle JWT verificationDeclare in bkper.yaml, platform routes events
Local dev webhooksInstall ngrok or similar, manually configure tunnel URLbkper app dev starts tunnel automatically
SecretsSet up a secrets manager, configure accessbkper app secrets put
KV storageDeploy Redis/Memcached, manage connectionsDeclare KV in bkper.yaml
Preview environmentsBuild a staging pipelinebkper app deploy --preview
Shared app sourceOperate a separate private Git hostManaged source for app developers and agents
Type safetyManually create type definitionsenv.d.ts auto-generated

The platform eliminates all of this. You write business logic, the platform handles infrastructure.

Getting started

# Create a new app from the template
bkper app init my-app
cd my-app
# Install dependencies and start developing
npm install
npm run dev

This gives you a working app with a client UI, server API routes, and /events handling in one Worker — all running locally with full HMR and webhook tunneling.

Next steps