Code Canvas

Journey Hall, assembled.

An online English school, built from the first free lesson to the hundredth booked one. Students book a free session and keep a weekly momentum with their own teacher. Teachers run their week from one place, from setting weekly schedules to uploading lesson materials and communicating with students.

Stack
Laravel · Livewire · Tailwind · Stripe
online.journeyhall.com
Journey Hall's live homepage on a desktop browser: the welcome banner with the free trial lesson sign-up.

The Spec

The school needed a single platform where a new student could go from curious to booked without any back-and-forth by email, and where teachers could see and manage their whole week, including their schedule, their students and their lessons, in one place.

The Output

A public website, a student portal and a teacher portal on one system. Students book a free session, choose a plan with online checkout, keep a recurring weekly lesson with their own teacher, and find their study materials and messages in one place. Teachers set their weekly availability, manage their students and sessions, upload their own lesson materials and message students directly.

Adventure Portal, piece by piece.

The parts that make it run, from the student's first session to the teacher's week.

The student's journey

The free session booking screen: a search for a teacher, and a teacher's card showing their days, hours and next opening.

Start with a free session

New students book a free session first. Their level is set from it, so every lesson after fits.

The weekly slot picker: a teacher's availability calendar beside a choice of lesson day and time that becomes the student's recurring schedule.

Keep the same hour every week

Pick a teacher and a weekly time once.

Under the hood: slots are claimed one at a time, so two students can never land on the same hour.

A student's sessions page: their teacher, their recurring Tuesday lesson, and the next five lessons already confirmed.

A weekly lesson, booked ahead

Upcoming lessons are already on the calendar. Students can change their schedule or ask to reschedule one lesson without leaving the page.

The teacher's week

The teaching schedule manager: a saved weekly schedule with its hours, slot length and counts of upcoming, open and booked slots.

Regular hours, days off, extra hours

Teachers set their regular week once, then add days off or extra hours as life happens.

Under the hood: edits never move a lesson that's already booked.

Student's view
The lesson as the student sees it: Tuesday, 03 Nov 2026 at 10:00 AM.
Teacher's view
The same lesson as the teacher sees it: Tuesday, 03 Nov 2026 at 12:00 PM.

Every clock, one lesson

Each person sees the lesson in their own timezone, and it stays put when someone moves or travels.

The materials library: monthly files and links filtered by level, year and month, with buttons to add files or a link.

Lesson materials, where students look

Teachers upload a file or a link for a level and month, and it appears in their students' materials.

A message thread between a student and their teacher, with practice sentences, feedback and an attached worksheet.

Talk between lessons

Teachers and students message each other inside the platform, attachments included.

Building something like this?

Connect