nextcloud / nextcloud/academy

UX: "in progress" section on the homepage

Open
#41 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 UX backlog. Raised on 2026-06-11 as an "in progress" section.

The level page already distinguishes three states per module — complete (green), started (blue ring), untouched — in LevelCatalogClient. The homepage does not: CatalogClient shows only a per-level percentage, so nothing tells a reader what they have in flight.

Scope

  • A section on the homepage listing modules that are started but not complete, across both tracks and all levels.
  • Sits naturally next to the "continue where you left off" entry point, and shares the same underlying data.

Notes

The data is already there — getProgress().modules holds completedSections and completed per module, and "started but not complete" is exactly the isStarted condition LevelCatalogClient computes today. Reuse it rather than re-deriving.

Done when

The homepage shows in-progress modules with a direct link to each, and the list empties correctly when a module is completed.

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 in CatalogClient and compare its progress display with the state handling in LevelCatalogClient. Trace getProgress().modules, including completedSections, completed, and the existing isStarted condition, then reuse that data for the homepage list. Done means started-but-incomplete modules from both tracks and all levels appear with direct links and disappear after completion.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
frontend
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
72/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.