DEV Community

Cover image for Every learning app is designed to addict you. I built the one that isn't.
Stilyan Stoyanov
Stilyan Stoyanov

Posted on

Every learning app is designed to addict you. I built the one that isn't.

Every learning platform I have ever used was built to need me back.

Duolingo needs me to maintain a streak. Coursera needs me to stay enrolled. Khan Academy needs me to keep clicking. The product only works if I keep returning. That is not education. That is retention engineering acting as education.

Aether is built on the opposite premise. Open it. Study. Close it. Come back when you want to, not when an algorithm decides you should.

What it is

Aether is a free, open-source learning platform. Fully static React/Vite. No backend. No accounts. No streaks. No notifications. Progress lives in IndexedDB -- on your machine, not a server. Drop the dist/ behind any web server and it runs. A Raspberry Pi, a $5 VPS, Cloudflare Pages. No database to configure. No auth to set up. No container stack unless you want one.

It currently has:

  • Classical Mechanics in full -- Newtonian through Hamiltonian, LaTeX throughout, problem sets, FSRS-scheduled review
  • Arithmetic with interactive manipulatives
  • German A1
  • FSRS spaced repetition running entirely in the browser
  • KaTeX for math rendering

Why the architecture matters

The backend is where dark patterns live. Streaks require a server to track them. Push notifications require a server to schedule them. Engagement metrics require a server to collect them. Remove the server and you remove the mechanism for all of it -- not as a policy, but structurally.

This cannot be walked back by a future contributor adding "just one feature." There is no server to add it to.


What is missing - and why that is the point

Three subjects exist. The architecture handles any subject in any language.

The subject you know best is not in it yet. The feature you would want is not in it yet. Both belong here, and neither requires a product manager to approve them.

Content is Markdown with LaTeX. If you can write about a subject, you can add it. No React required. No build tooling knowledge required. Open a file, write, submit a PR.

If you are a developer: the codebase is solo-built. Someone better at React than me will see things I missed. The architecture is intentional but not infallible. Issues and PRs are open.

If you care about what does NOT get added -- streaks, accounts, notifications, social features -- that line is written into the contribution guide. If you want to be one of the people who holds it, you can be.


The only ask

Use it. If something feels wrong, name it. If a subject is missing, add it. If the code has a problem, open an issue.

The version of this platform that is actually useful to most people does not exist yet. It gets built by the people who know what is missing.

Link of the repo

Top comments (0)