Skip to content


Subversion checkout URL

You can clone with
Download ZIP

haxTuple 2014

nedlilly edited this page · 1 revision

Overview and Goals

As an open-source company, we've long known that our community is our secret weapon. haxTuple is an event that helps focus and rally this community towards the shared goal of improving our product. Plus there are prizes. The previous iterations of haxTuple were as a bug-fixing derby, with top prize going to the top bugfixer. This year, we're adding a wildcard, to help introduce our new technology to some of our community members who might not have yet gotten their hands dirty with it.

Terms of the competition

As before, the first-prize winner will be determined by an objective metric: one point per bug fixed, on either the desktop or web client. But here's this year's wildcard: you double your score if you write a practical web-mobile extension, or a REST client, onto our new framework.

Don't be daunted if you haven't worked in our new technology stack before! Our team will be focused throughout the competition on answering questions and providing guidance. This really is your best opportunity to get your feet wet with our new technology.

The prizes

First prize is a pair of Google Glass, and second prize is a Motorola TC55, the ruggedized, warehouse-ready barcode-scanner-enabled Android device that's become the main vehicle for our mobile inventory solution.

There'll also be plenty of geeky prizes for those who don't win the top honors, and haxTuple T-shirts for everyone who fixes at least three bugs. (You do need to fix at least ten to qualify for the top two prizes - and no, xTuple employees aren't eligible!) The winner of our javascript extension / REST client competition will get a free ticket to meet the legendary Steve Wozniak at xTupleCon in October.

Events and Timetable

  • August 6: We kickoff the event with a webinar
  • August 9-10: Local developers can crash our corporate HQ for a weekend-long in-person hackathon
  • October 16: Winners are presented at the xTupleCon14 Community Awards dinner with special guests City of Norfolk Mayor Paul Fraim and Karen Jackson, Commonwealth of Virginia Secretary of Technology.


The fastest way to set up a development environment is to follow our Vagrant setup instructions. This vagrant environment is powerful enough to change the database, the web client, and scripting/metasql/etc. If you'd like to work on the C++ code, you'll need our more powerful (but slower to set up!) Qt-enabled vagrant instructions.

If you want to write a REST client, then you should read through our REST documentation. You'll need to use OAUTH2. We've provided sample implementations of OAUTH2 clients for our REST server in many languages.

If you want to write an extension onto our webapp, our ice cream tutorial is the best place to get started. An example of an extension that enhances the webapp with third-party javascript projects and html code can be found here.

We also recommend our short tutorial videos for anyone approaching development in our webapp for the first time.

Where to start

If you'd like to try your hand fixing some bugs, you can go to our bug tracker. The project INCDT - xTuple ERP represents our desktop app, and INCDT - Mobile Client represents our web app. Searching on Category = Bugs and Status = Confirmed is a good place to start.

To grab a bug, drill down into it, open the edit screen, add a comment and set the haxTuple characteristic to true. If you don't have access to edit these bugs from the tracker, let us know and we can give you the privileges.

A better curated list of bite-sized tasks for our mobile client can be found on our Github fair game list.

Committing code

The competition will start soon after the release of 4.6, which will form the starting point for the code of the competition. Throughout the competition we'll be maintaining a haxtuple branch in the relevant git repositories. If you're new to git, we've described the basic commands that should be help explain how to use git. All PRs should be made against the haxtuple branch and should follow our coding standards. We recommend that competitors keep their code up to date with this branch. The haxtuple branch will be eventually folded into our 4.8 release, which is scheduled for a final release in October.

Contact us

An excellent way to get in touch with our team in real-time is to join our IRC chat room #xtuple on freenode. Questions or problems related to the setup of our web technologies are best added as github issues in the relevant repository (here for example). Discussions about our desktop client are typically done on our forums.

Read more

See our press release for more details.

Something went wrong with that request. Please try again.