An interactive web-based course that teaches browser debugging skills through hands-on exercises.
This course teaches you how to master the browser's debugging tools through 5 progressive exercises:
- Inspector Introduction - Learn to navigate the Sources tab structure
- Line Breakpoints - Master breakpoint setting and call stack inspection
- Step Controls - Practice Step Over, Step Into, and Step Out
- Event Breakpoints - Debug user interactions and understand variable scope
- Watch & Fix - Use watch expressions to fix the classic "5" + "1" bug
Visit the live course at: https://[your-username].github.io/debugger-pages
- Clone this repository
- Open
index.htmlin your browser - Open Developer Tools (F12 or Cmd+Opt+I)
- Navigate to the Sources tab
- Start with Exercise 1
- Sources Tab Navigation: Understanding file trees, code editor, and debugger panels
- Breakpoint Mastery: Line-of-code and event listener breakpoints
- Step Debugging: Precise execution control with step over/into/out
- Scope Understanding: Local, closure, and global variable scope
- Watch Expressions: Monitoring variables and expressions in real-time
- Live Code Editing: Fixing bugs directly in the debugger
- Call Stack Analysis: Understanding function call hierarchies
Each exercise includes:
- Automatic Detection: Monitors your debugging actions
- Progressive Guidance: Step-by-step instructions
- Interactive Elements: Real code to debug and fix
- Visual Feedback: Progress indicators and success animations
- Debug Helpers: Console utilities for testing and validation
Works in all modern browsers with Developer Tools:
- Chrome/Chromium (recommended)
- Firefox
- Safari
- Edge
Each exercise follows this pattern:
- Setup: Explanation of the concept and tools
- Practice: Hands-on debugging with real code
- Validation: Automatic detection of correct actions
- Progress: Move to next exercise or step
debugger-pages/
├── index.html # Course landing page
├── styles.css # Global styles
├── page1.html/.js # Exercise 1: Inspector intro
├── page2.html/.js # Exercise 2: Line breakpoints
├── page3.html/.js # Exercise 3: Step controls
├── page4.html/.js # Exercise 4: Event breakpoints
├── page5.html/.js # Exercise 5: Watch and fix
└── README.md # This file
Each exercise includes debug helpers accessible via console:
// Check exercise progress
debugHelpers1.status()
debugHelpers2.status()
// ... etc
// Force completion (for testing)
debugHelpers1.forceComplete()
// Simulate user actions
debugHelpers3.simulateStepOver()
debugHelpers4.triggerClick()By completing this course, you will:
- Navigate the browser's Sources tab confidently
- Set and manage breakpoints effectively
- Use step controls for precise debugging
- Understand JavaScript variable scope
- Debug event-driven code
- Use watch expressions for variable monitoring
- Edit and test code fixes in real-time
Contributions welcome! Areas for improvement:
- Additional exercises for advanced debugging techniques
- More browser-specific debugging features
- Enhanced visual feedback and animations
- Mobile device debugging exercises
MIT License - feel free to use for educational purposes.
Created to make browser debugging more accessible and interactive for developers at all levels.
Happy Debugging! 🐛✨