DEV Community

Damir Esenberlin
Damir Esenberlin

Posted on

Building an EdTech Platform for Exam Preparation: Lessons from edu.erudit.kz

Over the last year, I’ve been building an online learning platform focused on exam preparation and structured education. The idea started from a simple problem: students were preparing from too many scattered sources — YouTube videos, PDFs, Telegram chats, random tests — and most of them felt overwhelmed instead of progressing.

So we started building https://edu.erudit.kz
— not just another learning website, but a system where lessons, tests, and progress tracking live together.

This post isn’t marketing — it’s a reflection on what we learned while building an EdTech product with a real user base.

The Problem With Traditional Learning Platforms

Most educational platforms focus on content delivery, not on learning flow.

Students usually:

watch videos in one place

solve tests somewhere else

track progress nowhere

From a developer perspective, the biggest challenge wasn’t UI — it was designing a structure that encourages consistency.

Instead of “courses”, we focused on small learning actions:

short practice sessions

instant feedback

visible progress

This dramatically changed engagement.

Tech Stack We Chose (and Why)

We needed something flexible enough for rapid iteration.

Backend: Laravel
Frontend: Nuxt 3
Auth: Token-based flow
Architecture: REST API + modular content structure

Why this stack?

Laravel allowed us to quickly model complex entities:

subjects → modules → lessons → tests

user progress

gamified attributes (XP, streaks, etc.)

Nuxt 3 gave us:

fast SSR pages

reactive UI for test sessions

clean routing for educational flows

One unexpected lesson: performance matters more in EdTech than you think. Students lose focus fast — even small delays during test loading reduce retention.

Designing Practice Instead of Content

One of the biggest mistakes we avoided was building a “video-first” platform.

Instead, we structured the system around practice loops:

Student opens a subject

Solves a short task

Gets instant feedback

Continues without friction

From a product perspective, this required building:

flexible question models

session tracking

lightweight progress analytics

From a dev perspective — lots of edge cases 🙂

Gamification Isn’t About Games

When people hear “gamification”, they imagine flashy badges.

What actually works:

visible streaks

small rewards

clear progression

Technically, this meant tracking actions as events rather than static states. For example:

completing practice

improving score

daily activity

This event-based approach simplified logic across the platform.

Biggest Challenges So Far

  1. Content Structure

Education isn’t just CRUD. Relationships between lessons, tests, and attempts grow fast. Early database decisions matter a lot.

  1. Motivation vs Complexity

Adding features is easy.
Keeping students focused is hard.

We learned to reduce UI noise and keep interactions short.

  1. Real Users Behave Differently

Developers imagine ideal flows.
Students click everything randomly 🙂

Logging and analytics became essential.

What I’d Do Differently If Starting Again

Design analytics first, not last

Avoid overengineering gamification early

Think in “learning actions”, not pages

EdTech feels simple on the surface, but building a system that people return to daily is closer to building a game than a website.

Final Thoughts

Building edu.erudit.kz taught me that educational platforms aren’t just about delivering knowledge — they’re about designing habits.

If you’re working on EdTech, I’d love to hear:

what stack you’re using

how you track user progress

and what actually keeps students engaged

Because honestly — the hardest part isn’t code.
It’s helping someone come back tomorrow and learn again.

Top comments (0)