In the last few months, a number of people have asked about the source code for Selectricity. We’re happy (and a little embarrassed) to announce the availability of all the code necessary to run Selectricity on another server under the GNU Affero General Public license which is a free software license released by the Free Software Foundation. An earlier version of the software, released by MIT, was under the permissive BSD license.
We’re happy because that means that everyone can use, modify, and share Selectricity and we can continue to move forward building a strong community of developers to help contribute to, improve, and maintain the project as some of our core developers move on to other challenges. It also means that you can run your own of Selectricity as long as you also share the code with your own users.
We’re embarrassed because we thought we’d announced this on this blog a long, long, time ago. Indeed, the source code has been available on the website (and mirrored in a number of places like the C4FCM CodebaseHQ repository) for well over a year. Indeed, quite a number of folks have been taking advantage of Selectricity in exactly the ways we described in the paragraph above. So many people seemed to know that we forgot, until very recently, that we had never made an announcement of the source availability on the project blog.
So this isn’t really the announcement of Selectricity’s first “release” — Selectricity was released a long time ago. Hopefully though, it means an increase in the visibility of the source code and in users knowledge of their freedom. We’ve also changed the Selectricity website so that every single page contains a link to page that includes instructions on how to get it and install the software to help remind users of the freedom they have.
In fact, we have been releasing two version of Selectricity for some time and both are available. One is the “live” version which runs on selectricity.org site. The second is the “development” (AKA “master”) version and it contains a bunch of new unreleased features like embeddable elections, kiosk mode, and more. They all basically work but there are are a few bugs, some serious testing, and a few remaining issues, that need to be dealt with before they can be merged into the live site. Maybe helping out with this is one great way you can help contribute to the project!
The best way to get Selectricity is just to download a copy of our git repository. Instructions on downloading and setting up Selectricity are online here:
Selectricity is written in Ruby on Rails which you’ll need to be (or become!) familiar with in order to hack on it. A list of other dependencies is included at the link above.