A project for the Estonian Development Fund for their Arenguidee idea contest.
This Ruby on Rails app was required to be based on work done for Rahvakogu (source code), which in turn was a fork of Social Innovation. Social Innovation itself was a merge of NationBuilder by Jim Gilliam and Open Direct Democracy by Róbert Viðar Bjarnason and Gunnar Grimsson.
If you've ever wanted to see how the Inner-platform
effect plays out in real
life, you'll be hard put to find a better example. You'll enjoy seeing classes
like Instance
and SubInstance
whose properties and behavior are loaded from
the database. Care for a massive translation GUI framework with indecipherable
configuration files keeping your phrases in the database, away from source
control? Good times ahead! Speaking of the database, thinking of creating it
from schema.rb
? Well, obviously we're going to need to load all ActiveRecord
models to get rake db:schema:load
to run...! Oh, but to load the models we're
going to need the database ready with translated phrases, mkay? Cause after all,
what's a little chicken and egg to play Catch-22 with between family.
Even though I tried to save this thing, what I'm saying is that don't build on this project. Ever. Don't try to maintain it and don't let people use it for new things. Let it die the quiet, hopefully agonizing, death it deserves.
Before you leave, though, if you know of others who've used the projects this was based on, kindly let them know that all emails sent through those apps were silently copied to robert@ibuar.is and <gunnar@ibuar.is.> These two fellows must have had a hard time reaching inbox zero with all that happening.
If you want the full Inner-platform to play with, you'll do good to check out earlier commits — the ones prior to 2014. I've ruined some of the fun by removing a few Catch-22s.
These days to get it running you'll have to:
- Get the source code.
- Run
bundle install
. - Run
rake db:create db:schema:load
. - Run
rails server
.
This and the projects its based on are released under the Lesser GNU Affero General Public License.