EViE : EVE Online Skill Training Monitor (Projects)
March 2015 - changes to the EVE API have rendered EViE obsolete; this page is here for historical reference only
EViE was a web-based EVE-Online skill monitor applet for the iPhone / iPod Touch. It runs entirely in the built-in Safari browser, with a little help from a proxy server that I maintained.
In addition, EViE could run on desktop machines using Safari, Firefox, Opera and Internet Explorer 7. When run on a computer browser, EViE ran in a multicolumn mode to make the best use of the window size you give it.
I wrote EViE in order to tutor myself in the basics of writing AJAX (Asynchronous Javascript And XML) web applications, and also to learn more about my iPhone.
I am indebted to Althea Nar'agh, author of Google Eve Monitor, and Blue Wraith, author of the Eve Skill Monitor Dashboard Widget, whose code was extremely helpful as I was figuring out how to access the EVE API. A few traces of their code linger in EViE (it's the well-written stuff!). I have endeavored to comment the Javascript in some detail, so those interested in fooling around with AJAX and iPhone webapps may find a perusal of the source of interest (or, more likely, amusement).
Because of the restrictions on AJAX access to remote webservers, I had to implement a simple (ok, down-right stupid) proxy server to run on one of my Mac OS X servers. It's just smart enough to serve the applet and provide access to the EVE API server, as well as implement simple server-side cookies in order to save your preferences and implement preference-sharing, and most recently, manage and send skill training alerts via email.
EViE features included:
- Automatic loading of character and skill information.
- Large countdown timer.
- Alerts you if the end time is during or near the daily downtime.
- Selectable display of skills (All, Known, Partially-Trained, or None). Known skills are displayed in green, partially-trained in yellow, and unknown in grey.
- Optional display of skill descriptions, training time to next level and skill prerequisites.
- Skill prioritization, so you can keep track of your training plans.
- Interactive keyword search of skill names and descriptions. Wanna find all the skills that might affect your CPU usage? Now it's easy!
- Nice background image (a tiled version of the DEM L 190 Supernova Remnant). This can be disabled if you do not share my taste in nebulae.
- Automatic and manual refresh.
- Mimics the iPhone interface fairly decently.
- Lots of preferences, stored in cookies both on your device and on the proxy server. If you are running EViE both on your iPhone and on a browser on your computer, preference changes you make to one will appear on the other! This is very handy when changing skill training priorities!
- Can display Race / Bloodline / Gender and complete Attribute & Implant information.
- Ability to send alerts via email when your skill training is about to complete!
- Multicolumn mode when you're not running on an iPhone.
- If you add the page to your Home Screen, it'll use your character's image as the icon.
- Optional manual override of implant bonuses.
- Displays the skill training queue, and warns you when you need to add skills.
Links of Interest
In developing EViE, I found a lot of useful information about the EVE API and the iPhone. Here are some links you may find useful:
- Canvas Tutorial (lets you do complex vector graphics in Javascript; I don't need this, but stumbled upon it)
- iUI User Interface Toolkit (an alternative to Apple's sample code, does sideways list scrolling in CSS, etc. Wish I'd found this earlier, it's quite nice.)
- The DATA URI Kitchen (generates DATA URIs for embedding in your pages)
- Groupaware's iPhone User Interface Examples - great place to crib CSS to make things look iPhoney!
Copyright and Legal Information
©2008 Robert Woodhead. Released under GPL – though parts of the CSS are cribbed from Apple's style samples.