views:

1649

answers:

12

What is the best available non-trivial example app for rails with uptodate source, test suite and adherence to best practices?

[I am looking for an example of a full fledged application - with complex data models and advanced views that is worth looking at to see "how it is done" by others]

+1  A: 

http://github.com/fudgestudios/bort

elliottcable
bort is not an app, it is just a skeleton mainly available for its builtin authentication.
Keltia
I was aware of this, I thought that's what the OP was asking for.
elliottcable
Thnaks elliot, I'm a big Bort pusher myself - I've answered Bort to many a question on stack overflow. It's not quite what I am looking for though. I'm looking for a full app that I can browse the source for and that people respect the style of.
srboisvert
I can't say I respect the style of, well, *any* Rails app I've seen. Rails isn't really Ruby, from my point of view. It's Rails. A completely different set of idioms that, frankly, I dislike. I couldn't say which application, out of those I've seen, is the most "rails-like" out of them, sorry. )-:
elliottcable
+5  A: 

I'm not sure what does qualify as "best" available app but I'd advise you to look at Redmine for a non-trivial app, full of features as an example.

EDIT: let me add Typo and RadiantCMS

Keltia
Those apps are so completely totally not following best practices.
August Lilleaas
I remember looking at typo ages ago, imho it was fairly complex and not so clean, mephisto has a cleaner code base
Sam Saffron
Typo has greatly evolved recently due to the change of authors, 5.2 for example has rewritten a large part of the code base.
Keltia
+6  A: 

http://github.com/radar/rboard fulfills all the above.

Ryan Bigg
anybody else want to vouch for the code quality? (Not that I don't trust you radar - I just like multiple opinions)
srboisvert
Radar is t3h win
August Lilleaas
wow, will use this as reference
Ed
It was voted hot on github on the RubyInside blog. There's some things that definitely could be improved (for example finding the nested resources in the controllers), but I think it's one of my better works.
Ryan Bigg
Feel free to fork it and give it a haml branch
Ryan Bigg
+1  A: 

There are plenty of projects on github that you can download and have a look at. In my opinion its far better to look at an actual application as apposed to a sample one. Sample ones are usually bloated and do things you'd never actually do in practice. I was going to suggest rboard but Radar (the author) beat me to it :)

Keith Pitt
+2  A: 

I'd hardly say it's THE best, but here's a bunch of sample rails apps I created.

I also made a boilerplate app.

August Lilleaas
I wonder why I got a negative vote on this. Care to leave a comment, whoever did it?
August Lilleaas
+1 this is useful information, should not have been voted down
Sam Saffron
I would wager it's because you didn't link a well-known app. I gave you a +1 for not following the herd. ;)
Robert S.
A: 

Redmine is a fairly complex project tracker with a lot of features. The full source is available and is very up to date.

edit: Whoops...I didn't catch the mention of Redmine in one of the above comments.

steve.platz
A: 

Mephisto Blog system has "Unit tests at 100%". Also the name Rick Olson should say a lot about the quality of code.

Silviu Postavaru
+6  A: 

The folks at Hashrocket recently worked on Spot.Us. It's still being actively developed and the source is on GitHub. Spot.Us might fit the bill for you because:

  • It was built by the folks at Hashrocket and they have a great rep in the Rails community
  • There are over 20 models in the app (counting all the model files in the app/models directory), so it's definitely a non-trivial app
  • The app appears to be well-tested (many tests in the spec directory)
Gabe Hollombe
+2  A: 

Insoshi fulfils all of your requirements. It's developed by the guys that wrote RailsSpace. They're really quite hot on best practices and testing in particular.

Charles Roper
+8  A: 

This is a duplicate, or at least close-to: http://stackoverflow.com/questions/193632/whats-a-good-rails-example-application

From that post: On my drive I have a number of open-source Rails apps I have used for reference while learning Rails as also sanity checking that I am doing things the "rails-way":

Beast and Mephisto are particularly valuable as the have been developed by high-profile members of the Rails community.

Toby Hede
A: 

We started to use acunote for agile project management. I think the coolest feature is inline editing. No need to click on an edit button, just click some text and it will automatically replace the label with a text editor. This is very convenient!