Skip to content

Visualize course schedule for Fulbright students

License

Notifications You must be signed in to change notification settings

tnlong311/oneschedule

 
 

Repository files navigation

OneSchedule

[URGENT] We are actively looking for a developer from Fulbright to maintain the website as our team is graduating. Email [email protected] if you are interested!

OneSchedule is a course-schedule visualizer for Fulbright Univesrity Vietnam. Its main features are:

  • Visualizing course schedules (with color theme)
  • Presenting course offerings (with filters and table/gallery views)

Our goal is to reduce time spent for course selection at the beginning of each semester to 30 minutes per student.

Getting started

Install NodeJS and Yarn, then run the following command to install all dependencies:

yarn

Then, host the app in your machine by running:

yarn start

Technical design

We use React (JavaScript), Redux and Bootstrap 5. There is no backend and offerings data is stored directly in the browsers.

Schedule Update Guide

Before the registration period of every semester, we regularly update the schedule data on our website. This is the core maintenance activity keeping the app alive.

Prerequisite:

Follow the steps:

  1. Srap the schedule using fuv-scrapper. It usually takes 30 minutes. You will get a file with name like 2022-2023 Spring 2023 Term.json.
  2. Make sure the schedule file is correct: no missing schedules, manual courses -- like PE -- were added, etc. VSCode's Format Document command may help format the JSON.
  3. Copy the schedule file from fuv-scrapper repo into src/data here.
  4. Update the timestamp in src/utils/config.ts (named config.last_updated).
  5. Host the app locally to make sure the new schedule and timestamp are correctly shown.
  6. Add, commit, and push to GitHub. The code will be automtically deployed, which can be observed in Github Actions.
  7. A few minutes after the deployment, make sure that the official website is updated.

About

Visualize course schedule for Fulbright students

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 60.1%
  • TypeScript 33.0%
  • SCSS 5.2%
  • HTML 1.7%