# Build your own Cambly.

Canonical page: [Cambly](<https://clone4.me/tools/cambly-clone/>)

A complete AI build prompt for a focused language-tutoring marketplace with scheduled one-to-one video lessons. Your own code, identity, and workflow.

Category: Commerce | Platform: Web | Build scope: Advanced

## What your Cambly-inspired app will do

Build a tutoring marketplace with tutor profiles, bookable lesson slots, private video rooms, and a simple lesson-credit ledger.

- Accounts and tutor discovery: authenticated learner/tutor roles, operator-approved tutor profiles, languages, short biographies and availability. Use invented profiles or tutors who consent to the pilot. A tutor cannot approve their own profile.
- Scheduling: fixed 30-minute lessons, explicit tutor working hours, timezone display, future availability exceptions and a booking review. Reserve a slot atomically on the server; reject overlaps and prevent a learner booking two simultaneous lessons.
- Test lesson credits: operator-granted non-monetary credits, one reservation debit, an append-only ledger and an explicit cancellation refund rule. Retrying a request must not spend a second credit. Do not present test credits as purchased value.
- Live lessons: integrate a real configured WebRTC room service with server-issued, short-lived, room-scoped tokens for the booked learner and tutor only. Require the permitted booking window; provide device preflight, mute, camera control, leave, reconnect and unsupported-device feedback. No recording by default.
- Lesson operations: upcoming/past lessons, cancellation, tutor no-show reporting and operator review. Record completed/cancelled/disputed outcomes explicitly rather than treating a client timer as proof of attendance. Allow blocking and reporting; disclose pilot support contact.

## Is a DIY Cambly alternative right for you?

A Cambly-inspired build fits a specific tutoring workflow: one language, a small tutor roster and a clear booking policy. It is useful for learning marketplace scheduling and real-time authorization, or piloting an original service with a controlled audience.

A useful first project: An invitation-only adult conversation club with a few approved tutors, fixed-length lessons and operator-issued test credits.

## Start with a smaller version

Make one tutor, one learner, one availability window and one real video lesson work first. Book the slot on the backend, issue room access only to those two participants, and reconcile cancellation against the same credit ledger.

## Know the tradeoffs

Scheduling, credits and media access are coupled: a cancelled booking must not leave a usable room token or a second refund. Real-money subscriptions, payouts, recording, child safety operations and open marketplace support require separate implementation and operational review. This is a free build prompt, not an installable Cambly clone script.

## What you’ll need

This is a shared app: plan a running backend, durable storage and test accounts. A managed hosting account is one option; local development is also possible.

### Backend, database and sign-in (Required for this brief)

Choose hosting/local development, a database and authentication for the stack in the brief. Public use needs an HTTPS app address and persistent data; the reference product’s API is not required.

### Your pilot data and rules (Required for this brief)

Approved tutor fixtures, languages, timezone/availability, adult learner roles and cancellation/credit rules.

### A real lesson media service (Required for this brief)

Configure a WebRTC room service or equivalent media infrastructure. Room access must be issued by your backend only to the booked learner/tutor during the allowed window.

[Setup documentation](<https://docs.livekit.io/reference/server-sdk-js/classes/AccessToken.html>)

### Two-party device testing (Required for this brief)

Have separate learner/tutor sessions and camera/microphone permission. Test a real call, cancellation, denied devices and an unauthorized join.

### Have ready for your AI

Provide your tutor roster, availability, test-credit/refund policy, join window and media-service choice. The pilot uses non-monetary test credits, so no payment-provider account is required.

## Original software. Familiar inspiration.

Use your own brand, code, layout, and assets. Clone4.me is independent and is not affiliated with Cambly.

## Building your own Cambly: useful answers

### Is this a ready-to-use Cambly alternative?

This page provides a customizable build brief for a focused language-tutoring marketplace with scheduled one-to-one video lessons. It is not a hosted app. Your AI coding agent implements the software; you then need to test, run, and maintain it.

### Can I customize the Cambly clone prompt?

Yes. Choose Product &amp; audience, Design, Features, Tech stack, or Data &amp; behavior in the editor. Save and copy the complete assembled prompt, or download it as Markdown. Edits are saved in this browser.

### What does the starting version leave out?

Test two learners attempting the same slot; one learner booking overlapping tutors; retries after a network timeout; insufficient credits; cancellation with exactly one refund; daylight-saving transitions; unauthorized room-token requests; denied microphone/camera permission; disconnect/rejoin; a cancelled lesson join; and a tutor who is not approved. Test a real call between two separate devices or browser sessions. Exclude payments, tutor payouts, subscriptions, child accounts, recording/transcripts, unlimited drop-in matching, learning certificates, and a course marketplace from this pilot. Missing media credentials must produce an honest setup error, never a fake working room.

## Related build guides

- [Build a Cambly clone: tutoring bookings, credits and video lessons](<https://clone4.me/guides/build-cambly-clone/>)
- [Clone script, AI prompt or SaaS: what should you actually use?](<https://clone4.me/guides/clone-script-vs-ai-prompt/>)
- [Build a video meeting app: rooms, permissions and reconnects](<https://clone4.me/guides/build-video-meeting-app/>)

## Complete build prompt

The following reference is the original public prompt; browser customizations are not included.

~~~markdown
# Build an original app inspired by Cambly

You are an experienced product designer and full-stack engineer. Build a working, polished MVP from the brief below. Implement the core journeys end to end; a static mockup is not sufficient. Inspect the current environment, make sensible implementation decisions, and get started. Ask a question only if a missing answer genuinely blocks implementation.

Starting platform: Web. Explicit customized Product & audience and Tech stack requirements take precedence over this starting target.

## Product & audience
Build an original language-practice marketplace called Speakstead, inspired by live one-to-one tutoring workflows associated with Cambly. Start with an invite-only pilot for adult learners and approved tutors in one language. A learner finds a tutor, reserves a fixed-length lesson using test credits, joins the authorized video room, and sees the lesson outcome. This is original marketplace software, not a Cambly integration or ready-made commercial clone script.

## Design
Create an original warm, readable learning interface with tutor cards, timezone-aware weekly availability, a clear booking review, and a focused lesson room. Provide separate learner, tutor, and operator views. Show the learner’s local timezone beside every slot and a persistent camera/microphone status. Use accessible keyboard controls, text labels, and visible error/retry states. Do not copy Cambly branding, photos, profiles, wording, or interface assets.

## Features
1. Accounts and tutor discovery: authenticated learner/tutor roles, operator-approved tutor profiles, languages, short biographies and availability. Use invented profiles or tutors who consent to the pilot. A tutor cannot approve their own profile.

2. Scheduling: fixed 30-minute lessons, explicit tutor working hours, timezone display, future availability exceptions and a booking review. Reserve a slot atomically on the server; reject overlaps and prevent a learner booking two simultaneous lessons.

3. Test lesson credits: operator-granted non-monetary credits, one reservation debit, an append-only ledger and an explicit cancellation refund rule. Retrying a request must not spend a second credit. Do not present test credits as purchased value.

4. Live lessons: integrate a real configured WebRTC room service with server-issued, short-lived, room-scoped tokens for the booked learner and tutor only. Require the permitted booking window; provide device preflight, mute, camera control, leave, reconnect and unsupported-device feedback. No recording by default.

5. Lesson operations: upcoming/past lessons, cancellation, tutor no-show reporting and operator review. Record completed/cancelled/disputed outcomes explicitly rather than treating a client timer as proof of attendance. Allow blocking and reporting; disclose pilot support contact.

## Tech stack
Use TypeScript for the client and authenticated server API, PostgreSQL for reservations and the credit ledger, and a documented WebRTC service such as LiveKit with configured media infrastructure. Keep room-service secrets server-side and enforce object-level authorization. Use timezone-aware instants for lesson intervals and retain the tutor timezone for recurring availability. Preserve an existing suitable stack. Configure HTTPS, deployment secrets, backups, and the media service before claiming working video.

## Data & behavior
User {id, role}; TutorProfile {userId, approvedAt, language, bio, timezone}; AvailabilityRule; AvailabilityException; Lesson {id, learnerId, tutorId, startsAt, endsAt, status, roomId, revision}; CreditEntry {id, learnerId, lessonId, delta, reason, idempotencyKey}; AttendanceEvent {lessonId, participantId, serverTime, event}; Report; OperatorAction. Protect tutor and learner overlaps at the database boundary. Use a transaction for reservation plus credit debit, a unique idempotency key, and explicit cancellation transitions. Tokens are issued only after checking authenticated membership, lesson status and join window. Never expose tutor private contact data through public profiles.

Acceptance checks and scope:
Test two learners attempting the same slot; one learner booking overlapping tutors; retries after a network timeout; insufficient credits; cancellation with exactly one refund; daylight-saving transitions; unauthorized room-token requests; denied microphone/camera permission; disconnect/rejoin; a cancelled lesson join; and a tutor who is not approved. Test a real call between two separate devices or browser sessions. Exclude payments, tutor payouts, subscriptions, child accounts, recording/transcripts, unlimited drop-in matching, learning certificates, and a course marketplace from this pilot. Missing media credentials must produce an honest setup error, never a fake working room.

## Originality and assets
The named product is a reference for general workflows only. Use an original product name, visual identity, wording, layout, and assets. Do not copy proprietary code, branded logos, distinctive screens, private APIs, paid templates, or protected media. Use original or appropriately licensed sample data and assets. Build from this brief rather than scraping the reference service. Do not imply affiliation with the referenced company.

## Implementation quality
- Make every visible control work, with clear loading, success, empty, validation, and failure states. Remove controls for unimplemented features.
- Support the target platform and responsive or resizable layouts where appropriate. Use platform-appropriate accessibility semantics, labels, keyboard operation, visible focus, sufficient contrast, and reduced-motion preferences. Provide alternatives for drag-only interactions.
- Validate inputs at the relevant boundary. Treat imported or user-generated content as untrusted; render it safely. Confirm destructive actions or offer undo.
- Keep state changes reliable across navigation and reloads. Never silently lose edits. Handle persistence and network errors with an actionable message.
- Keep the scope realistic. Prioritize the complete primary journey. If a custom Features section differs from the baseline, update the data model, design, and acceptance checks to match it; explicit custom requirements take precedence over baseline assumptions.
- Provide realistic original sample content and a useful empty state. Keep sample data clearly separate from user-created data.

## Delivery and verification
1. Inspect the repository and outline the implementation in a few sentences.
2. Implement the app and connect its actual data flow. Continue until the primary journey works.
3. Run appropriate checks and test the acceptance cases above on the target platform. Verify responsive layouts and keyboard navigation when browser tools are available. For native projects, build with the available SDK and test an emulator or device when possible; report any missing native verification honestly. For games, verify the rules and gameplay loop, not only the menus.
4. Fix observed failures, then provide the runnable result, setup/run instructions, a brief explanation of what is implemented, and any specific configuration or verification limits.

This is a focused MVP. Do not add billing, AI services, or unrelated features unless explicitly requested in the brief. Start building now.

~~~
