Planning tool · 7 min read

Give course learners a clear next lesson

Try a fictional five-lesson course, explain honest required progress and find the next available lesson. Includes a learner-path aid, downloadable state matrix and course worksheet.

Part 2 of 5 · Plan your app's workflow · Optional workflow recipe

Plan a course learner path in Overskill.

Overskill turns your written instructions into an app you can review and refine. Use this worked example to decide what your version should do before you build it.

You'll leave with: A course graph, completion rule and return journey to build and test in Overskill. Replace the sample rules with your own, then continue to your build brief.

New to Overskill? See how it works · All five parts

On this page

A learner returns to your course and sees “50% complete.” That number does not tell them which lesson to open, whether another lesson is waiting for a prerequisite, or whether the optional glossary counts toward finishing.

Define those answers before you build the course app. A useful resume card names a lesson and explains why it is next. The curriculum still shows the other available choices.

This is Part 2 of the Overskill build journey: plan your app's workflow. Use the fictional course below to write a completion rule and a return path, then carry those decisions into your Overskill brief. The example is a planning exercise, not a record of real learners or a tested course platform.

Download the course map and Download the worked and blank course worksheet.

Give completion, availability and resume different jobs

For this example, a learner completes a lesson by explicitly marking it complete while it is available. Opening a page or playing a video does not count. That rule records participation; it does not establish whether someone has mastered the material.

Availability answers a different question: are the lesson's prerequisites complete? An incomplete lesson with unmet prerequisites stays locked and names what is missing. A completed lesson keeps its completion label.

Resume is one useful suggestion among the available required lessons. Here, choose the first incomplete, available required lesson in the order L1, L2, L3, L4. Keep the other available lessons visible. Do not mistake the last page opened for the next useful step.

These are choices for this small course, not rules every course must follow. A reference library may need no prerequisites. A graded program may need evidence beyond a learner's completion click.

Work through a five-lesson course

The fictional “Product photography basics” course has four required lessons and one optional glossary. All lessons are published, and both example learners already have access. Membership access windows remain a separate decision.

Scroll horizontally to compare all columns.

Lesson Counts toward required progress? Needed first
L1 — Prepare the scene Yes Nothing
L2 — Control the light Yes L1
L3 — Frame a product Yes L1
L4 — Make the final shot Yes L2 and L3
O — Explore the glossary No L1

After L1, the learner can choose L2, L3 or O. This is a branching course, even though the resume suggestion uses a fixed order. L4 needs both branches.

Learner A has completed L1, L2 and O. The app should say 2 of 4 required lessons complete — 50% and show the glossary as complete separately. Counting all three completions against five cards would produce 60%, which answers a different question.

The resume card should name L3 — Frame a product. L4 is still locked because L3 is missing. If the learner returns to the glossary, opening it should not move the required resume target away from L3.

Learner B has completed only L1. B should see 1 of 4 — 25%, with L2 recommended and L3 and O also available. A's work must not change B's records.

Scroll horizontally to compare all columns.

Checkpoint A's completed lessons Required progress Suggested required lesson
Initial L1, L2, O 2 of 4 — 50% L3
A completes L3 L1, L2, L3, O 3 of 4 — 75% L4
A completes L4 L1, L2, L3, L4, O 4 of 4 — 100% None; required path complete

A learner who completes L1–L4 without opening O has also finished the required path. Offer the glossary as optional material; do not make the course look unfinished to encourage another click.

Try the learner path

Change the two fictional records below. The local example resets when you leave or reload; it does not save a real learner’s progress. Download or copy the selected learner’s current five-row state matrix before leaving.

Try the learner path

Interactive controls require JavaScript. The complete course map and worked answers remain below.

Choose the example learner

Switching learners keeps each learner's local changes until you leave or reload this page.

Learner A: 2/4 required; optional complete

Learner B: 1/4 required; optional incomplete

Learner A — current example record

2 of 4 required lessons complete — 50%

Optional glossary: complete. Excluded from the required total.

Next required lesson: L3 — Frame a product. L4 still needs L3.

Static worked answer shown. No action has been taken.

Marking a lesson complete is explicit. Opening a lesson is not completion. Try a locked completion to see why it is refused; repeat a completed lesson to see a no-op.

    Corrections and unavailable data

    Undo dependent lessons before their prerequisite. A refused correction preserves all completions.

    Check a bad candidate without replacing the current record

    No candidate checked.

    Rejecting an incoming candidate keeps the current record. Its existing result is shown above; no trusted percentage or resume suggestion is inferred from the bad candidate.

    Keep the selected learner's state matrix

    Five rows describe the current fictional record, not a saved account. Unknown progress disables this export; the other learner remains separate. Lesson titles and IDs retain their fixture values.

    The full course map and worked answers

    L1 unlocks L2, L3 and O. L2 and L3 unlock L4. O unlocks nothing. Resume chooses the first incomplete available required lesson in L1, L2, L3, L4 order; other available choices remain visible.

    Fictional dependency map: both branches meet at L4
    1. L1Start: Prepare the scene
    2. L2 + L3 + OAfter L1, choose L2 or L3; O is optional.
    3. L2 AND L3 → L4Complete both required branches before L4. O unlocks nothing.
    Required denominator: 4. Optional work is separate.
    ID and lessonCounts?Needed first
    L1 — Prepare the sceneRequiredNone
    L2 — Control the lightRequiredL1
    L3 — Frame a productRequiredL1
    L4 — Make the final shotRequiredL2 and L3
    O — Explore the glossaryOptionalL1
    1. A begins with L1, L2 and O: 2/4 = 50%; next L3. L4 is locked because L3 is missing. Three of five cards is 60%, but that includes optional work.
    2. A completes L3: 3/4 = 75%, next L4. Completing L4 gives 100% and no required next lesson. B stays at L1 only: 25%, next L2, with L3 and O also available.
    3. L1–L4 complete without O is still 100%. The optional glossary remains available.
    4. Undoing L1 after all five completions is refused: L2, L3, L4 and O depend on it. Explicit child-first correction can follow L4, L2, L3, O, L1. Reset clears only the selected learner after confirmation.
    5. A known empty record is 0%, next L1. Unavailable data is unknown. L2 without L1, duplicate IDs and unknown lesson IDs are rejected without guessing.
    What this example does not establish

    These are fictional expected rules, not verified Syllabus behavior, video completion, certification, persistence or access control. The course brief below separates authorized curriculum reading, learner-own progress and creator-only curriculum editing. Test those permissions in the app you build; the local example proves none of them.

    A small tool for a better first prompt

    Make your app brief.

    Name the person, the job, and the information. Leave with a prompt that includes permissions and a definition of done.

    Write and copy your brief without an account. Start build saves it in Overskill and continues through sign-in if needed. Your account's usual access and credit requirements apply when building. Avoid adding private information.

    Choose a template

    Review this starting brief, then continue in Overskill.

    Keep a correction from rewriting the learner's story

    Suppose a saved record says L2 is complete but L1 is not. Under this course's declared rules, that is inconsistent. Show the missing prerequisite and resolve the record before displaying a trusted percentage or resume suggestion. Do not silently add L1 to make the number look reasonable.

    Missing data is different again. A known, empty completion set means 0 of 4, with L1 next. A failed load or absent learner record does not prove that the learner has done nothing. Treat it as unavailable progress until you know.

    Corrections also need a policy. After A completes the course, unchecking L1 would leave completed lessons that depend on it. In this example, refuse that correction and name L2, L3, L4 and O. Let the learner correct dependent lessons first, or explicitly reset their own course record. Do not erase the dependent completions without telling them.

    Marking an already completed lesson complete again changes nothing. Trying to complete a locked lesson also leaves the record unchanged, with an explanation of what must be completed first.

    Check the return journey, not just the progress bar

    Keep stable course, curriculum revision, learner and lesson IDs. Recalculate progress and the resume target from that learner's saved completion records. A title or URL alone is a weak identity: titles can change, and a recently opened page can be optional.

    Use the worksheet's checkpoints as expected results. In the app you build, complete L1 and L2, leave, return as the same learner, and check that L3 is still next. Then use a separate authorized test learner and confirm their progress is different. Record the actual result before claiming that saving or account isolation works.

    Also try the wrong state, a locked completion and a prerequisite correction. Test interruptions and verify private-record access cover the broader recovery and access checks. This worksheet does not prove them.

    Bring the course rules into Overskill

    The Syllabus catalog page describes completion marks, lesson unlocking and a resume card. Its public landing page, inspected November 5, 2026, describes lessons unlocking sequentially. This example branches after L1, so its rules are different. Syllabus remains a candidate to inspect. This exercise has not tested its lesson behavior, storage or permissions, and its actual rules may differ from the fictional course.

    Before remixing a starter, inspect the learner journey and compare it with your worksheet. If your current course tool already returns learners to the right lesson with clear progress, keep it; a custom app needs a useful reason to exist.

    Prepare a course-specific brief from the worksheet. Use course learners and the creator as the audience, with “return to the next available required lesson with honest progress” as the outcome. Name courses, curriculum revisions, lessons, prerequisites, learner completion records and explicit corrections as the information to save.

    The permissions need three separate rules: authorized learners may read the published curriculum for their course; each learner may read and change only their own progress; only that course's authorized creator may edit its curriculum. Sharing a course does not make another learner's progress shared. These rules need server enforcement, including direct requests, search results and exports.

    The general workspace preset does not express those mixed roles. Use the course-specific brief, which keeps the three access rules separate as you edit the audience, outcome and records. Review the complete prompt before starting; the local example is not evidence that a generated app enforces these permissions.

    Before inviting learners, test that A cannot read, find, export or change B's progress, that a learner cannot edit the curriculum, and that an unauthorized learner cannot retrieve the course. A's reset must leave B unchanged. These are tests to perform, not evidence that permissions already work.

    Review the course-specific brief and edit its input fields, then choose Start build. Copy brief is secondary. The handoff carries your brief. Supply your curriculum or worksheet separately. Building uses your account's normal access and credits. Verify saving, access and the return journey in the resulting app.

    Keep building

    Prepare your course rules.

    Edit the course brief and review its learner and creator permissions. Supply your curriculum separately; the form imports no records.

    Make the course brief →