Social Media
More About This Website

My name is Wayne Robinson and I'm a web applications developer from Queensland, Australia. In August 2005 I discovered Ruby on Rails and instantly fell in love. From that point forward, Ruby on Rails has been my language of choice for new projects however, I still use PHP to maintain some legacy applications.

Categories
Login
« Sport - what are we doing to our children? | Main | Bacon is still spam and still very interruptive »
Wednesday
Dec222010

Xeroizer ruby library

Given that Xero (cue the hyperbole about how Xero is great) has just updated their development API and they are planning to do this much more in the future, I have taken this opportunity to create my own ruby-based library for it.

This library builds off the awesome work done by Tim Connor for the first & second API releases.

My version changes things up a bit by:

  • adding Partner-application support
  • making data-access more ActiveRecord-like (although definitely not feature-complete) 
  • simplifying the definition (and redefinition as Xero continues to add to their API) of models to make keeping them up-to-date and testable easier.

I also plan on adding some features to the querying engine to make it easier to filter results whilst staying within the ruby language (and not having to drop into C#).

If you want to get started, check out the README or if you want to dive right into the code, head over to https://github.com/waynerobinson/xeroizer and clone a copy.

Note: This is an alpha-level version of the API. Feel free to increase functionality and test coverage and send me a GitHub pull-request for integration.

PrintView Printer Friendly Version

EmailEmail Article to Friend

Reader Comments (2)

Hey Wayne,

Tim's generally pretty receptive to commit things back to XeroGateway. I don't see any reason for us to fragment the ecosystem here.

I'm curious as to how you got the Partner Apps working - I've had endless SSL issues (hanging from my Macbook) - which version of openssl have you used?

Nik
December 22, 2010 | Unregistered CommenterNik Wakelin
Yes, Tim is receptive to API changes, in fact I have added a large number of commits myself to xero_gateway however, I wasn't happy with the public-facing data access API and I could forsee no way of making changes to it without deprecating the entire thing and breaking previous apps.

Xeroizer's data model is much cleaner, allows for ActiveRecord like CRU(no D in Xero) and allows simple definition of validations and associations.

As for OpenSSL, if you follow the instructions for a PartnerApplication in the README and are using OpenSSL 0.9.8 or above (the version I am using) everything should be fine on the MacBook. You do need to unpackage the certificates as mentioned in there though. I've had to do some dirty(ish) patching of OAuth to get access token renewal working though, although this should be invisible to the library user.
December 22, 2010 | Registered CommenterWayne Robinson

PostPost a New Comment

Enter your information below to add a new comment.

My response is on my own website »
Author Email (optional):
Author URL (optional):
Post:
 
All HTML will be escaped. Hyperlinks will be created for URLs automatically.