degree requirements: my programs dashboard page
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 5/5
- Estimated time
- Over a week
- Newbie friendliness
- 25/100
- Issue type
- Feature
- Clarity
- Mostly clear
- Activity status
- Active
- Domain
- backend, full-stack
Research direction
Read #632 and #529 first, then review CLAUDE.md under “Dashboard controllers” and spec/requests/dashboard/authorization_spec.rb. Map the existing dashboard routes, program data, and LeopardWeb sync before estimating the work. Done means the page supports the listed current, planned, and ended programs, displays planned terms, and every action is authorized with any :id route included in the spec map.
Written by the indexing model from the issue text.
Description
Part of #632. Depends on #529.
A dashboard page where a student sees and corrects their programs, and plans ahead.
Tasks
- A "My programs" page: majors, minors, concentrations, and certificates, each with its catalog year, plan (for example the three-year plan), start term, and status.
- The student can correct a value that LeopardWeb sent, or confirm a plan that has
source: assumed. - The plan of each major shown against real terms: "Junior year, fall" becomes "Fall 2027", from the start term and the plan.
- "What if" programs: the student adds a planned minor or a 3+1 or 4+1 pathway and sees the courses it adds. LeopardWeb sync never changes planned rows.
- The history of ended programs (changes of major, completed degrees).
Rules
- Each action calls
authorize(seeCLAUDE.md, "Dashboard controllers"). - Add each route with an
:idto theidsmap inspec/requests/dashboard/authorization_spec.rb. - The page is a planning help, not an official audit. The official audit is Stellic.
- Dominant language
- Ruby
- Stars
- 4
- Forks
- 0
- Avg merge
- 6h 36m
- Merged PRs (30d)
- 181
Getting set up
- Ships a Dockerfile or Docker Compose file
- No pull request template
- No contributing 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.
More from WITCodingClub/calendar-backend
-
Difficulty 1/5 Under an hour Newbie friendliness 67/100
WITCodingClub/calendar-backend#908 ·
Maintainers usually reply within 1 day
-
performance v/6
Difficulty 2/5 1-3 hours Newbie friendliness 67/100
WITCodingClub/calendar-backend#687 ·
Maintainers usually reply within 1 day
-
performance v/6
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
WITCodingClub/calendar-backend#678 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 4/5 3-5 days Newbie friendliness 48/100
WITCodingClub/calendar-backend#868 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 35/100
WITCodingClub/calendar-backend#865 ·
Maintainers usually reply within 1 day
All issues in WITCodingClub/calendar-backend
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
Maintainers usually reply within 1 day
-
[Bug] Time search attributes lose sub-second precision, and raise NoMethodError without `require 'time'`Possibly taken @RaphaelFakhri claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
temporalio/sdk-ruby#653 ·
Maintainers usually reply within 1 day
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 67/100
bridgetownrb/bridgetown#1134 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
swombat/souls-house#795 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 67/100