Giter VIP home page Giter VIP logo

inf-ytimetab's Introduction

INF-YTimetab is the INF-YT's rewrite of the University of Edinburgh's Timetab timetabling system.

It produces a standard iCal calendar file from a list of your courses, allowing you to import your lecture timetable into almost any Calendar application, including Google Calendar, Outlook, and most probably that slide phone you've had since '06.

Querying the Data

This application is just an interface to all the magic happening on the back-end, so getting timetables programmatically is pretty simple.

Just send a form-encoded POST request to the /timetable endpoint, with the parameters as course_codes-n=<course-code> for each course, where n starts at 0.

You should receive a raw calendar back, with the content-type header set to text/calendar.

For example, using httpie:

>>> http --form POST http://timetab.inf-yt.org.uk/timetable course_codes-0='MATH08058'
# should return something along the lines of:
HTTP/1.1 200 OK
Content-Length: # ...
Content-Type: text/calendar
# [...]

BEGIN:VCALENDAR
VERSION:2.0
BEGIN:VEVENT
DTSTART;TZID=Europe/London:20130114T121000
DTEND;TZID=Europe/London:20130114T130000
RRULE:FREQ=WEEKLY;UNTIL=20130408T131000Z
UID:[email protected]
DESCRIPTION:
LOCATION:No Location Data Available
SUMMARY:Calculus and its Applications
TRANSP:OPAQUE
END:VEVENT
# [...]
END:VCALENDAR

>>> # and so on...

About

INF-YTimetab is one component in the INF-YT's ILWHack-winning project, illustrating the awesome crossovers and mashups that could occur if the University opened up its data sources.

So this is a bit better than an HTML table, non?

inf-ytimetab's People

Contributors

jeffbr13 avatar

Watchers

 avatar James Cloos avatar

inf-ytimetab's Issues

Return an error if no events are found

The ical-generation script should return an error if it can't find any events for the given course-codes.

This means we don't automatically return an empty calendar to the client.

Generate a single file for events

JSON or something. Anything is probably better than a directory of files.

Thu JSON doesn't necessarily have to contain the iCal data, as we should be able to use a tested library to generate it.

As such, can we just get the raw JSON returned by the program on stdout?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.