hi, im zach!

Development

This project features an interactive interface using interface components and several internal data states. Using React, this list-based interface expands on Courses @ Brown, which allows students at Brown University to browse course offerings.

Design choices

Displaying the list of courses

Each course is displayed using a card component, which takes in React props to display the proper course information and image.

The data for each course is currently pulled from a local file, but could support reading any JSON file, including one pulled from the internet or an API.

Sorting and Filtering

The user can filter by department and course level and can sort by a variety of criteria, some of which is gathered from The Critical Review.

In order to keep track of all of the conditions that the user wants to filter and sort by, a state is used that contains a list of all the currently applied filters and sort.

By default, no boxes are checked, and the list can be reset using the "All" filters and sorting by course number, which is the defualt.

Website implementation

Check out the finalized site.