An Haskell app to download calendar data from EVE Online and upload it to Google Calendar, but also leave room for expansion if I ever want to leverage more of Eve Online's API. The src folder contains the EVE Online library that fetches from EVE Online and the app folder contains the application that will pull data and send it to Google Calendar.
To build, you need to install stack. You may have to do some setup with stack before building.
- Fork and clone
- Enter this in a console:
stack build
stack exec evecalendar
Those commands will update stack and download any missing libraries. A fresh build can take quite more than 10 minutes. The app included will get the key and verification code from your environment variables. You need to add your EVE Online key id in your environment variables as KEY_ID and the verification code as V_CODE.
The calendar data from EVE Online is fetched and the XML is parsed into a Haskell data format. The cache timer is included in the Haskell data. It is up to the application to handle and cache the data. The app included does not currently cache the data.
The library used to fetch EVE Online's data is still experimental. It is currently not automatically tested. It also only contains the functions to fetch from the Characters endpoint and the UpcomingCalendarEvents endpoint of EVE's XML API. It would be relatively easy to expand the library to contain more endpoints and I may do so in the future.