SemiAutomatic IIUM Schedule Maker!

Assalamualaikum everyone, how are you? So, lets get straight to the point. The purpose of this post is to publicly kinda-announce SemiAutomatic IIUM Schedule Maker. Given that it does not have an official readme page, I cannot confidently say that I’m releasing it to the wild. However, given that prereg is next week, and I don’t feel like making an official readme page any time soon, I’m announcing it now in this post. Also, this post will act like a readme page for now. 

So what is SemiAutomatic IIUM Schedule Maker? Basically it is a single web page application that helps you plan/sort your schedule for the next semester. Given that I miss several subject already, I think this should be very useful. How does it helps you? Well…. it:

  • Show your schedule in a day-to-day table like in Automatic IIUM Schedule Formatter in a preview.
  • When you hover the add/replace section button, it show your section as highlighted in the schedule preview.  
  • When a section collide with another section of another subject, it will show that this section collide with the other section. 
  • It has a generator function in which you select all the subject that you want to enroll, then it will list down all possible section combination. Then you just select one of them, and the changes is applied. 
  • It does NOT automatically register the subject. It is just an aid to help you sort your schedule. Don’t blame me if you did not prereg the subject.

How to use it. 

To use it, first go to which is the schedule maker. The first thing you see is that it ask for the session of the schedule and student type. Just enter the session for the schedule and the student type.



Click submit, and it will enter a loading page where it will fetch the subjects for that particular semester for that particular student type. Then you will see this page. 

SemiAutomatic IIUM Schedule Maker

The page is divided into two part. The left part is the preview of current schedule, with the added section as a table. Click on the big red button to remove the section from current schedule. There is two bottom button, the Schedule Generator and the Schedule Formatter which will be explained later. The right section will show all the subject available.



Keep in mind that the subject list does not necessarily reflect the current subject available in IIUM. The server will attempt to update the list every week. However it may fail to do so. Just now I tried to update it manually. However, it seems that IIUM server is currently under heavy load and does not response to a request. 


The right panel has a list of kuliyyah. Click on it to filter down the subject list to subject on that particular kulyyah unly. Click on the kuliyyah again to cancel the filter. It also have a search input on top which you can use to search for subject. Click on a particular subject to fetch and show list of section for that particular subject. The section list have an add button. Hover on it to show preview on where it is in the schedule. Click on it to add the section. If the section collide with another section, the add button will not show up. 

Schedule Generator


Click on the schedule generator to open the schedule generator page. On the left of the generator is also a subject list. However you cannot select a section over here. You only select subject. Several of them, which is which subject you want to pick. After you select the subject, it will generate all possible section combination of the subjects. In another word, several possible schedules with no section collision.


Beware, the application still need to fetch the section list from the server. So wait a few second for all combination to appear. The top button list down the selected subject and the number of section fetched in the black circle. Pick the schedule that you like using the ‘Use Schedule’ button, and it will go back to previous page.

Schedule Formatter


After you are done with picking section, you can save your schedule through Automatic IIUM Schedule Formatter. Click on the “Schedule Formatter” button to open another page. This page will ask you to input several more information that is needed by the formatter. Just fill it up or leave empty. Click “Save Data”, then it will show notice of saving the data, then another button will appear that say ‘Go to Automatic IIUM Schedule Formatter’. Click on it to open schedule formatter.


That is It

So that is it. It basically does that. I probably should mention about the list limitation I put for performance reason. But its not a big deal. By the way, the whole source code is now available at github. So you can now see the source code. Which means that now, if you have a problem with this thing, or if you want a new feature to be implemented you have two choice. First, the less recommended one, you can email me at, then wait indefinitely. Or a (much) better alternative, fork the code repository, do the modification yourself, then send a pull request. Anyway, that’s it for now. Good bye and Assalamualaikum. 

PS: You can now share your schedule using a link right above the schedule preview. Just share the link with your friend. The link change every time you add or remove section. 

Leave a Reply

Your email address will not be published.