NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
A wrapper to easily access IIUM's Course Schedule data.
Last release 6 months ago
04 Apr 2026
Release timing varies
gaps range from 6 weeks to 13 months
Nearly every release is documented
notes for 23 of 23 stable releases
Nothing withdrawn
no release was ever pulled
5 years old
23 releases · first in 2021
One column per quarter.
:bug: Fixes a bug where searching for course will throw an error. Issue #15
:bug: Fixes a bug where totalPage value were being inconsistent. Issue #13
:boom: [BREAKING CHANGES] - Removed deprecated useProxy parameter from fetch() method. The proxy service has been shut down and is no longer supported…
useProxy parameter from fetch() method. The proxy service has been shut down and is no longer supported.:memo: Update README to include up to date kulliyyah list. Related issue #12
:sparkles: Parse time with colon format. Example: 10:30 - 11:30 AM
10:30 - 11:30 AM:bug: Fixes error that occured when subject doesn't have time info. Fixes issue #11
:bug: Fix issue where some compounded days format (eg: TWTH) could not be parse. See #8, #10
:arrow_up: Upgrade package http to 1.1.0 (upgrade major version, might be breaking changes)
1.1.0 (upgrade major version, might be breaking changes):sparkles: The .fetch() method now returns a records of list of Subjects & total pages available. #6
:bug: Fixed another bug related to parsing subject day & time. Refer #1 (Comment)
:bug: Fixed issue where albiruni cannot parse some day format. Refer #1 (Comment)
:arrow_up: Bump intl to ^0.18.0
^0.18.0https://pub.dev/packages/albiruni
MTWTHF and MTWTH. Refer #1.:sparkles: Added support for fetching postgraduate studies. Just set the studyGrade parameter in Albiruni to StudyGrade.pg.
studyGrade parameter in Albiruni to StudyGrade.pg.:wrench: Hide internal classes. eg: TempDayTime
TempDayTime:truck: Migrate proxy server to another provider. This is due to Heroku is planned to end its free plan that were use to host the cors-anywhere proxy
:memo: Update README to provide a clearer documentation.
:bug: Fix sesShort formatting that wrongly return semester value.
sesShort formatting that wrongly return semester value.:pencil2: Rename Albiruni parameter semShort to sesShort.
semShort to sesShort.:boom: BREAKING CHANGES - .read (on DayTime) and .data (on Subject) getter is removed. Added .toString() overrides on both.
.read (on DayTime) and .data (on Subject) getter is removed. Added .toString() overrides on both..toJson() and .fromJson() on both Subject and DayTime class.:boom: BREAKING CHANGES - Kuliyyah parameter now is seperated from the albiruni constructor.
:boom: BREAKING CHANGES - Kuliyyah parameter now is seperated from the albiruni constructor.
var albiruni = Albiruni(kulliyah: "AED", semester: 2, session: "2021/2022");
var subjects = await albiruni.fetch();
var albiruni = Albiruni(semester: 2, session: "2021/2022");
var subjects = await albiruni.fetch("AED");
:see_no_evil: When fetching subject, you now can set `useProxy` to true. This will proxy the connection from albiruni origin site. Useful when dealing
useProxy to true. This will proxy the connection from albiruni origin site. Useful when dealing with CORS error in web application.DayTime class.toAlbiruniFormat(). Useful to properly format a user input. Eg: It will convert nurc2411 to NURC 2411.Exception type
EmptyBodyException. Usually happen when subject is not offered for the kuliyyah/session semester. Eg: You search for MECH 2344 in Semester 3, but course is only available in long semester. Therefore, error is thrown.NoSubjectsException. Usually happens when page is over it total pages.Subject object:
.semShort value. A short version of year session. Eg: 2021/2022 will be 21/22..dayTime now will be return a sorted session according to its day. Ie: Monday should come first and so on.- :tada: Initial release.
Your coding agent can read these notes before it upgrades. Set up the MCP server →