Seems a lot of interest this week in exploring approaches to Rails starter apps: Cristiano Betta's Primo [1], Carbon Five's Raygun [2], this script from TaskRabbit. So I updated two lists I maintain:
Two observations, if I may. First, it's very interesting to compare the commonalities and differences among the various starter apps, in light of discussion of "Rails is omakase" (@dhh) and "Rails has Two Default Stacks" (@steveklabnik).
Second, most starter apps end up mired in the tar pits of neglect, abandoned in the constant change of Rails and its gem ecosystem. Building a starter app, an application-generating gem, or an application template is the smaller challenge; maintaining it is the bigger challenge. To that end, a starter app needs a large communal open source effort to stay fresh and up-to-date. Most projects have failed on this count.
I think this approach works for us and Carbon Five because we've picked one type of stack and go with that.
As to maintenance, I tend to add/test new platform features in the template app and use that as an example to how to upgrade the existing ones. If you do that and update all the gems in the process, it tends to stay up to date.
It's an internal app with lots of internal gems, unfortunately.
The main point is that it's just the first day (or hour) of what you would do on all your projects: the kind of stuff people put in templates (authentication, jquery, testing preferences, common layouts, various gems you always use, etc).
Seems a lot of interest this week in exploring approaches to Rails starter apps: Cristiano Betta's Primo [1], Carbon Five's Raygun [2], this script from TaskRabbit. So I updated two lists I maintain:
A list of starter apps: http://railsapps.github.com/rails-examples-tutorials.html
A list of various template-generating gems and application templates: http://railsapps.github.com/rails-application-templates.html
Two observations, if I may. First, it's very interesting to compare the commonalities and differences among the various starter apps, in light of discussion of "Rails is omakase" (@dhh) and "Rails has Two Default Stacks" (@steveklabnik).
Second, most starter apps end up mired in the tar pits of neglect, abandoned in the constant change of Rails and its gem ecosystem. Building a starter app, an application-generating gem, or an application template is the smaller challenge; maintaining it is the bigger challenge. To that end, a starter app needs a large communal open source effort to stay fresh and up-to-date. Most projects have failed on this count.
[1] https://github.com/cbetta/primo
[2] https://github.com/carbonfive/raygun