I kept bailing on new programming courses. After the workday I had no energy left, and I didn’t want to start my day with a 30-minute learning session either.

I’ve had a Duolingo streak for about a year and never had trouble keeping it up — it’s just 3 minutes a day. Doing it every morning has become part of my routine. I wished there were a Duolingo for coding.

Cartoon owl in round glasses typing code on a laptop at a wooden desk

After researching learn-to-code apps like Sololearn, Enki, Mimo and Brilliant, I found that they all have strong learning and streak systems, but the content was boring for me — I wished I could follow the newest official docs or advanced courses using such bite-sized lessons with habit-building streaks.

App Store screenshots of the learn-to-code apps Sololearn, Enki, Mimo and Brilliant

I tried using the ChatGPT and Claude mobile apps to feed them content and generate a custom course with 3-minute lessons. However, I really missed the accountability which Duolingo gives you and the convenience of just opening a dedicated app.

Handshake meme: two businessmen with the ChatGPT and Claude app icons as heads

Building a Duolingo for coding

So I decided to create Nano Learny, a microlearning app — simple interface, streak system, ability to import content from any webpage (official docs, course, article).

A big challenge was to collect the info from different pages, without mixing it with other materials on the web. I came up with a solution — you paste a link, the backend scrapes all pages in the section, evaluates them using AI and shows the full structure with preselected pages for your review.

Nano Learny import screen with a Django docs link, and the page picker for the Getting started with Django course

How the lessons are made

Each lesson is made from approximately 600 words of the source: 12–15 cards , with 5–8 short info cards and 7 questions (choose from 3 options, true/false, short answer). The AI gets previous lessons as context, so it can balance new facts with reinforcing what you’ve already learned.

Nano Learny, a Duolingo for coding: a Rust lesson card and a quick-check quiz question

I noticed that we still had small inaccuracies. So I introduced a second phase after generation — another AI goes through all the lessons, compares them with the original page(s) and searches for issues : unnecessary repetitions, missing key facts, incorrectness, questions out of the blue.

That brought the success rate higher, but since it’s AI-generated, there’s always room for error. If you spot an inaccuracy in a lesson, you can report it and let AI regenerate that chunk with your instructions.

A quiz question with an imprecise answer, and the Report a problem screen with Fix it now with AI selected

We have courses for the most popular technologies already imported. You can just choose from the store and start right away.

Nano Learny store with ready-made learnies for Python, JavaScript, TypeScript, PostgreSQL, Docker, Kubernetes and Git

You can try it now in the web version at nanolearny.app — it has 5 free credits for new users. The iOS app is coming soon.

Nano Learny — Daily Lessons app icon in App Store Connect, iOS 1.0 Pending Developer Release

I’m building Nano Learny alone (follow the process on LinkedIn and X), so I’d really like to hear your feedback. Leave a comment, I read all of them.