https://github.com/0xsafkat20/course-registration_web
Course Registration Website
https://github.com/0xsafkat20/course-registration_web
css3 html5 json reactjs tailwindcss vite
Last synced: 3 months ago
JSON representation
Course Registration Website
- Host: GitHub
- URL: https://github.com/0xsafkat20/course-registration_web
- Owner: 0xSafkat20
- Created: 2023-11-17T14:17:28.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-11-17T14:25:57.000Z (over 2 years ago)
- Last Synced: 2025-02-02T08:13:20.019Z (over 1 year ago)
- Topics: css3, html5, json, reactjs, tailwindcss, vite
- Language: JavaScript
- Homepage: https://course-registration-sm.surge.sh/
- Size: 43.9 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# **Course Registration**
## **Project Features:**
- Display website courses with details.
- Show selected course names.
- Present total credit hours and prices of chosen courses.
- Prevent duplicate selections.
- Enforce a 20-hour credit limit.
- Implements a responsive design.
---
## **State Management:**
In this assignment project, state management is achieved using React's `useState` and `useEffect` hooks. The project tracks various pieces of information mentioned below:
- `courses`: Contains course details. Fetched during website initialization using `useEffect`.
Below state updates occur when user clicks the 'Select' button, triggering the `handleSelect` function to modify these values.
- `totalCredits`: Keeps track of the total credit hours of selected courses.
- `remainingCredits`: Calculates and displays the remaining credit hours within the 20-hour limit.
- `totalPrice`: Tracks the total cost of selected courses.
- `courseNames`: Stores the names of selected courses.
---
### Visit the Live Webpage Here: [Course Registration](course-registration-sm.surge.sh)