01/Full Stack Development/Client Project/2024 — Present

Slovenščina
Korak za Korakom

Overview

A two-platform system for learning and teaching Slovenian — built for a growing community of 2,000+ learners spread across multiple countries.

Role

Product Designer
Frontend Developer
Backend Developer
Database Architect

Type

Client Project
Solo Development

Timeline

2024 — Present

Status

Live in Production

Landing page — light and dark themeUser dashboard — light and dark themeCalendar scheduler — light and dark theme

Student Platform

A learning experience built for every timezone

The student-facing application is where learners discover, book, and attend personalized Slovenian lessons. It supports individual, pair, and group sessions delivered over Microsoft Teams and Zoom — accessible from anywhere in the world.

Authentication is handled by Clerk, payments by Stripe with webhook-driven confirmations sent via Resend. The interface is fully internationalized across English, Slovenian, Russian, and Italian using next-intl.

01

Free Trial Lessons

New students can book a 45-minute trial session at no cost — a risk-free way to experience the teaching style and platform before committing to a plan.

02

Flexible Session Formats

Lessons are offered in individual, pair, and group formats, conducted over Microsoft Teams or Zoom. Students can choose whichever format fits their learning goals and schedule.

03

Booking & Payments

A full Stripe-powered booking flow handles lesson reservations and payments end-to-end. Stripe webhooks trigger automated email confirmations sent via Resend, so students always have a record.

04

Multi-language Interface

The platform is fully internationalized in English, Slovenian, Russian, and Italian using next-intl. Routes are locale-segmented and content updates automatically based on the user's detected language.

05

Progress Dashboard

Students land on a personal dashboard after login that tracks learning history, upcoming sessions, completed lessons, and achievements — giving them a clear view of how far they've come.

06

Telegram Community

A 2,000+ member Telegram group extends the learning experience beyond scheduled lessons, providing daily practice opportunities, cultural content, and peer interaction.

Framework

  • Next.js 15
  • TypeScript
  • Tailwind CSS

Backend

  • PostgreSQL
  • Drizzle ORM
  • Server Actions

Auth & Pay

  • Clerk
  • Stripe
  • Webhooks

Services

  • Resend
  • React Email
  • next-intl

Admin Platform

A control center for tutors and administrators

Built as a separate Next.js 16 application with React 19, the admin platform gives tutors a real-time dashboard of upcoming events, pending alerts, and daily schedules. FullCalendar powers the scheduling views with drag-and-drop rescheduling via dnd-kit.

Role-based access is enforced at the server level through Clerk and Server Actions. New tutors must complete a guided activation flow before gaining any system access. Timezone handling is managed through date-fns-tz to keep international tutors and students in sync.

01

Real-time Dashboard

Tutors land on a live overview showing upcoming sessions, language club events, pending alerts, and their personal schedule for the day — all updated in real time.

02

Visual Scheduling

FullCalendar provides calendar views for both individual tutoring sessions and club events. Sessions can be rescheduled with drag-and-drop via dnd-kit, and all times are normalized through date-fns-tz for accurate cross-timezone coordination.

03

Language Club Event Management

A dedicated event system handles language club activities separately from regular lessons — with capacity limits, participant tracking, and payment integration built in.

04

Team Coordination

Administrators can view the full team schedule and monitor logged hours across tutors, making it easy to coordinate a distributed instructor pool as the business scales.

05

Payment Tracking

Every session and event carries multi-status payment records (pending, paid, overdue). Admins have a clear view of outstanding and completed transactions without leaving the platform.

06

Role-based Access & Tutor Activation

Clerk roles gate both the UI and every Server Action — permissions are enforced at the data layer, not just the interface. New tutors must complete a guided activation flow before gaining any system access, keeping the platform secure as the team grows.

Framework

  • Next.js 16
  • React 19
  • Tailwind CSS v4

Data

  • PostgreSQL
  • Drizzle ORM
  • Server Actions

Scheduling

  • FullCalendar
  • dnd-kit
  • date-fns-tz

Forms & UI

  • shadcn/ui
  • React Hook Form
  • Zod