Haitham Assoli

← All projects

DevCards

Spaced-repetition flashcards for engineering interviews.

0The facts

Role
Solo: content and app
Year
2026
Status
Live
Category
Web
Built with
Next.js · TypeScript · Tailwind CSS · localStorage · Leitner scheduling
Where to find it
DevCards

1 · Overview

What it is, and why it exists.

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.

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.

1a · Challenges

Each problem got a card. Each fix got filed behind it.

1a1Getting it right once is not learning it

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.

1a1aWhat 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.

1a2No backend means no account to restore from

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.

1a2aWhat 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.

2 · Results

Next project

→Hadanati

Run a nursery: attendance, assessments, fees and a parent portal.

Next design — SpoolerSee all 14