-
Notifications
You must be signed in to change notification settings - Fork 7
Description
π§© Description
Currently, in our Subject Management UI, we can:
β Add a subject
ποΈ Edit subject name
β Delete subject
Now, we want to extend this functionality to make subject creation more meaningful by allowing users to configure the class schedule, optional timing, and desired attendance percentage when adding a subject.
β
What Needs to Be Done
When adding a new subject, include these fields:
ποΈ Class Days β Allow selecting multiple days like Mon, Tue, Wed...
Use checkboxes or a multi-select dropdown
Save this as part of the subject data
β° Class Timing (Optional) β Allow entering start and end time (e.g., 10:30 AM - 11:30 AM)
Make it optional
Simple time input is fine for now
π― Required Attendance % (Optional) β e.g., user sets target as 75%
Use a number input (0β100)
Store this value for future attendance tracking logic
π» Tech Stack & Guidelines
Use Tailwind CSS and keep UI consistent with the dark theme and gradient used in the landing page.
You may use Framer Motion to animate modal/form if needed.
Keep the UI responsive.
Store the subject data using useState (and optionally localStorage for temp persistence).
π Suggested File Changes
Modify the existing form in /pages/subjects.tsx or /components/AddSubjectForm.tsx
You may update the /components/SubjectCard.tsx to display the added info (like days/timing) later, but it's optional for this issue
π₯ Bonus (Not Required Now)
If you want to go the extra mile:
Preview the selected days as tags/chips
Validate that attendance % is a number between 0β100
π€ Contribution Notes
Feel free to ask questions if anything is unclear. Once you comment here, weβll assign the issue to you. Please ensure your PR:
Has clean UI
Follows the existing structure
Is properly responsive