Haitham Assoli · print spoolerFILE DEVCARDS

ASSOLI — home[ Work ][ عربي ][ Hire me ]

$ cd ~/work && cat devcards.md

---
title: DevCards
role: Solo: content and app
year: 2026
status: Live
category: Web
stack: [Next.js, TypeScript, Tailwind CSS, localStorage, Leitner scheduling]
live: Visit the site
github: Source ---

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
devcards.png

##Overview

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

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.

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

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.

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.
FOLD

$ next

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