mcgill.wtf is a fast full-text search of McGill's entire course catalog with a server implemented in Rust and an intuitive front-end built using React.
In order the query the server for courses, you need to specify a data-source,
which can be downloaded via the download
subcommand provided by the server
binary:
$ RUST_LOG=info cargo run -- download --starting-page <page>
In order to run the server locally you need Docker
and Cargo
installed on your machine. By default the server listens for requests on port
7500
and can be spawned by running the serve
script in the /bin
directory
located in the project root:
$ RUST_LOG=info ./bin/serve -l -d <datasource>
The front-end is now able to issue requests to the server, launch it by invoking the following commands:
$ npm run install
$ npm run dev
This project was heavily inspired by Eric Zhang's implementation of classes.wtf, and was also built for some of the same reasons.