Heading into an interview and need a quick refresher? This is for you.
I built this because I wanted a place to brush up on JavaScript concepts — the kind of things you know but might struggle to explain clearly under pressure. Each concept is described in 30 words or less, which forces clarity over complexity.
If you find a better way to explain something, please share it. Contributions are genuinely welcome.
This is also a good place to make your first open source contribution if you've been looking for one. Improving a definition or fixing a typo counts.
You'll need Node.js 22 or newer.
npm ci
npm run devOpen the local address printed in the terminal. Each concept has its own URL (like /javascript-closures/) and works even with JavaScript disabled.
The homepage opens Variables at /javascript-variables/. The full topic library remains available at /concepts/ through the All concepts breadcrumb. Try Practice Pad sits in the top-right toolbar on every page.
Each concept page has a collapsible AI panel. Expand it, connect your OpenAI or Anthropic API key, pick a model, and you can ask it to explain the concept simply, walk through the code, or quiz you on it.
Your key stays in page memory and is never sent to our server — requests go straight from your browser to the provider. It clears when you leave or reload the page, unless you choose to remember it for that tab.
The AI code downloads only when you open the panel, keeping the definitions and examples light.
The site now covers 40 concepts. New definitions stay under 30 words, and every code example is tested.
npm test
npm run buildSee the maintenance notes for editing content and AI crawler access, and the Lighthouse audit for performance and SEO results.
Once you're comfortable with the concepts here, Practice Pad is a good next step. It's designed for working through JavaScript interview questions hands-on, so you can go from knowing the theory to actually being able to answer on the spot.
