For builders

Bring your own portal

The third gift is the platform itself. Build — or vibe-code — a portal that's exactly your camp, on your own domain, with our typed API, SDKs, UI kit, and embeddable widgets. We absorb the infrastructure and manage the database; you never touch a server. Free, like everything else here.

What's in the box

Everything the hosted portal runs on, opened up for your own build.

Typed REST API

Members, applications, dues, shifts, and org config over REST at api.playaos.app/api/v1, with an OpenAPI spec and per-camp keys scoped to exactly what your integration needs.

SDKs and hooks

npm install @playaos/api-client for the typed client, @playaos/react for data hooks, and @playaos/sdk for optional drop-in widgets on your own Next.js site.

UI kit

@playaos/ui-kit ships the same components the hosted portal is built from — themed, accessible, precompiled CSS. Use them wholesale or bring your own design.

Embed widgets

No framework at all? @playaos/embed-sdk gives you web components — dues, directory, and the application form — from a single script tag on any HTML page or CMS.

Hosted infrastructure

We run the API, manage the database, and host authentication at auth.playaos.app. You deploy a frontend; the data layer, backups, and multi-tenant security are our problem.

Same data, both doors

A custom site doesn't fork your camp off the platform. Applications, dues, and shifts flow into the same org — admins can keep using the hosted portal alongside whatever you build.

Vibe-code it

Start with a prompt, not a boilerplate

Paste this into Claude Code, Cursor, or any AI coding agent. It points the agent at our docs and SDKs so it can start building your camp's portal on the platform right away.

Build a custom camp portal using PlayaOS for the API, database, and authentication.
Read https://playaos.app/docs/sdk-setup and https://playaos.app/docs/authentication before coding.
Use @playaos/api-client in server code for authenticated REST calls at https://api.playaos.app/api/v1.
Pass the origin (https://api.playaos.app, without /api/v1) as createClient's baseUrl, and the camp portal origin as embedBaseUrl.
For member-scoped reads and admin writes, derive a per-request client with withMember(the signed-in member's Supabase session JWT).
Keep PLAYAOS_API_KEY and PLAYAOS_CLIENT_SECRET in server-only environment variables. Never pass an org key to a browser Provider.
For a public application form, use @playaos/react's PlayaOSProvider with a createClient configured with the browser-safe camp key from the Embed origins section, then render ApplicationForm. The @playaos/sdk Provider is a separate widget API, not the React hooks Provider.
The SDK exchange idToken is for legacy embed auth, not a Supabase session JWT; never send it as X-PlayaOS-Member-Token.
For OAuth session persistence, use the confidential client ID together with its matching secret in server-side exchange/refresh routes; keep refresh tokens in HttpOnly cookies. The Camp portal public client ID is for browser PKCE without a secret.
Use @playaos/ui-kit only if its design fits. Verify a public application submission, a signed-in member read, and that neither server secret appears in browser bundles.

I will supply configuration from the platform console under Developer → API Keys and SDK setup.
  1. 1.Create your camp and keys

    Sign up free, create your camp, and open the platform console at app.playaos.app. Under Developer → API Keys and Developer → SDK setup you'll find the API key, client ID, and secret your build needs.

  2. 2.Hand your agent the prompt and the keys

    The docs are written for agents as much as for people. Keep the API key and client secret server-side — the quickstart shows the auth-exchange routes that make that easy.

  3. 3.Ship it on your own domain

    Deploy the frontend wherever you like. Applications, dues, and shifts flow into your camp's org either way, so the hosted portal keeps working alongside your custom one — switch between them whenever you want.

The gift is ready when you are.

Give your camp a free portal, or take the free playa tools into ChatGPT and Claude. Either way, it costs nothing.

Building your camp's site yourself? The API, SDKs, and UI kit are part of the gift too.