TakeUrTime is a HTML5 web app that allows APU/APIIT students to check their weekly lecture timetable without consistent Internet connection.
It can be accessed directly from web browser: http://www.anonoz.com/tut
It is also available in Chrome Web Store.
Source codes are available on GitHub, feel free to fork, clone and contribute to the project.
Techs Used in TakeUrTime
- HTML5 + CSS3
- Cache Manifest (allow web sites and apps to run offline)
- LocalStorage (Store data for offline usage + make app faster)
- GZIP compression to deliver data faster
What This Means to You
Apps like this do not require submission to app store, Google Play etc. This can reduce overall cost, development time and it accelerates updates. With HTML5, app can be written once and run at many platforms. TakeUrTime can be run on Google Chrome, FIrefox, Internet Explorer, Safari (Mac + iOS), Android browser etc. Unlike conventional mobile apps, HTML5 Apps like this one do not require downloads. Just go to the site and bookmark will do.
Typical apps are platform specific, you need to pay developers more if you intend to release to multiple platforms, unless you need some platform-specific features, they don’t need to be done that way.
This app can load very fast after you load it for the very first time, thanks to cache manifest and local storage plus some AJAX magic, all the subsequent syncing and data transferring will be postponed until the timetable is rendered.
The app is highly optimized for smartphones on the go too, it preserves a lot of data bandwidth with the help of cache manifest and localstorage plus a bit of GZip compression magic from Apache server. This reduces the timetable syncing failure rate as well as preserving the tiny battery packed inside our mobile devices.
Why is it built?
Our college has terrible web portal for students to check their timetable. Not only students do not get all notifications when the weekly timetable is changed, they require students to scroll through bazillions of intake codes (course code in other terms), this is tedious. Plus their server is really unreliable, during a fire event in December 2012 their server is downed for weeks, and the recovery job is miserable.
The timetable cannot be stored and accessed offline easily without manual intervention either. Therefore I decided to build one for myself, after I went through other students’ works, which never solve any real problems.
The problems I decided to solve with TakeUrTime included, along with the tech of choice:
- The web app must look much better than similar ones – CSS3
- The web app must store data offline – Cache Manifest and Local Storage of HTML5
- It must be FAST, from loading to syncing – AJAX + GZip + Cache + LocalStorage
The improvement is iterative and agile, thanks to its web nature and not bound to any stores, one does not need to explicitly update the app. It updates automatically. Magical right?
Test It Out!
Just use any of your smartphone, tablet or PC, go to http://www.anonoz.com/tut
To see offline capability in action, you just need to disconnect that device from Internet and go to the address again, when other sites throw a Page Not Found error, TakeUrTime will show up as it is in online mode.
To make it behave like iOS app, follow the Add to Home Screen instruction as it appears.
TakeUrTime is no conventional kiddy college students app. It solved and solves real problem: waste of time, server down and offline availability.
During the server down in December 2012, for days students cannot check their timetable, thanks to TakeUrTime (and other apps through its API), they can check their timetable without a hitch.
TakeUrTime is also the only timetable app for the college that has its own cache database (in case the web portal server goes down like Dec ’12), API (for other Apps like ShowTime on Android to access the cache) and runs across many platforms. No other APU timetable (possibly all other Malaysian universities) can come close to this amount of advantages.
Want an App like this for your business?
Contact me for more info! Tell me what you want for your HTML5 App and I will give you suggestions and if you are happy enough, I can develop for you!