Elman Huseynov

Web platform

algopath.pro

Learn algorithms by building them: 150 steps, 6 languages, code runs in the browser.

An active-recall course for data structures and algorithms, in English and Russian. Every step is one arc: the theory, your own implementation, then the same algorithm inside a real production case. Binary search shows up as git bisect, a sliding window as a rate limiter. Code runs in the browser in 6 languages, nothing executes on the server. Freemium with Stripe billing.

Open algopath.pro See the numbers

algopath.pro, first screen: Learn algorithms by building them: 150 steps, 6 languages, code runs in the browser.
The first screen, as it renders today. Open the site to see the rest.

What I did

Course, platform, code runner, billing and the site.

  • Wrote the course: 150 steps in English and Russian, each with theory, an exercise with tests, and a production case.
  • Built the platform on Laravel and Inertia with React: progress, leaderboard, pattern trainers, timed mock interviews.
  • Made the code runner client-side for all 6 languages: JavaScript and TypeScript in a Web Worker, Python through Pyodide, PHP through php-wasm, Java through CheerpJ, C# on a .NET WebAssembly runtime.
  • Added freemium access with Stripe: the first 33 steps free, the rest server-side until purchase, lifetime or subscription.
  • Set up CI on every push, Playwright before push, and a deploy that renders the production env from secrets and syncs over SSH.
  • Built the admin panel: courses, blog, newsletter, coupons, roles and permissions.

The decisions, and why

Code runs in the browser
A server that executes strangers' code is a security job of its own and a bill that grows with every learner. WebAssembly runtimes make the tab do the work, and the server stays a content server.
Implementation before explanation
Watching an algorithm explained does not survive interview stress. Credit is earned by writing the core yourself and saying out loud why it fits the case.
Locked steps stay on the server
A paywall in the client is a paywall for people who do not open developer tools. The lesson body, hints and exercise of a locked step never reach the browser.
Two languages, one source
The Russian and English courses are the same steps in two folders, and the platform seeds its database from them. One fix lands in both.

Built with

  • Laravel
  • Inertia
  • React
  • TypeScript
  • MySQL
  • WebAssembly
  • Stripe

The numbers, and where they come from

PageSpeed, mobile
98
PageSpeed Insights, 12 Sep 2026
Steps in the course
150
English and Russian
Languages you can solve in
6
JS, TS, Python, PHP, Java, C#
Pages
177
sitemap, 9 Sep 2026

Performance scores move a few points between runs on any site, including these. Paste the address into PageSpeed Insights and run it yourself.

Want something like this built?

New sites and apps are quoted per project; a site you already have gets the Core Web Vitals and technical SEO service. Both start with a free 20-minute call.

Website and app development Core Web Vitals and SEO