Cavuno SDK
Build a custom job board frontend on Cavuno’s managed backend with the typed @cavuno/board SDK.
A
JBuild a custom job board without rebuilding job board infrastructure. You own the frontend, framework, hosting, and deployment. Cavuno remains the managed system of record for jobs, search, companies, accounts, applications, alerts, messaging, monetization, SEO data, and more.
@cavuno/board is the typed interface between those two layers. It has zero runtime dependencies and runs in browsers, Node.js 20+, and Cloudflare Workers.
What you can build
Use the SDK when Cavuno’s managed frontend is not the product you need—for example, when the job board must live inside an existing publication, SaaS product, membership community, or mobile-backed application. The same client covers anonymous catalog reads, board-user authentication, candidate and employer workflows, monetization, and the SEO artifacts a public job board needs.
Choose your path
- Hosted frontend: use Cavuno’s visual builder and managed hosting. No SDK is required.
- Your frontend: use the SDK with the framework and hosting platform you already prefer.
Both paths use the same Cavuno backend, so you can launch hosted and move to a custom frontend later without migrating your job board data.
Make your first request
Install the package with your project’s package manager:
npm install @cavuno/board
Create one client for the board. A pk_… publishable key identifies the board and is safe to include in frontend code.
123456// src/lib/cavuno.tsimport { createBoardClient } from '@cavuno/board';export const board = createBoardClient({board: 'pk_example',});
Use a typed namespace to fetch data:
123456import { board } from './lib/cavuno';const { data: jobs, hasMore, nextCursor } = await board.jobs.list({remoteOption: ['remote'],limit: 20,});
If the key resolves, jobs contains public job cards and pagination metadata describes the next page. An invalid or revoked key fails with a BoardApiError instead of returning an empty board.
Verify your connection
Log the board identity and first result while setting up:
1234567891011const [context, page] = await Promise.all([board.context(),board.jobs.list({ limit: 1 }),]);console.log({board: context.name,language: context.language,firstJob: page.data[0]?.title ?? null,hasMore: page.hasMore,});
Confirm the name and language match the intended Cavuno board. firstJob: null is a valid empty catalog; a rejected request is a configuration or connectivity failure to fix before building routes.
Understand the boundary
| Cavuno owns | Your application owns |
|---|---|
| Board data and feature configuration | Routes and page composition |
| Search, pagination, and API authorization | Components and interaction design |
| Candidate and employer workflow rules | Session integration and redirect UX |
| Monetization and entitlement decisions | Checkout handoff and return pages |
| Canonical data for SEO artifacts | Rendering metadata, JSON-LD, and sitemaps |
| Typed errors and request IDs | Error messages, logging, and recovery UI |
Start building
- Follow Getting started until a real board renders.
- Open the Framework guides and put the client in the right runtime boundary.
- Read Fundamentals before adding authentication, caching, or server rendering.
- Build one user journey at a time in Build your job board.
- Use Frontend infrastructure for routes, metadata, structured data, and sitemaps.
- Finish with Production, then run the SDK doctor against the deployed site.
For an exact method signature, use the SDK reference. For complete multi-namespace journeys, use the Cookbook.
What the SDK is not
The SDK is not a frontend framework, component library, scaffolder, hosting platform, or deployment service. It supplies typed job board data and workflows. Your application supplies the routes, components, styling, and deployment.
Getting started with the SDK
Install @cavuno/board, connect a board, and render your first job board data.
Framework guides
Put the SDK in the correct server, route, cache, and error boundary for your framework.
SDK fundamentals
Understand Cavuno’s headless model, identifiers, auth ownership, pagination, and errors.
Build your job board
Turn the public Board API into jobs, content, candidate, and employer experiences.
Frontend infrastructure
Add canonical routing, metadata, sitemaps, theme tokens, formatting, and localization.
Production
Prepare SSR sessions, caching, security, diagnostics, and launch checks.
SDK cookbook
End-to-end recipes for common custom job board frontend flows.
SDK reference
Reference for the client constructor, top-level methods, every namespace, helpers, errors, CLI, and versioning.