Welcome to the Interactive Prerequisite Flowchart!
- Mermaid
- Currently used for drawing the flowcharts to the webpages. Plans are to migrate from this to either Reaflow or Reagraph.
- Reaflow and/or Reagraph
- Not yet in use, but will be migrated to soon.
- Coursedog Curriculum API
- This project is made by and for UMN students.
- The university is moving its data into Coursedog, making this API a solid choice for our data.
- Graph generation from above data
app/data/graphBuilder.ts
is responsible for building prerequisite graphs that show the prerequisite relationships encoded in the data, nesting all the way back to introductory level courses.
- Generate json data files
app/data/sources.js
is a script for generating all json data files.- Modify
sources.js
to fit your needs. - Use
pnpm sources
from the top-level directory to run the script.
- Access json data files
- Import
Access
fromapp/data/access.js
or open the json files in folderapp/data/Dog
andapp/data/General
directly.
- Import
If you are not part of the main team, first fork and then clone the repository. Then setup and install dependencies as specified in Initialize and Run.
All development should be based on the development
branch, so base any changes off the latest version of development. This project uses ESLint and Prettier. Use pnpm lint
to check for linting errors or setup your editor to display them.
Once ready to be merged in, submit a pull request (specify what issue will be resolved by this PR).
Make sure to download and install the following:
To run the project locally, follow these steps:
- Install dependencies:
pnpm install
- Run the development server:
pnpm dev
To start the project, follow these steps:
- Build the project:
pnpm build
- Start the server:
pnpm start