Overview
DevTools let you see what your design is actually doing. This guide connects what you already know about inspecting HTML and CSS to understanding how JavaScript behavior works.
Your First 15 Minutes is a hands-on walkthrough using the Console Playground. You'll open DevTools, run your first JavaScript, and discover the hidden message. Takes about 15 minutes.
What You Already Know
From DESN368, you're comfortable using Firefox's Inspector to examine HTML structure and CSS styles. You know how to:
- Right-click → Inspect to select elements
- Read the DOM tree to see how elements are nested
- Check the Rules panel to see which CSS applies
- Use the Box Model to understand spacing
This guide builds on that foundation. Everything here uses Firefox DevTools—the same tools you already know.
The Two Sides of DevTools
DevTools has two sides that work together. You already know one of them:
┌─────────────────────────────────────────────────────────────────┐ │ THE PAGE │ │ │ │ What you SEE What it's DOING │ │ (Inspector) (Console) │ │ │ │ ┌─────────────┐ ┌─────────────┐ │ │ │ HTML Tree │◄────────────►│ DOM Objects │ │ │ │ CSS Rules │ │ Events │ │ │ │ Layout │ │ State │ │ │ └─────────────┘ └─────────────┘ │ │ │ │ │ │ ▼ ▼ │ │ "This element has "When I click, │ │ these styles" this happens" │ │ │ └─────────────────────────────────────────────────────────────────┘
The Inspector shows you structure and appearance. The Console shows you behavior and state. The bridge between them is a simple tool called $0.
The $0 Bridge
When you select an element in the Inspector, you'll see == $0 next to it. This means you can type $0 in the Console to reference that exact element.
- Right-click any element on this page → Inspect
- Notice the
== $0indicator next to it in the DOM tree - Click the Console tab (or press Esc for the split view)
- Type
$0and press Enter - The Console shows you the same element you selected visually
This is the bridge. Visual selection becomes code access. Once you have $0, you can ask questions:
// What classes does this element have?
$0.classList
// What data attributes?
$0.dataset
// Add a class and watch the Inspector update
$0.classList.add('active')
What You'll Learn
The Console
Watch messages, read errors, and understand what your code is doing.
The $0 Bridge
Connect visual selection to code access. Test changes before writing them.
Reading Element State
Check classes, attributes, and computed styles through the Console.
Reading Errors
Understand what error messages mean and how to fix common problems.
What This Guide Skips
Traditional DevTools tutorials focus on debugging complex JavaScript. That's not where designers start. Here's what we're setting aside for now:
| Engineering Focus | Designer Focus |
|---|---|
| Breakpoints and step debugging | Reading what changed |
| Call stack analysis | Watching events fire |
| Memory profiling | Checking element state |
| Network request debugging | Understanding errors |
The engineering tools exist and you may need them later. But for learning how behavior works, we start simpler.
Next Steps
If you haven't done the tutorial yet, start there:
Otherwise, explore the sections that match what you're trying to do:
- Building a theme toggle? Start with The $0 Bridge
- Something not working? Check Reading Errors
- Need a quick lookup? See the Reference
You'll use DevTools throughout this course—for Lab 0-2 this week, for the theme toggle in Week 1, and for every project after. Keep this guide handy.