Build journal
APPPlatform 4 min read

Global Search

Published Jul 8, 2026

Find any lesson, topic, or concept across the whole curriculum from one search box.

Praxis924's curriculum grows fast: every technology holds several frameworks, and every framework holds a stack of AI-generated lessons, each with four sections and a set of exercises. Once you have more than a handful of published lessons, clicking down through Technology -> Framework -> Lesson to find one thing gets slow. Global Search fixes that. It gives every learner (and admin) one box that reaches across the entire curriculum, so you can type what you're after and jump straight to it. This walkthrough shows you how to use it well.

What you'll need

Nothing special. Global Search is available to any signed-in user at /search. It searches published lessons across all technologies and frameworks, so:

  • If you're a learner, you'll see the same published curriculum you browse in /learn.
  • If you're an admin, remember that lessons still in draft (not yet published) won't surface here — publish them first from the /admin console.

That's the only real prerequisite: the thing you're looking for has to exist and be published.

How to search the curriculum

  1. Open search. Go to /search, or use the search entry point in the top navigation from anywhere in the app. You don't need to be on a particular lesson or framework first — search is global.

  2. Type a concept, not a location. You don't have to remember which technology or framework a topic lives under. Type the idea itself: a keyword like pagination, a concept like cosine similarity, or part of a lesson title. Search looks across the curriculum rather than a single framework's timeline.

  3. Scan the results. Matches come back grouped so you can tell what you're looking at, with the lesson's place in the hierarchy shown as context. That framework/technology breadcrumb is what lets you disambiguate two lessons that mention the same term for different reasons.

  4. Jump straight in. Click a result to land directly in the focused lesson viewer for that lesson. From there you read the four sections, open Practice / Code in the /practice/[lessonId] workspace, or hit Ask Lucy to have the AI teacher explain it with that lesson's own content in view. Search is the shortcut; the rest of the app takes over once you arrive.

Tip: Treat search as your primary navigation once the library is large. It's almost always faster to type the concept than to walk the Technology -> Framework -> Lesson tree by hand.

Search smarter

A few habits make results sharper:

  • Start broad, then narrow. Search a single strong keyword first (embedding), see how many frameworks it spans, then add a word to cut the list down (embedding dimension).
  • Search the vocabulary the lessons use. Lessons are written in plain technical language, so the terms you'd expect in a lesson body tend to match best.
  • Use it to avoid duplicates. Before an admin drafts or a learner submits a community contribution, search first to see whether a lesson on that concept already exists.

When it goes wrong

Most empty or surprising results trace back to one of a few causes:

SymptomLikely causeWhat to do
No results for a lesson you know existsThe lesson is still draft, not publishedPublish it from /admin; search only reaches published content
A brand-new lesson doesn't appearIt hasn't finished generating (generation_status not yet generated)Wait for the DBOS generation workflow to complete, then publish
Too many loosely related hitsQuery term is too genericAdd a second, more specific word to narrow the match
Search page won't load / API errors after a deployNginx proxy_pass trailing-slash trap sending /api/v1/* to 404An ops issue, not a search bug — verify the host Nginx config

Note: Global Search is a discovery tool over what's already in the curriculum. It doesn't generate new lessons. If a concept genuinely isn't covered yet, that's a signal to create and generate a lesson for it in /admin (or submit it as a community contribution), not a search failure.

What you get

Once Global Search is part of your routine, the curriculum stops feeling like a tree you have to climb and starts feeling like something you can address directly. You type a concept, you're in the lesson. From that landing point every downstream feature is one click away:

  • Read the lesson in the focused viewer, sources cited inline.
  • Practice the exercises and run the coding challenge in /practice/[lessonId].
  • Ask Lucy for a grounded explanation anchored to that exact lesson.
  • Track it: completing it and passing its challenge flows into your progress summary and the spaced-review schedule that resurfaces it later.

Next

Make /search your default way in. The next time you're mid-lesson and a term you half-remember comes up, don't scroll the timeline hunting for where it was taught, search it, jump to that lesson, and let Lucy tie the two together. As the library keeps growing, the search box is the one entry point that scales with it.

Published in build journal