Content gap: 87 modules declared, 17 written
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 2
- Forks
- 1
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 7
Description
Tracking issue for the gap between what content/course-manifest.json declares and what is written.
87 modules declared, 17 files written. The manifest is the plan, not a promise — this gap is intentional and known. This issue exists so it is measurable rather than vague.
| Written | Declared | |
|---|---|---|
| PHP beginner | 8 | 8 ✅ |
| ExApp beginner | 8 | 8 ✅ |
| PHP intermediate / advanced | — | 14 / 11 |
| ExApp intermediate / advanced | — | 14 / 11 |
| Standalone (no prerequisites) | 1 | 18 |
| Shared foundations + capstone | — | 2 + 1 |
Children
- #10 — 14 PHP intermediate modules
- #11 — 11 PHP advanced modules
- #12 — 14 ExApp intermediate modules
- #13 — 11 ExApp advanced modules
- #14 — Shared federation capstone lab
- #15 — 18 standalone modules (blocked on routing)
Read before starting any of these
The beginner tracks are complete and beta-tested. Do not treat apparent omissions there as bugs — several were deliberate. Initial State, @nextcloud/dialogs and IAppConfig were all consciously deferred to intermediate on 2026-06-11, because each spans two layers at once and only makes sense once both are comfortable. Beginner uses a plain axios GET on page load instead, which a learner can see in the network tab.
The two tracks mirror each other by design. The ExApp track was explicitly restructured to match PHP module for module. Keep that when adding modules — a change to one track's structure implies the same change to the other.
## headings are structural. Each becomes a navigable, individually tracked section in the player, and re-splitting them changes existing readers' stored progress. See the README.
Older tutorial content is a cross-check, not a source. course/files/tutorials/ (in Anna's working copy) holds the earlier tutorial library. It all uses docker-compose (v1, EOL), and its ExApp tutorial targets NC32 with a known issue on 33+ and builds a different example app entirely. Useful for spotting gaps; not for copying.
Full recovered rationale: course-development/2026-06-11-course-chat-notes.md.
Suggested order
Intermediate before advanced, and PHP slightly ahead of ExApp so the mirror has something to mirror. #15 needs its routing decision before any of its 18 modules can be written, so that decision is worth making early even if the content waits.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with content/course-manifest.json, the child issues #10–#15, the README, and course-development/2026-06-11-course-chat-notes.md. Compare the declared modules with the written content and confirm the routing decision for #15 before taking a child issue. Done means the tracked gap and child issues reflect the intended module set while preserving mirrored tracks and ## heading structure.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- php
- Domain
- content, documentation
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100