← Open the full JS Demo site
// Field guide

Everything in the box

This site started as a place to read JavaScript lessons. It has grown into a complete teaching tool: lessons you can run, videos that talk you through them, quizzes that grade themselves, and an AI helper that is set up to coach instead of just answer. This page is the tour, written for students, teachers and advisors.

132Lessons in 25 sections
761Runnable code samples
609Narrated walkthrough videos
2Languages: English, Spanish
396Quick Check questions
375Self-grading quiz questions
8Visual themes
0Passwords or student accounts
The tour Hidden gems For teachers and advisors Ask AI, and how it is kept honest What is still in progress
Section 1

The tour

Everything a student can touch, and what to try first.

Lessons

132 original lessons

Every lesson is written from scratch for beginners: a plain-language reason it matters, short sections with one focused example and its real output, named traps called out in warning boxes, and comparison tables where there is a choice to make.

TRY: open any lesson in the left menu and read the warning boxes first.
Try It

Run the code, change the code

Most code blocks have a Try it Yourself button. It opens a live editor with the code loaded, a console and a result pane. Every lesson also has a Playground for free experimenting.

  • 629 button-linked samples plus a Playground in each of the 132 lessons
  • Your edits are saved per sample, so a half-finished experiment is waiting next time
  • Each saved file opens with the lesson title and what the code shows
TRY: break the code on purpose and read the error message.
Videos

Narrated walkthroughs, English and Spanish

Try It steps have a short video that shows the code running while a voice explains it, one sentence at a time, with captions. A language selector on every video switches between English and Spanish and remembers your choice.

TRY: open the video on any Try It step and switch the language.
Quick Check

Test yourself before moving on

Every lesson ends with Quick Check questions. Think of an answer first, then open it to compare. Nothing is scored and nothing is recorded, so there is no pressure.

Section quizzes

Scored quizzes that grade themselves

When a section ends there is a short scored quiz: 5 questions drawn at random from a bank of 15, multiple choice and true or false, with the answer options reshuffled each time. After you submit, every answer is explained. You never see the same question twice until you have been through the whole bank.

TRY: take a quiz as a guest first. Guest results are not saved.
Ask AI

A tutor button on every section

Under each section heading, three buttons open Google AI Mode with a ready-made prompt: Explain it, Practice and Real world. At the bottom of each lesson you can ask your own question or paste broken code and get a hint. See the Ask AI section below for how it is kept on track.

TRY: paste code with a bug into Debug my code. You will get a hint, not a rewrite.
My Notes

A notes panel beside every lesson

Jot what clicked, what confused you, and code you want to remember. Notes save as you type, separately for each lesson.

Make it yours

Themes and text size

Eight themes, from Iron Furnace and Void Blue to Typewriter and Parchment (two light themes for daytime reading). The A- and A+ buttons scale the whole lesson, code blocks included. Both choices are remembered.

TRY: switch themes from the top bar and watch the lesson, the editor and the quizzes all change together.
Section 2

Hidden gems

Things the site does quietly that are easy to miss.

Try It

Infinite loops cannot freeze you

The editor watches every loop. If one runs for more than one second it is stopped and you get a clear message with the line number, instead of a frozen browser tab.

REVEAL HOW
Before your code runs, the editor reads it, finds every loop and inserts a one-second timer check at the start of each one. Line numbers do not move, so error messages still point at the right line.
Try It

The console behaves like Chrome's

Grouping, tables, counters, timers and assertions all print the way they do in the real browser console, so what you learn here transfers directly to DevTools.

  • console.table, console.group, console.count
  • console.time and console.assert
Try It

Your draft is safe from the lesson

If you edit a sample and come back later, your draft is restored with a yellow notice, but it does not run until you press Run. If the lesson changed in the meantime, you are offered both versions.

Front door

Twelve living backgrounds

The start screen plays one of twelve animated scenes at random, never the same one twice in a row: a wormhole, a black hole, a lava lamp, a campfire, a synthwave valley, a circuit board and more. They follow your cursor and recolor themselves to match your theme.

REVEAL THE TECH
Most scenes are drawn on the graphics card with WebGL shaders. On phones, scenes with large data files load lighter versions so they still start quickly.
Videos

Captions follow your theme

Video captions are drawn in the active theme's colors and fonts, and the narration is built from separate sentence clips so each caption lines up with its sentence.

Quizzes

Just looking? Guest mode

On the start screen choose "Just looking" instead of entering a name. You can take practice quizzes and read everything, and nothing is recorded.

Section 3

For teachers and advisors

How the site is designed, what it records, and what it costs a student to use it.

Teaching design

One consistent lesson pattern

Every lesson follows the same shape so students always know where they are: a short intro on why it matters, small sections with one example and its real output, named traps, a Quick Check, and a hands-on Try It. Every code output shown on the page was verified by running the code.

  • 25 sections, from Syntax and Operators through Functions, Objects, Arrays, RegExp and Data Types to Errors and Debugging, then the web platform: JSON, the Window API and the Web APIs
  • Lessons are original text, written for beginners, not copied from other sites
  • Examples escalate one idea at a time; each section's quiz tests only that section's concepts
Quizzes

Graded on the server, not in the browser

The answer key never reaches the student's browser, so it cannot be read from the page source. Scores are recorded, every attempt and every answer is kept, retakes are unlimited, and there is no time limit and no pass or fail. The focus is learning, with the explanation shown after each answer.

Quizzes

Every question was checked twice

Each question is checked against the lesson text and then run in JavaScript to confirm the stated answer. True and false answers are balanced. All 25 sections have a quiz (375 questions in all, 15 per section).

Identity

No passwords, no student accounts

A student types a first and last name once and the site remembers them on that browser. There are no passwords to forget and no email addresses collected. Typing the same name on another device reconnects to the same record. A guest option leaves no record at all.

Teacher tools

A private dashboard

A password-protected admin area shows each student's quiz scores and every answer, which questions are hardest, which lesson pages students opened and when, and a daily view of who worked on what. Students can be renamed, merged or reset, questions can be edited or retired, and every table exports to CSV.

Access

Works on school devices

Everything runs in an ordinary browser: Chromebooks, iPads, laptops and phones. Nothing to install. A text-size control, two light themes and captions on every video help with readability and accessibility.

Under the hood

Plain, durable technology

The server side is WebDNA with flat-file databases. The lessons, editor and quizzes are plain HTML, CSS and JavaScript with no framework, so the site is small, fast and easy for a student to read and learn from. All lessons share one page template, which means a change to layout, themes or tools reaches all 110 lessons at once.

REVEAL HOW IT WAS BUILT
Designed and directed by the teacher and built with AI-assisted development. Narration is generated per sentence with a text-to-speech model, and the walkthrough videos are rendered by script. Changes are tested on the live site before they are called done.
Section 4

Ask AI, and how it is kept honest

Students use AI at home whether or not a teacher builds it into the course. This puts it inside the lesson, with guard rails.

Design

Prompts that coach

  • Every prompt names the lesson and section, so the answer matches what the student is reading
  • The AI is told which lessons the student has finished and to avoid anything more advanced
  • Debug my code asks for a hint, not a rewrite
  • Prompts ask the AI to double-check its code and claims
  • Practice questions keep the answers at the end so the student tries first
Testing

It was tested before rollout

Before release, 18 prompts across the Variables lesson were run and every answer was graded for accuracy. The explanations and practice answer keys were correct. Two problems showed up: a factually wrong code comment, and examples that used syntax students had not learned yet. Both were fixed in the prompts and the affected prompts were run again.

Limits

It is a helper, not an authority

AI can be wrong, and output varies from one run to the next. Each lesson says so, and tells students to test any code the AI gives them in the Try It console and to check it against the lesson. That habit, verifying instead of trusting, is one of the goals. The buttons open Google AI Mode, so they depend on that service being available for the student's account.

What is still in progress

CiTi Computer Coding // JS Demo // This page is unlisted: share the link directly.