Skip to main content
Tutorbloc is the operating system for educators: crafted for one-to-one teaching with a suite of tools to manage clients and grow earnings. The platform consists of a Laravel API (backend) and a Vue 2 SPA (frontend client).

What the API does

Tutor onboarding

Registration, identity verification (Onfido/Yoti), DBS criminal checks, qualification uploads, multi-step profile completion

Search & discovery

Location-aware tutor search with subject, level, availability, distance, and lesson type filtering

Booking & payments

Lesson booking with Stripe payment processing, pre-authorization, 3D Secure, and automated payouts to tutors

Lesson management

Scheduling, rescheduling (72hr advance notice), cancellation, refunds, and post-lesson review flows

Video lessons

Zoom and Daily.co integration for online tutoring sessions

Notifications

Email (SMTP/Mailgun), push (APNS/FCM), and SMS (Twilio) notifications across all workflows

User roles

The platform has four user roles, defined in app/Models/v1/Role.php: There are also test roles: TUTOR_TEST (100) and STUDENT_TEST (101).

Local setup

Get the API running on your machine

Where to start reading

The 5 files every new dev should read first

Architecture

How the codebase is structured

Known gotchas

Non-obvious things that will trip you up

Frontend client

Vue 2 SPA — components, routes, and how it talks to the API

API endpoints

Every backend endpoint with auth, params, and responses