nextcloud / nextcloud/academy

Write the 14 PHP intermediate modules

Open
#10 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
2
Forks
1
Avg merge
1d 2h
Merged PRs (30d)
7

Description

Part of the content gap. The manifest declares 14 PHP intermediate modules (php-i-01..php-i-14); none are written.

Files go in content/php/intermediate/<index>.md, one per module, matching the manifest order. See the README for the markdown conventions — in particular, every ## heading becomes a separately tracked section in the player, so section splits are structural.

Already decided for this level

Three things were deliberately deferred from beginner to intermediate on 2026-06-11, because each spans two layers at once and only makes sense once both are familiar:

  • Initial State (IInitialState / loadState()) → php-i-07 (REST API Design), framed as "how to avoid an API roundtrip on page load". Tracked separately.
  • @nextcloud/dialogs (showSuccess/showError) → not yet placed in a module. Tracked separately.
  • Admin settings (IAppConfig, distinct from per-user IConfig) → php-i-11. Tracked separately.

Source material

course/files/tutorials/ holds the older tutorial library, useful as a cross-check rather than as content. Everything in it uses docker-compose (v1, EOL) and needs docker compose.

Done when

All 14 modules have content files and appear correctly in the player.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the manifest and README to confirm the 14-module order and markdown conventions, then review the older material in course/files/tutorials/ as a cross-check, updating docker-compose usage to docker compose. Create php-i-01 through php-i-14 under content/php/intermediate/, preserving structural ## sections and the explicitly assigned topics. Done means all 14 files exist and appear correctly in the player.

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
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.