ul-timetable
v0.2.0
Published
Webscraper for the University of Limerick's timetable (www.timetable.ul.ie).
Downloads
165
Maintainers
Readme
ul-timetable
A webscraper for the University of Limerick's timetable, provided as an npm package.
Install
npm install ul-timetable --save
Use
ES6 (import
/export
)
import { studentTimetable } from 'ul-timetable';
const myTimetable = await studentTimetable('12345678');
console.log(myTimetable);
CommonJS (require()
)
const studentTimetable = require('ul-timetable').studentTimetable;
const myTimetable = await studentTimetable('12345678');
console.log(myTimetable);
API
See types.ts for more details on the return types of each function.
courseTimetable(id: string, year: number): Promise<ICourseTimetable>
Fetches a course timetable for a given year from www.timetable.ul.ie/course.asp.
Returns a Promise
.
moduleTimetable(id: string): Promise<IModuleTimetable>
Fetches a module timetable from www.timetable.ul.ie/tt_mod.asp.
Returns a Promise
.
roomTimetable(id: string): Promise<IRoomTimetable>
Fetches a room timetable from www.timetable.ul.ie/tt_room.asp.
Returns a Promise
.
studentTimetable(id: string): Promise<IStudentTimetable>
Fetches a student timetable from www.timetable.ul.ie/tt1.asp.
Returns a Promise
.
moduleExamTimetable(id: string): Promise<IModuleExamTimetable>
Fetches a module exam timetable from www.timetable.ul.ie/tt_exam.asp.
Returns a Promise
.
studentExamTimetable(id: string): Promise<IStudentExamTimetable>
Fetches a student exam timetable from www.timetable.ul.ie/examstudent.asp.
Returns a Promise
.
moduleDetails(id: string): Promise<IModuleDetails>
Fetches details on a module from www.timetable.ul.ie/tt_moduledetails.asp.
Returns a Promise
.
roomDetails(id: string): Promise<IRoomDetails>
Fetches details on a room from www.timetable.ul.ie/Classrooms_Web_Info.xls.
Returns a Promise
.
weekDates(): Promise<IWeekDate[]>
Fetches week numbers and dates from www.timetable.ul.ie/weeks.htm.
Returns a Promise
.
Scripts
clean
- remove coverage data, Jest cache and transpiled filesbuild
- transpile TypeScript to ES6watch
- interactive watch mode to automatically transpile source fileslint
- lint source files and teststest
- run teststest:watch
- interactive watch mode to automatically re-run tests
Development
This project uses the Conventional Commits standard for Git commit messages.
Commits are linted using a hook for commitlint
, and are also validated by the Travis CI script.
License
Licensed under the GNU General Public License v3.0. See the LICENSE file for details.