If you’ve been following Ushahidi 3.0, you know we’ve been working on it for a while, and might have noticed that we’ve been fairly quiet about it lately. That’s because the V3 team has been heads down these past few months working on getting it built and out to our community. It’s finally time to show off some of what we’ve done. We’re rolling out a developer release of Ushahidi v3(v3.0.0-alpha.1).
Grab the code on github, or download it here, then head over to the install instructions. Or just head over to the demo site and have a look. (If you want a quick way to spin up your own demo, try out our one-click deploy and install on Pagodabox)
Who this release is for
We’ve called this a developer release to emphasize that this really isn’t production ready yet. This release is a chance for developers to try V3 out, have a look at the code and help us build it.
For the rest of us: have a look at the demo, but don’t deploy/upgrade just yet ;).
What to expect
- Post listings – listings work and load real data. They’re page-able and sort-able, but not search-able yet.
- Individual post pages – these work and load real data. However they don’t render custom form data yet, and the images are faked.
- Post create form – well kind of. It should mostly work, but there are definitely still bugs with this.
- Deleting a post
- Posts endpoint
- Forms, groups, and attributes endpoints
- Media endpoint
- Tags endpoint
- Users endpoint
- Posts revisions and translations support
- GeoJSON support on Posts endpoint
- Supports OAuth2 for authentication
- Searching posts
- Workspace menu – the menu is there, but none of the links do anything
- Related posts – always shows the most recent 3 posts
- Media – We’re just using fake images at the moment, there’s no way to upload new ones
- Custom forms – these exist in the API, but there’s no UI for managing them.
- Sets listing
- Set details
- Editing posts
- Adding posts to sets
How to get involved
- Download and install Ushahidi 3.x
- Get a development build
- Pick a feature to work on (Check out our list of small tasks to get started with and our v3 roadmap)
- Follow our dev process to submit changes
- Join in discussions:-
- Sign up on the mailing list
- Join our skype: add robbie.mackay(or any other ushahidi team member) and ask to be added to the dev chat
Some technical details
We’ve talked about this in detail before.. so here’s the quick summary
- RESTful API
- HATEOAS style links between API calls
- OAuth2 authentication
- GeoJSON support directly in the posts API
- Using our own API to build the frontend
- Backbone and Marionette JS - These provide the main framework for the application, they handling routing, fetching data and rendering HTML
- SASS and compass - these provide us with a smarter, better CSS
- RequireJS - this handles async loading of all our JS files and lets us split things up into modules
- Grunt - helps to automate some of the frontend dev: building SASS files, and building optimized RequireJS files.
- Kohana Media module - this handles actually serving all the CSS/JS/images/templates to the browser. We’re using this to allow media files to live within Kohana’s cascading file system.
- Leaflet - the mapping library we’re building on to render GeoJSON from the API
Nairobi based? Join us on 6th November, 2013!
We’re hosting a meetup at the iHub on 6th November, 2013 between 5.30 p.m and 6.45 p.m to showcase some of this stuff to our Nairobi community. We will do our best to make it available for our global community to join via a Google Hangout, but this is pending. We promise to record it ;)