Search

Find chapters across every book, plus games, labs, animations, simulations, and knowledge checks

Search Tips

Basic Search:

  • Type keywords related to what you’re looking for
  • Minimum 2 characters required
  • Results appear as you type (debounced 300 ms)

Examples:

  • MQTT - Find MQTT chapters, games, guided labs, and simulator tools
  • security - Find security chapters and topics across all galleries
  • sensor calibration - Find specific sensor chapters and topics
  • BLE advertising - Find Bluetooth Low Energy chapters and content
  • time-series database - Find database-related chapters and content

Advanced Features:

  • Partial matching - Searches find partial word matches
  • Multiple terms - Use spaces to search multiple keywords
  • Weighted results - Titles ranked higher than descriptions
  • Result grouping - Results are grouped into three sections – Chapters, Interactives, and Guides – and within each, by source
  • Highlighting - Matching terms highlighted in yellow

Search Fields: Results are searched across: 1. Title (highest weight) 2. Subtitle / book (medium weight) 3. Description / excerpt 4. Topics/Tags 5. Chapter Title


About the Search System

This search system uses Lunr.js for fast, client-side full-text search. Chapter and gallery data is loaded from JSON indices and indexed in your browser for instant search results.

Technical Details:

  • Search Engine: Lunr.js 2.3.9
  • Total Items: ~5,300+ searchable items (varies by content updates), including every chapter and module page from all 47 books
  • Sources: 10 independent JSON indices – 1 chapters index plus 9 gallery indices
  • Search Features: Partial matching, wildcards, field boosting
  • Performance: Sub-100 ms search response time
  • Privacy: All search happens locally in your browser
  • Payload: The chapters index ships title/excerpt/tags only (no full chapter text), keeping it small enough to fetch on every visit to this page

Index Sources

The search system loads data from these index files, generated at build time:

Source Index File Group Description
Chapters chapters-index.json Chapters Chapter and module overview pages from every book (generated by scripts/generate-search-index.py)
Educational Games games-index.json Interactives Interactive learning games
OJS Animations animations-index.json Interactives Interactive visualizations
Foundations foundations-index.json Interactives Universal math and physics explainers
Sims & Tools simulations-index.json Interactives Advanced simulators and decision tools
Simulator Tools external-simulators-index.json Interactives Hardware, circuit, network, and telemetry simulator launchers
Sensor Squad sensor-squad-index.json Interactives Kid-friendly sections
Image Variants image-index.json Interactives Visual resources with multiple styles
Guided Labs labs-index.json Guides Guided learning workflows
Knowledge Checks knowledge-checks-index.json Guides Interactive MCQs

These indices are automatically generated from content and updated with each build.


Keyboard Shortcuts

  • Enter - Execute search immediately
  • Up / Down arrows - Navigate results
  • Escape - Clear the active result / close highlighting

Press Ctrl+K (or Cmd+K on macOS) from any chapter page to open the quick search modal without leaving what you’re reading. This page is for a fuller, grouped view across every book and gallery at once.


Feedback

Found an issue or have suggestions? The search system is continuously being improved based on user feedback.

Common Questions:

Some gallery indices (animations, simulations, labs) may show 0 items because those content types are embedded within chapters rather than tracked as standalone gallery items. The search system is designed to be extensible as more content is indexed.

Results are ranked by Lunr.js based on: 1. Term frequency (how often search terms appear) 2. Field boosting (titles weighted 3x, subtitles 2x, descriptions 1.5x) 3. Inverse document frequency (rare terms ranked higher) 4. Match position (earlier matches ranked higher)

Yes! Separate words with spaces. The search system will find documents containing any of the words (OR logic) and rank documents with more matches higher.

For Beginners: How Search Works

Think of the search system like a librarian who has read every page of every book. When you type keywords, it instantly finds all pages mentioning those words and shows you the most relevant ones first. The “mark” highlights (yellow background) show you exactly where your search terms appear in each result.


Back to top