4 ms·
Open source Rails apps to study and learn from
- rstocker99 16y agoAnybody have a good list for python?
- andrew_k 16y agoFor Django-based apps - you should definitely take a look at Pinax http://pinaxproject.com/ http://pinaxproject.com/ Satchmo has some interesting approaches to solving certain problems in Django (like allowing to override general site settings in admin) - http://www.satchmoproject.com/ http://www.satchmoproject.com/ For examples of more lightweight WSGI apps using Werkzeug: Zine (blogging engine) - http://zine.pocoo.org/ http://zine.pocoo.org/ Solace (forum similar to StackOverflow) - http://opensource.plurk.com/Solace/ http://opensource.plurk.com/Solace/
- tkaemming 16y agoAnother canonical example is Everyblock: http://code.google.com/p/ebcode/ http://code.google.com/p/ebcode/
- nonrecursive 16y agoalso check out http://communityengine.org/ http://communityengine.org/ as an good, open-source alternative to lovdbyless.
- danieldon 16y agoI don't agree with this list. Spot.us, for instance, has completely non-standard controller code that goes against widely accepted conventions. I also haven't looked at lovd by less in a while, but last I checked they relied on widespread monkey patching of core Ruby and Rails classes just to avoid writing a couple characters. Also very notably absent is gemcutter (http://github.com/qrush/gemcutter http://github.com/qrush/gemcutter) which is actually clean, modern and adheres to conventions.
- rufugee 16y agoAgreed. I've heard (yet have no evidence) that Lovd was a particularly bad example of Rails code. I haven't reviewed it personally though, so ymmv.
- cloudkj 16y agoI just took a glance at a couple controllers in the lovd source, and they do just look like generic scaffold controllers.
- dtran 16y agoEven though I haven't heard of it, just from the 439 watchers and 96 forks on Github, I'd probably look to it as an example of at least decent code. This is why I <3 Github - really great way to learn good coding conventions.
- danieldon 16y agoThere are only a handful of active lovd by less forks and none of them have apparently removed the pervasive, unnecessary monkey patching. If you don't know what I'm referring to, start reading the code, notice that there are a bunch of weird, non-standard methods that don't seem to be defined anywhere and notice that core classes don't work the way you expect. Then, maybe you'll end up needing to do what I had to, grep the project to find all the monkey patching here: http://github.com/stevenbristol/lovd-by-less/tree/master/vendor/plugins/less_monkey_patching/lib/ http://github.com/stevenbristol/lovd-by-less/tree/master/ven... That mostly undocumented plugin, which introduces changes used extensively throughout the app, is not the kind of thing that should be presented to new Rails developers as a good practice. Aside from the monkey patching, lovd by less does provide some very good examples of how to approach a variety of things in Rails, but the monkey patching is so pervasive that it's unavoidable.
- chrislo 16y agoThis is a great point. I'm the author of the original article, I'll update to link to specific concerns and also add a couple of the projects that some other people have suggested. The article was in no way meant to be a definitive resource, just an attempt to continue helping new Rails developers learn how to work with the framework. The many useful comments I've received will help improve the article a lot.
- thomasfl 16y agoGitorious is an open source alternative to github.com hosted on it's own site http://gitorious.org/gitorious http://gitorious.org/gitorious It was recently ported to rails 3 as well.