defy.works
/ prime-reserve
N° 002026

Multi-tenant facility reservation platform - tennis courts, meeting rooms, and the rules engine that keeps it civil.

Client
Defy Works
Industry
Reservations / SaaS
Scope
Multi-tenant booking platform
Tags
Nuxt 4Vue 3Convex
scroll · read
§ 02Case notes

Context

A premium multi-tenant facility reservation system. Operators (tennis clubs, community centers, shared workspaces) get their own slug, branding, and admin surface; users book across tenants from a single account. Built for the Korean market with KakaoTalk AlimTalk notifications and Naver OAuth alongside the global stack.

§ Process

Process

Strict tenant isolation enforced at every Convex query and mutation via shared assertTenantAdminOrThrow / getTenantBySlugOrThrow helpers, treating multi-tenancy as a runtime invariant rather than a convention. Eighteen tables cover reservations, slots, rules, release windows, audit logs, and queued notifications. The frontend is Nuxt 4 with shadcn-vue and Tailwind v4 (CSS-directive config, no tailwind.config.ts). AlimTalk is the default messaging channel with automatic SMS fallback through Solapi. Includes a dedicated load-test harness for saturation testing and a benchmark suite, so the platform is operations-aware from day one.

Nuxt 4Vue 3ConvexTailwind v4shadcn-vueConvex AuthSolapiVitest
Role
Solo founder + fullstack
Dates
2025-
Tenancy
Multi-tenant SaaS
Markets
KR (primary)