Problem
Users can create subjects (e.g., Biology, Math) but cannot edit or delete them afterward. This can lead to misspelled, duplicate, or unused subjects remaining permanently in the sidebar.
Proposed Improvement
Backend (server.js)
- Add
PUT /api/subjects/:id to update a subject's name and color.
- Add
DELETE /api/subjects/:id to remove a subject from the database.
Frontend (js/store.js & js/app.js)
- Add
updateSubject(id, data) and deleteSubject(id) methods.
- Add Edit and Delete actions next to each subject in the sidebar.
- Refresh the UI automatically after successful updates.
Why This Is Needed
Users should have full control over their subjects. Without edit and delete functionality, the sidebar can become cluttered with outdated or incorrect entries.
Expected Result
- Users can edit subject names and colors.
- Users can delete subjects they no longer need.
- The sidebar updates instantly without requiring a page refresh.
Alternative Considered
Archiving subjects instead of deleting them was considered, but deletion provides a simpler and more intuitive user experience. Tasks associated with a deleted subject can fall back to a default "General" category.
Additional Context
I would like to work on this issue and implement both the backend API endpoints and the corresponding frontend UI functionality.I would like to contribute to this project through GSSoc 2026
Problem
Users can create subjects (e.g., Biology, Math) but cannot edit or delete them afterward. This can lead to misspelled, duplicate, or unused subjects remaining permanently in the sidebar.
Proposed Improvement
Backend (
server.js)PUT /api/subjects/:idto update a subject's name and color.DELETE /api/subjects/:idto remove a subject from the database.Frontend (
js/store.js&js/app.js)updateSubject(id, data)anddeleteSubject(id)methods.Why This Is Needed
Users should have full control over their subjects. Without edit and delete functionality, the sidebar can become cluttered with outdated or incorrect entries.
Expected Result
Alternative Considered
Archiving subjects instead of deleting them was considered, but deletion provides a simpler and more intuitive user experience. Tasks associated with a deleted subject can fall back to a default "General" category.
Additional Context
I would like to work on this issue and implement both the backend API endpoints and the corresponding frontend UI functionality.I would like to contribute to this project through GSSoc 2026