117Generated learning path
The assistant's most product-specific output: “here is a six-week route from where you actually are to a Platform Developer I attempt.” Numbered steps on a rail, each pointing at a real course or lesson, with what the student has already finished marked done — and a save action that turns the answer into an object on their dashboard.
Use it for
- Any answer whose real conclusion is a sequence — certification routes, “where do I start”, catching up after a gap
- Marking completed steps done rather than dropping them: seeing what you have finished is half the motivation
Not for
- The marketing roadmap — that is Roadmap card, with illustrations and lede copy; this is a compact plan inside a message
- A path made of steps that are not real courses. Every row must be a link to something that exists
In an answer
Route to Platform Developer I
01
Apex basicsLessons 01–03 · already done
done
02
Collections, maps and setsApex basics · lesson 09
this week
03
Bulk-safe Apex patterns9 lessons · the fix, properly
week 2
04
SOQL, properlyRelationships and selective queries
week 3
05
Testing and deployment75%+ coverage, and what it is for
weeks 4–6
markup
<div class="ns-aipath" style="max-inline-size:38rem">
<div class="ns-aipath__head">
<span class="ns-aipath__title">Route to Platform Developer I</span>
<span class="ns-aipath__meta">6 weeks · 5 steps</span>
</div>
<div class="ns-aipath__steps">
<a class="ns-aipath__step" href="#0" data-state="done">
<span class="ns-aipath__index">01</span>
<span><span class="ns-aipath__name">Apex basics</span><span class="ns-aipath__sub">Lessons 01–03 · already done</span></span>
<span class="ns-aipath__when">done</span>
</a>
<a class="ns-aipath__step" href="#0">
<span class="ns-aipath__index">02</span>
<span><span class="ns-aipath__name">Collections, maps and sets</span><span class="ns-aipath__sub">Apex basics · lesson 09</span></span>
<span class="ns-aipath__when">this week</span>
</a>
<a class="ns-aipath__step" href="#0">
<span class="ns-aipath__index">03</span>
<span><span class="ns-aipath__name">Bulk-safe Apex patterns</span><span class="ns-aipath__sub">9 lessons · the fix, properly</span></span>
<span class="ns-aipath__when">week 2</span>
</a>
<a class="ns-aipath__step" href="#0">
<span class="ns-aipath__index">04</span>
<span><span class="ns-aipath__name">SOQL, properly</span><span class="ns-aipath__sub">Relationships and selective queries</span></span>
<span class="ns-aipath__when">week 3</span>
</a>
<a class="ns-aipath__step" href="#0">
<span class="ns-aipath__index">05</span>
<span><span class="ns-aipath__name">Testing and deployment</span><span class="ns-aipath__sub">75%+ coverage, and what it is for</span></span>
<span class="ns-aipath__when">weeks 4–6</span>
</a>
</div>
<div class="ns-aipath__foot">
<button type="button" class="ns-btn ns-btn--outline ns-btn--sm"><i class="ph ph-bookmark-simple" aria-hidden="true"></i> Save as my path</button>
<button type="button" class="ns-btn ns-btn--quiet ns-btn--sm">Adjust pace</button>
<span class="ns-aipath__meta">~4h / week</span>
</div>
</div>Project plan
The same object doing career work: a portfolio project broken into build steps, which is what a student asking “what do I put on my resume” actually needs.
Project: a volunteer-shift manager
01
Model itVolunteer, Shift, Signup — two lookups, one rollup
2h
02
Automate the double-booking checkRecord-triggered flow, then the same rule in Apex
3h
03
Build the signup screenOne LWC, wire adapter, no imperative Apex
4h
04
Test it honestlyInsert 200 signups, not one
2h
markup
<div class="ns-aipath" style="max-inline-size:38rem">
<div class="ns-aipath__head">
<span class="ns-aipath__title">Project: a volunteer-shift manager</span>
<span class="ns-aipath__meta">portfolio · 4 steps</span>
</div>
<div class="ns-aipath__steps">
<a class="ns-aipath__step" href="#0">
<span class="ns-aipath__index">01</span>
<span><span class="ns-aipath__name">Model it</span><span class="ns-aipath__sub">Volunteer, Shift, Signup — two lookups, one rollup</span></span>
<span class="ns-aipath__when">2h</span>
</a>
<a class="ns-aipath__step" href="#0">
<span class="ns-aipath__index">02</span>
<span><span class="ns-aipath__name">Automate the double-booking check</span><span class="ns-aipath__sub">Record-triggered flow, then the same rule in Apex</span></span>
<span class="ns-aipath__when">3h</span>
</a>
<a class="ns-aipath__step" href="#0">
<span class="ns-aipath__index">03</span>
<span><span class="ns-aipath__name">Build the signup screen</span><span class="ns-aipath__sub">One LWC, wire adapter, no imperative Apex</span></span>
<span class="ns-aipath__when">4h</span>
</a>
<a class="ns-aipath__step" href="#0">
<span class="ns-aipath__index">04</span>
<span><span class="ns-aipath__name">Test it honestly</span><span class="ns-aipath__sub">Insert 200 signups, not one</span></span>
<span class="ns-aipath__when">2h</span>
</a>
</div>
<div class="ns-aipath__foot">
<button type="button" class="ns-btn ns-btn--outline ns-btn--sm"><i class="ph ph-bookmark-simple" aria-hidden="true"></i> Save this project</button>
<span class="ns-aipath__meta">talks well in an interview</span>
</div>
</div>Accessibility contract
- Steps are real links with the state on data-state, so “done” is not carried by color alone — the index turns green AND the row reads done
- The save action is a button, not a link: it changes data