ashaindlin / better-tms

A parser/scraper/API thing for Drexel’s WebTMS

Er wordt niet langer aan gewerkt/actief aan onderhouden.

aan de slag

  1. clone the repo
  2. run npm install to fetch the dependencies
  3. optionally, choose a port to run on with export PORT=1234 (with the port ofyou choice)
  4. start with node app.js

for users: api endpoints

Retourneert een JSON object met term nummers als sleutels en Engelse representaties van term namen als waarden. Voorbeeld:

GET /terms{ "1": "Fall Quarter 13-14", "2": "Winter Quarter 13-14", "3": "Spring Quarter 13-14", ... "13": "Spring Semester 14-15", "14": "Summer Semester 14-15"}

/courses

Retourneert een JSON object van alle cursussen die overeenkomen met de query, geïndexeerd door gehele getallen beginnend bij 0.

De query string naar cursussen moet term bevatten (een index van het dataretareturned door de /terms route) en een van de volgende: name (een string om te zoeken in cursusnamen), number (een nummer om exact te matchen), of crn (eenCRN om exact te matchen).

In de toekomst zult u in staat zijn om te zoeken naar alle klassen aangeboden in een termijn.

voor ontwikkelaars: code structuur

  • app.js: Belangrijkste toegangspunt tot de applicatie. Express routes worden hier gedefinieerd, en de poort waarop moet worden geluisterd voor verzoeken wordt gekozen.
  • form.js: Een leeg zoekformulier, een functie om een aangepaste versie op te halen, en de URL waarnaar het formulier gestuurd moet worden, zijn hier allemaal opgeslagen.
  • package.json: Het gebruikelijke (afhankelijkheden, versienummer, etc).
  • README.md: Dit bestand.
  • courses.js: Het grootste deel van de logica van de toepassing, inclusief de allesbepalendegetCourses functie.
  • terms.js: Haalt de lijst van alle termen op, geïndexeerd op nummer.

Leave a Reply