> ## Documentation Index
> Fetch the complete documentation index at: https://opencals.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# opencals-build-booking-site skill

> The Agent Skill that builds a whole booking website on Opencals — pick an official Next.js template, scaffold, wire availability and checkout, rebrand, and deploy to Vercel.

The build skill. Install it when you want an agent to stand up a complete booking
website — not just call the API. It picks the closest official template,
scaffolds it, wires it to a store, restyles it to your brand, and deploys it. For
exact API calls it defers to the [opencals-storefront-api skill](https://opencals.com/docs/ai-agents/storefront-api-skill.md).

**Repo:** [github.com/letsopencals/skills](https://github.com/letsopencals/skills) ·
**Install:** [see the overview](https://opencals.com/docs/ai-agents/overview.md#install)

## What it covers

* **Choosing a template** by booking shape (people vs resources, groups, multi-location).
* **The workflow**: scaffold → configure env → understand the SDK wiring → rebrand → verify → deploy to Vercel.
* **Resource-booking** (courts, lanes, rooms, equipment): the three conflict rules, `allowCustomDuration`, and the units × time grid strategy, and multi-location resources with one availability read per location — the [VOLT template](https://opencals.com/docs/open-source/volt.md) is the worked example.
* **Rentals by the day** (cars, boats, equipment, villas): 1-day base duration with custom duration on a 24/7 schedule, merged availability ranges with a client-side fit, 00:00-aligned slots, handover details as custom attributes. The [NOIR Drive template](https://opencals.com/docs/open-source/noir.md) is the worked example.
* **Nightly stays** (villas, cabins, guest houses, rooms): a one-night base with custom duration and fixed check-in/check-out times that the API enforces, turnover days, guest and arrival details as custom attributes. The [Bali Villa Rentals template](https://opencals.com/docs/open-source/bali-villas.md) is the worked example.
* **Schools and classes** (languages, music, coding, tutoring): subjects as collections, levels as variants, teachers as staff, seats left from slot availability, and the online location's `link` for a Join button. The [Fluently template](https://opencals.com/docs/open-source/fluently.md) is the worked example.
* **Fitness and Pilates studios** (reformer, yoga, barre, spin): one variant per class × studio × instructor capped at the beds in the room, Full classes inferred from each series' weekly pattern because the API drops full slots, privates sharing a product pool, and dated workshops. The [Tensile template](https://opencals.com/docs/open-source/reformer.md) is the worked example.
* **Customising**: colour/font tokens, `siteConfig`, and what comes from the API vs. what you edit in code.

## Templates it builds on

> **[Haar — salon](https://opencals.com/docs/open-source/haar.md)**

> **[Frisor — barbershop](https://opencals.com/docs/open-source/frisor.md)**

> **[Clear Care — clinic](https://opencals.com/docs/open-source/clarity.md)**

> **[VOLT — padel & squash](https://opencals.com/docs/open-source/volt.md)**

> **[NOIR Drive — car rental](https://opencals.com/docs/open-source/noir.md)**

> **[Fluently — language school](https://opencals.com/docs/open-source/fluently.md)**

> **[Bali Villa Rentals — villa stays](https://opencals.com/docs/open-source/bali-villas.md)**

> **[Tensile — reformer Pilates](https://opencals.com/docs/open-source/reformer.md)**

## When it triggers

"Build me a booking website", "I run a \[salon / clinic / padel club] and need a
booking site", or handing the agent a business idea plus inspiration.

## Related

* [Open-source templates](https://opencals.com/docs/open-source/templates.md) — the template gallery
* [opencals-storefront-api skill](https://opencals.com/docs/ai-agents/storefront-api-skill.md) — the exact API/SDK reference this skill builds on
* [Build a booking page](https://opencals.com/docs/guides/build-a-booking-page.md) — the manual tutorial


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.