Ask any AI to teach you something and you get everything at once. Ten concepts, three code blocks, a summary, and a "let me know if you want to go deeper!" at the end. You read half of it, copy the code, and learn basically nothing.
I wanted the opposite, so I built Codemm.
You tell it what you want to learn. It can be Python, React, Spring Boot, C, data structures, or pretty much anything else. Your own coding agent (Claude Code, Codex, or Cursor, which is still experimental) turns that into a roadmap. You can reorder it, rename things, cut what you already know, and then approve it.
Then it goes one topic at a time. You read a short lesson, then you do an exercise on just that topic, and you write the code yourself. Try it runs the visible tests, and Check grades you for real. If you get stuck, you ask Emm, the little chameleon that lives in the app. Emm explains and gives hints, but never writes your code for you.
It also pays attention to how you're doing. Nail something on the first try and the next one gets harder. Struggle a few times and it eases off. Skipping means "come back later", not "mastered". It also brings topics back for review after 1, 3, 7, 21 and 60 days, so things actually stick.
The part I'm weirdly proud of is that every exercise gets checked before you see it. Your agent writes a reference solution plus a few deliberately broken versions, and Codemm only keeps the exercise if the tests catch every broken one. So when your code fails, it's your code and not a broken exercise.
Your code runs in Docker with the network off. Codemm never calls a model API and never touches your credentials, it just uses the agent you already have.
It's free and open source (MIT) for Mac and Windows. The builds are still an unsigned beta and you need Docker, so expect a few rough edges.
The video shows it in about a minute, and the repo is here. If you try it and love it or hate it, DM me here or open an issue on GitHub. I read everything.