Haitham AssoliRead this page in Arabicاقرأ هذه الصفحة بالإنجليزية
All projects

LiveWeb2026

DevCards

Spaced-repetition flashcards for engineering interviews.

Hundreds of multiple-choice questions across thirteen topics, each with a full explanation, scheduled by a Leitner system so the cards you get wrong keep coming back until they stick. Entirely frontend: no backend, no account, no network calls.

DevCards: Spaced-repetition flashcards for engineering interviews.
Role
Solo: content and app
Year
2026
Status
Live
Built with
  • Next.js
  • TypeScript
  • Tailwind CSS
  • localStorage
  • Leitner scheduling
Where to find it

Interview prep material is either a list of questions with one-line answers you forget immediately, or a course you never finish. Neither does the thing that actually works, which is being asked the question again a few days after getting it wrong.

DevCards covers thirteen areas at three difficulty levels: software engineering, frontend, backend, system design, microservices, caching, databases, security, React, PHP, Laravel, Next.js and Node.js. Every card is multiple choice and graded instantly, with a short answer and a deeper 'behind the scenes' explanation.

There is no backend at all. Progress lives in the browser, which means it opens instantly and costs nothing to run.

Challenges

  • Getting it right once is not learning it

    The snag

    A plain quiz shuffles and moves on, so a question you guessed correctly and a question you actually know are treated identically, and the ones you got wrong are the ones you never see again.

    What I did

    A Leitner system with self-rating. A missed card drops to box zero and returns almost immediately, both later in the same session and in future ones, while cards you know climb to longer intervals.

  • No backend means no account to restore from

    The snag

    Keeping everything client-side is what makes the app free and instant, but it also means progress is tied to one browser and can be cleared without warning.

    What I did

    I took the trade deliberately rather than adding accounts for a study tool. Storage reads and writes are defensive so a cleared or blocked store degrades to a fresh session instead of a crash.

Results

  • Thirteen categories, hundreds of graded questions with explanations.
  • Leitner scheduling plus in-session re-queueing of missed cards.
  • Fully offline-capable; keyboard-driven throughout.

Screens

Next design — SignalSee all 14