openedx / openedx/frontend-app-learner-dashboard

[Documentation] Add comments explaining currentList.js and redux files

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

Nobody has claimed this yet.

documentation help wanted
Dominant language
JavaScript
Stars
14
Forks
208
Avg merge
59m
Merged PRs (30d)
2

Description

The currentList.js file is what maintains the state for the visible list of courses that is eventually used by the CourseList component to render a list of CourseCards. It would behoove us to understand this file a little better. Currently, it doesn’t have any comments explaining what it does so consider adding some to explain the core functions.

There are also a handful of redux files that add layers of abstraction that may be confusing to new developers on the project.

Things to document for redux:

Selectors and learning how to differentiate them, for example, what is the difference between appSelectors, simpleSelectors, and courseCard selectors.

What this app.js file is doing may also be helpful

Explain the requests slice and how there are multiple slices for the store

In terms of where these comments should exist, it'd probably be the most helpful to either include them in the files themselves and/or the README.

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 src/data/redux/app/selectors/currentList.js and compare its selectors with appSelectors.js, simpleSelectors.js, and courseCard.js. Read src/data/redux/hooks/app.js and the src/data/redux/requests slice, then document the selector distinctions, app hook, and store slices in the relevant files or README. Done means a new developer can understand these abstractions and how CourseList uses the visible course list.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript, redux
Domain
documentation, frontend
Issue type
Documentation
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.