List once, sell the same app to unlimited buyers — your price, your terms. 100+ developers already are. Sell Now Write for us

PracticeKit: White-Label Booking Website Source Code for Therapists, Tutors & Coaches

PracticeKit gives private practitioners one website with online booking, a day/week/month visit calendar, e-mail confirmations and reminders, a blog and moderated reviews, all managed from an owner admin area. White-label branding, English, Russian and Polish, NestJS + MongoDB + React, one docker compose up.

SaaS Products Healthcare appointment-bookingtherapist-websitebooking-websitewhite-label-websitepractice-managementtutor-bookingonline-schedulingnestjsmongodbreact
$4,000
USD
Contact seller ♡ Save (sign up) Listing ID #418230

Screenshots

About this product

Speech therapists, psychologists, tutors, physiotherapists and coaches sell their time, not products. Most of them still run their practice on a weak one-page website, take bookings through messenger chats and keep no record of who asked for what. Themes give them a landing page but leave the back office (calendar, enquiries, reminders, reviews) to them.

PracticeKit is a white-label booking website for private practitioners. It pairs a public showcase site (landing page, services, about, blog and reviews) with an owner's admin area where the practitioner manages everything alone. Every landing block, blog post, booking form question, visit, review and even the branding is edited in the browser and takes effect immediately, with no redeploy and no developer. Clients book a consultation online, the owner schedules the visit in a day, week or month calendar, and the client confirms by e-mail without logging in. The interface ships fully translated into English, Russian and Polish, and the whole stack (NestJS, MongoDB, React) starts with a single docker compose up.

Features

Public website

  • Landing page with hero section, My approach, About me (biography, photo and up to four highlights), Services cards with descriptions, pictures and prices, a blog block and reviews
  • A Book now button that opens the consultation booking form
  • Blog with drafts, a structured block editor and owner-defined tags
  • Published client reviews
  • Privacy policy and terms of use pages, linked from the footer and from a consent checkbox on every public form

Online booking and consultation requests

  • Booking form with first and last name, e-mail, phone (with country code), a problem description and a preferred date and time
  • Up to five custom questions per practice (the demo asks "How old is your child?")
  • New requests notify the owner by e-mail and Telegram

Visit calendar and confirmations

  • Visit scheduler with day, week and month views built on react-big-calendar
  • Daily and weekly repeating visits
  • Status legend for each visit: not asked, awaiting reply, confirmed, declined, no reply
  • Visit confirmation by e-mail: the client confirms or declines straight from the message, without an account
  • An hourly job sends reminders a day ahead

Owner admin area

  • A Site settings hub with ten editors: hero, about me, my approach, services, blog, booking, contacts, branding, privacy policy and terms of use
  • Reviews moderation: new reviews wait in an "Awaiting moderation" queue and can be published, unpublished or deleted

White-label branding and languages

  • Site name, tagline, logo, primary and accent colours (HEX), site language and currency, all changed from the admin area without a rebuild
  • Live preview of the header, button and service card; the two chosen colours generate a six-colour palette
  • Currency selector for prices on service cards (the demo uses PLN)
  • Three complete interface languages (English, Russian, Polish), including outgoing messages, via i18next

Accounts and security

  • E-mail login with password reset, plus Google sign-in
  • JWT authentication sent as a Bearer token
  • Rate limiting on every public endpoint
  • The seller reports over 1,800 automated tests, linting and a secret scan on every commit

Who it is for

  • Founders and SaaS builders launching a booking-and-website product for therapists, tutors and coaches
  • Web agencies and freelancers who want to resell a white-label practice website and deploy one copy per client
  • Private practitioners: speech therapists, psychologists, physiotherapists, tutors, coaches and consultants who sell appointments

How it works

  1. The buyer deploys the stack with docker compose up; it starts MongoDB, the API and the web app behind nginx and seeds a demo administrator and demo content.
  2. The practitioner signs in and sets the name, logo, colours, language and currency, then edits the landing blocks, services and blog.
  3. A visitor fills in the booking form; the owner receives an e-mail and a Telegram message.
  4. The owner schedules the visit (one-off or repeating) in the calendar.
  5. The client confirms or declines from the e-mail link and gets a reminder a day before.

Ways to monetize

A buyer could sell PracticeKit as a monthly white-label service to practitioners, charge a setup fee per deployed client site, offer it as an agency package with design and content, or bundle hosting and maintenance.

Technology

NestJS 10 · MongoDB 7 · Mongoose 8 · React 18 · TypeScript · Redux Toolkit & RTK Query · Material UI 5 · react-big-calendar · i18next · JWT · Docker Compose · nginx · optional Cloudinary, SMTP, Telegram Bot API and Google OAuth

What you get

  • A monorepo with two apps: apps/backend (NestJS REST API under /api) and apps/web (React single-page app with the public site and admin area)
  • Docker Compose setup with nginx, MongoDB and demo seed data
  • An English README covering installation, deployment to a public host (TLS proxy, single origin, production flags), every environment variable and known limits
  • The automated test suite
  • 30 days of seller support

Good to know

  • Code only. The seller states there is no running business, customers or revenue to take over; the product is the source code.
  • One site per practice. Each deployment serves one practitioner's site. Reselling to many clients means one deployment per client; confirm with the seller if you need multi-tenant hosting from a single install.
  • No online payments. Services show prices, but no payment or prepaid booking flow is described. Bookings are requests that the owner schedules and the client confirms by e-mail; there is no self-service slot picker or video-call integration.
  • "CRM" is light. Enquiries, visits and reviews are tracked, but there are no client records, notes or invoicing beyond that. Confirm with the seller if you need more.
  • Health data and privacy. Consent checkboxes and editable privacy and terms pages are included, but no HIPAA or GDPR certification is claimed. Therapy practices should review compliance for their own market.
  • Your own accounts. You need your own SMTP provider and, optionally, Cloudinary, a Telegram bot and Google OAuth credentials.

Demo

What's included

  • Admin Panel
  • Website

Documentation

The repository holds two apps. apps/backend is a NestJS 10 REST API under /api with MongoDB 7 through Mongoose 8; apps/web is a React 18 and TypeScript single-page app with Redux Toolkit and RTK Query, Material UI 5, react-big-calendar and i18next. Authentication uses JWT, issued on e-mail login or Google sign-in, and the web app sends it as a Bearer token. The data model covers users, site content (every landing block plus branding), blog posts, tags, visit requests, scheduled visits and reviews. A visitor submits a booking form, the owner gets an e-mail and a Telegram message, schedules the visit, and the client confirms it from a link in the e-mail. An hourly job sends reminders. Integrations are optional: Cloudinary for images, any SMTP provider, the Telegram Bot API and Google OAuth. Docker Compose builds and starts MongoDB, the API and the web app behind nginx, then seeds a demo administrator and demo content. The README documents deployment to a public host: TLS proxy, single origin and production flags.

Support

Included: 30 days

Contact the publisher

We'll email you a secure link to follow replies — no account needed.

Reviews

No reviews yet.

Frequently asked questions

What is PracticeKit? +
PracticeKit is a white-label website and booking system for private practitioners such as speech therapists, psychologists, tutors and coaches. It combines a public landing page, services, blog and reviews with an owner admin area for consultation requests, a visit calendar, e-mail confirmations and reminders. It is built with NestJS, MongoDB and React and starts with one docker compose up.
How does online booking work for clients? +
A visitor fills in the booking form with their details, a preferred date and time and up to five custom questions set by the practitioner. The owner is notified by e-mail and Telegram, schedules the visit in the calendar, and the client confirms or declines from a link in the e-mail without creating an account. An hourly job sends a reminder a day before the visit.
Can I resell it as a white-label booking website? +
Yes, that is what it is designed for. Site name, tagline, logo, primary and accent colours, language and currency are all changed from the admin area without a rebuild, so an agency or founder can deploy a branded copy for each practitioner client.
Is it an alternative to Calendly or SimplePractice? +
It covers part of the same ground: online booking requests, a visit calendar with repeating visits, e-mail confirmations and reminders, plus a full public website, blog and reviews that Calendly does not offer. It does not include online payments, video sessions or clinical notes and invoicing like SimplePractice, so it suits practitioners who mainly need a website with booking.
Which languages does it support? +
The interface is fully translated into English, Russian and Polish, including outgoing e-mails, using i18next. The site language is chosen in the branding settings, and more languages can be added with new translation files.
What tech stack is it built on? +
The backend is a NestJS 10 REST API with MongoDB 7 and Mongoose 8 and JWT authentication. The frontend is React 18 with TypeScript, Redux Toolkit and RTK Query, Material UI 5, react-big-calendar and i18next. Docker Compose runs MongoDB, the API and the web app behind nginx.