Contributing to Shotwell

Jorge Castro asked for our thoughts on a recent (and highly active) contributor, Bruno Girin.  Bruno provided a mountain-load of energy developing the F-Spot migration code for Shotwell 0.7.  Here’s Jorge’s report as well as Bruno’s story about how he came to work on Shotwell in such an in-depth manner.

We value contributions here at Yorba, and we do our best to evaluate every patch that comes in.  Sometimes the timing might be off — especially if we’re rushing to clean up the final details of a release — but even then we might slip in oh-so-good stuff, such as tag autocompletion that Marcel Stimberg valiantly got in under the wire in time for 0.7.

If there’s something in Shotwell you’d really like to see, if you have an itch to scratch, please consider contributing!  Things you can do to get started (in no particular order):

1. Check out our ticket database for bugs and feature wishes.

2. If you’re not familiar with Vala, acquaint yourself with it — Shotwell is 99.9% Vala.  Fortunately Vala is very similar to Java and C#, so if you’re familiar with either or both, you have a head-start.  Some good Vala resources include its documentation and tutorials, the Valadoc for the various bindings that come with it (here’s the latest Valadoc for Gee, the collection class we use extensively in Shotwell), and my article on The GNOME Journal about why Yorba chose Vala in the first place.

3. Download the source from our Subversion repository: svn co svn://svn.yorba.org/shotwell/trunk

4. Read over Shotwell’s architecture overview and Yorba’s coding guidelines.

Hopefully this gives you a good start on hacking Shotwell.  We look forward to your patch!