A web application for browsing and exploring courses available at Pleasanton Unified School District with commenting functionality.
CourseView is a React-based web application that allows users to browse through course offerings, filter by subject and level, search by name, view detailed information about each course, and leave comments.
- Browse all available courses with a clean, card-based interface
- Filter courses by subject and level
- Search courses by name
- View detailed information about each course
- Leave and read comments on courses
- Responsive design for all device sizes
The project is divided into two main parts:
client/: React frontend applicationserver/: Node.js/Express backend API
- Node.js (v14 or higher)
- npm (v6 or higher)
-
Clone the repository:
git clone https://github.com/minnykim06/CourseView.git cd CourseView -
Install dependencies for both client and server:
# Install client dependencies cd client npm install # Install server dependencies cd ../server npm install
You'll need to run both the server and client in separate terminal windows.
-
Start the server:
cd server npm startThe server will run on http://localhost:5001
-
Start the client:
cd client npm startThe client will run on http://localhost:3000
-
Open your browser and navigate to http://localhost:3000 to view the application.
- Browse Courses: The home page displays all available courses.
- Filter Courses: Use the dropdown menus to filter by subject and level.
- Search: Type in the search box to find courses by name.
- View Details: Click "Learn more" on any course card to see detailed information.
- Leave Comments: On the course detail page, enter your name and comment to share your experience.
GET /api/courses: Returns a list of all coursesGET /api/courses/:id: Returns details for a specific courseGET /api/courses/:id/comments: Returns comments for a specific coursePOST /api/courses/:id/comments: Creates a new comment for a specific course