Why FretsNotes Took Almost Two Months to Build


You could build a note-naming flashcard app in a weekend. We know, because that was the temptation the whole way through. Instead we spent the better part of two months heads-down — and we’d make the same call again. Here’s what that time actually bought, and why it matters for how you’ll learn.

One engine, three platforms

The hardest decision we made early was also the best one: build the “brain” of FretsNotes once, and share it everywhere.

Everything that makes a practice session smart — how prompts are chosen, how answers are graded, all sixteen exercise modes, adaptive difficulty, the hint system — lives in a single core written in Rust. The iOS app and the Android app call straight into it. The web app runs the exact same code compiled to WebAssembly.

That means the logic is identical on every device. A note is graded the same way on an iPhone, a Pixel, and in your browser. When we fix something or tune a difficulty curve, it lands everywhere at once — there’s no “the Android version behaves differently” drift that plagues cross-platform apps.

Building that shared core, and the bridges into three very different runtimes, is a real chunk of the two months. It’s invisible when it works — which is exactly the point.

A curriculum, not a pile of exercises

It’s easy to throw a few hundred random questions at someone and call it a course. We didn’t want that. FretsNotes ships with 110+ courses across eight series, covering frets 0 through 12, each with units, practice blocks, checkpoints, and mastery gates.

The progression is deliberate: you learn one string at a time, then combine them, then a new skill is introduced, then it’s reinforced against everything you already know. Foundations → ear training → accidentals → moving up the neck → intervals → full chromatic vocabulary → sight-reading. Designing that path, authoring every course, and validating that the prerequisites actually chain together is slow, careful work. There are no shortcuts to a curriculum that doesn’t leave gaps.

Sixteen ways to practice — including your real guitar

Most “learn the fretboard” apps give you two or three exercise types. FretsNotes has sixteen, across reading, fretboard knowledge, ear training, and playing.

The last two categories are where the time goes. Ear training means real synthesized tones and exercises like melodic contour and interval recognition. And “play the note” / “play the interval” / “sight-read” mean we listen to your actual guitar through the microphone and detect what you played — pitch detection, tuning tolerance, and latency are genuinely hard problems, and getting them to feel fair and responsive took a lot of iteration.

Practice that adapts to you

Underneath every session is a mastery-weighted scheduler. Each note and interval you practice carries a mastery score. The things you struggle with come back more often; the things you’ve nailed fade away. Adaptive difficulty promotes you when you’re ready and eases off when you’re not, and progressive hints nudge you toward the answer without handing it over. “Smart practice” sounds like a buzzword — building it so it genuinely focuses on your weak spots is the difference between an hour well spent and an hour wasted.

The 80% you never see

A learning app is only half the work. The rest of the two months went into the parts that don’t show up in a screenshot:

  • Accounts and cross-device sync — start on your phone, continue in the browser, progress follows you.
  • Offline support — the whole curriculum works without a connection.
  • A backend for course delivery, sync, and content management.
  • Localization — English and Ukrainian, fully.
  • A no-install web demo — try every exercise in your browser before you download anything.

None of that is glamorous. All of it is what separates a demo from something you’d actually use every day.

So, why almost two months?

Because we chose depth at every fork:

  • One shared engine instead of three drifting codebases.
  • A real, gap-free curriculum instead of a question bank.
  • Ear training and real-instrument input instead of just tapping buttons.
  • Adaptive, personalized practice instead of random flashcards.
  • Sync, offline, and polish instead of a thin MVP.

We could have shipped flashcards in a weekend. We wanted to build the thing we wished existed when we were learning — and that takes a little longer.

FretsNotes is in beta and free during the beta on iOS, Android, and the web. Want to see what we mean? Try every exercise in your browser — no install — or request early access to the full app.

We’ll keep sharing what we’re building right here. Thanks for following along.