[ANN] El Dorado - an open-source forum in Rails

I’m pleased to report that I got my pet project - El Dorado - finished
up enough (when is anything ever truly finished?) to launch last
weekend. So far, things are looking pretty good. I successfully imported
an existing PunBB database from the forum I had running, and I also
grabbed all of the user-uploaded files, etc. The resulting database has
around 35k rows, and it’s been up and running without any major problems
for a week now. The best part is that my “loyal user base” - of 15
people or so - has found little to complain about so far. Rejoice!

You can check the live app out, and you can also checkout (as in ‘svn
co’) the app if you’re interested in playing around with it. Since I
created this app to replace an existing site, you’ll notice right away
that there’s some obvious stuff missing - in particular, there’s no way
to create new forums. I suppose I’ll do that when somebody says to me
“hey, Trevor, how do you make a new forum with this stupid thing?” But,
until that day…

El Dorado: Google Code Archive - Long-term storage for Google Code Project Hosting. - the code
NewAthens: http://newathens.org - the live site running on the code
PunBB: http://punbb.org - the php forum app that the code is replacing

Known Issues: http://trevorturk.backpackit.com/pub/972326
Future Enhancements: http://trevorturk.backpackit.com/pub/972338
Refactoring Ideas: http://trevorturk.backpackit.com/pub/1150742

I don’t intend for this app to be a simple “rails replacement for
punbb,” which I should make clear. I think of it more as an app for
running a “community site,” meaning I’d like to add more major features,
which you can glean from the future enhancements list I linked to above.

I’d absolutely love to get some feedback about this. It’s very easy to
download and get up and running, simply have a look at the README file.
Patches more than welcome. Thanks!

  • Trevor

Trevor T. wrote:

I’m pleased to report that I got my pet project - El Dorado - finished
up enough to launch last weekend.

El Dorado: Google Code Archive - Long-term storage for Google Code Project Hosting. - the code

Also, my weblog and support forum: http://almosteffortless.com/

Trevor,
I’ve been studying Rails for the last year and trying to be the
‘dutiful’ follower of “how it’s supposed to be done”. I am so happy to
view your code and see how you’ve cut your own path in areas like ZERO
nested resources and a beautiful clean approach to handling record
relationships. You are truly an artist!
I know I’m not worthy, but I would be very happy to hear more of how
you found your unique approach.
Thank you,
Kathleen
[email protected]

On Aug 4, 10:20 am, Trevor T. [email protected]

[email protected] wrote:

I’ve been studying Rails for the last year and trying to be the
‘dutiful’ follower of “how it’s supposed to be done”. I am so happy to
view your code and see how you’ve cut your own path in areas like ZERO
nested resources and a beautiful clean approach to handling record
relationships. You are truly an artist!
I know I’m not worthy, but I would be very happy to hear more of how
you found your unique approach.

Well, I’m flattered, but clearly not an artist! There are lots of areas
that could use some improvement, most definitely in terms of keeping
controllers skinny.

In any case, I didn’t use nested routes because I really like short
URLs, and having all models accessible at the same top-level fits well
with how I think of REST. I think that’s just a personal preference, and
I haven’t seen the need for nested resources in this app just yet. That
being said, I’m not opposed to using them, but I’m a big fan of short
and sweet URLs.

As for the approach I took - mainly I’ve been learning as I’ve been
coding this app. I learned a lot from the Agile Web Dev book, and I
would have been lost without access to incredible resources like the
Beast forum, by Josh Goebel and Rick O… I think they referenced
PunBB, a PHP forum by Rickard Andersson, when creating Beast. I consider
PunBB to be one of the best web apps ever made, and I looked at the way
it does things very closely.

Anyway, thanks for taking the time to look though El Dorado. Please
don’t hesitate to get in touch with me if you have questions, comments,
suggestions, or patches!

  • Trevor

This looks GREAT! Really fills a gap in RoR software.

One question, any thoughts about setting up an HQ or demo site that
people can poke around in? Even if it’s nothing more than a test forum
I’d love to be able to try it out myself, without messing around in your
production (off-topic) forum.

Thanks!!

Carl

Hey - nice job on following through with a conversion of a php app
into rails. I am trying to do one myself to hopefully to release to
the community. I’m by no stretch a rails guru… but I figure that if
people take the initiative to get the ball rolling… the others who
have a better skill set will help & polish it up!

On Aug 4, 11:20 am, Trevor T. [email protected]

Carl J. wrote:

One question, any thoughts about setting up an HQ or demo site that
people can poke around in?

I’d like to set something like that up, but I’m working on the domain
name and stuff. I’ll post something in this thread when it’s ready.
Thanks for the feedback!

I’m pleased to announce the first public release of El Dorado: a
full-stack community web application written in Ruby/Rails.

The app features a forum, community event calendar, shared file storage,
and a randomized header image gallery.

It can import content from existing sites running PunBB. The forum is
somewhat modeled on PunBB, and is nearly feature complete.

I’ve been using this app in production since late July '07. The
setup/administration process still leave something to be desired, but
the end-user functionality is quite well tested.

http://almosteffortless.com/eldorado/

In terms of PunBB features, I don’t think the power-user will be fully
satisfied. There not much in the way of user administration tools (post
throttling, ip-banning) and some major features are still not
implemented (subscriptions). However, the basics are pretty solid, and
the regular users of my small forum have been satisfied for a while now.

Please have a look and let me know what you think!

When this gets out of its infancy perhaps it can replace the punbb forum
system Rails Forum is running on. I have yet to take a look at the code,
and
I probably won’t until tomorrow night.

On Jan 24, 2008 3:31 PM, Trevor T. [email protected]
wrote:

I’ve been using this app in production since late July '07. The

Please have a look and let me know what you think!

Posted via http://www.ruby-forum.com/.


Ryan B.

Feel free to add me to MSN and/or GTalk as this email.

Trevor T. wrote:

I’m pleased to announce the first public release of El Dorado: a
full-stack community web application written in Ruby/Rails.

I’m quite pleased to announce the release of El Dorado version 0.9.2 -
the “group chat” edition. You can check out the demo, testing, and
support site here:

http://eldorado.almosteffortless.com/

You can read more about this release and download the app here:

http://almosteffortless.com/2008/05/05/el-dorado-092-group-chat-edition/

Feedback very much appreciated!

Thanks,

  • Trevor

Dave L. wrote:

I get an error when I run ruby script/server b/c
it says that there is no script folder. I am doing something wrong?
Did I download the whole app? thanks for your time, Dave

Perhaps you need to use “ruby script/server” instead, but I’m not sure.
This would be an issue with running Rails apps in general, though, not
just El Dorado. I’d suggest checking out some tutorials for getting
started and I’m sure it’ll become clear. If you’re not sure where to
start, the Agile Web Dev book should be a good pick:

Trevor T. wrote:

setup/administration process still leave something to be desired, but
Please have a look and let me know what you think!

I know I’m replying to a really old email, but I was wondering how
things are going with El Dorado? Are many people using it? Any obvious
problems?

I’m looking to integrate something alongside a Radiant website, with the
main need being that the 2 should be able to share some sort of user
model (not the Radiant Admin UI model). So, I was wondering if people
have used it and have some comments to share.

Thanks
Mohit.

Hey Trevor, i just came across your app and it looks amazing. It is
exactly what I need and will help speed up my learning process. The
only thing is that I am having trouble getting the app set up on my
local server. I downloaded the source code through the .tar link but
and have set the the database up correctly and everything has worked
except for step 3. I get an error when I run ruby script/server b/c
it says that there is no script folder. I am doing something wrong?
Did I download the whole app? thanks for your time, Dave

On May 5, 8:36 pm, Trevor T. [email protected]

Mohit S. wrote:

I know I’m replying to a really old email, but I was wondering how
things are going with El Dorado? Are many people using it? Any obvious
problems?

I’m looking to integrate something alongside a Radiant website, with the
main need being that the 2 should be able to share some sort of user
model (not the Radiant Admin UI model). So, I was wondering if people
have used it and have some comments to share.

Hi Mohit,

I’m the developer of El Dorado. I can’t speak to how many people are
using the app, but I’ve seen it around a bit. I’m under the impression
that some people have forked the code, or used it for internal projects,
etc as well. The people over at FiveRuns just posted a automatic
installation that features El Dorado as well:

http://eldoradoapp.com/topics/249

I’ve been happily using the app for a few sites that are active, and
I’ve been continuing to add new features from time to time. I don’t
think there are any major bugs or issues, but of course there are still
areas that could be improved and such. I’ve certainly been maintaining
and using the app, though, so I know that it’s useable.

I’d love to see El Dorado integrated into Radiant, so please do let me
know if you’ll be working on that. Even if you won’t be putting it back
out into the open-source community, it would be fun to see the product.

I should note that there are some other good alternatives that may be
easier to integrate into an existing Rails app. I don’t have extensive
experience with them, but here are the ones I’m aware of:

http://adva-cms.org/

http://www.communityengine.org/

Of course, I’ve built El Dorado to work in a way that I like, and I
think it’s a terrific app. Please do let me know if you decide to use it
for anything - this is the whole reason that it’s fun to work on
open-source projects :slight_smile:

  • Trevor

Mohit S. wrote:

Thanks for the long message. I do appreciate the reply. I’ve been
following the project (in terms of watching the mailing list posts to
the Rails mailing list) and haven’t seen much about it. That either
means it works really well or people aren’t using it or people are going
elsewhere for support! I noticed yesterday that the El Dorado Forum
itself is quite active… so, I’m now going to start tracking it.

Thanks for your reply, Mohit. It’s silly that I forgot to mention Beast,
of course. I guess I overlooked it because everybody already knows about
it…? Beast is a great app, and a good pick for integration as well,
mainly because it’s so small and widely used. I referred to Beast a lot
when learning Ruby/Rails and working on El Dorado, so I can say from
experience that it’s a well-written and solid app.

As for El Dorado and possible Radiant integration of whatever depth, I
look forward to any suggestions, requests, or contributions you may
have. It’s probably easier for me if we pick up the conversation over
here:

http://eldoradoapp.com/

Thanks, and I look forward to hearing more from you!

  • Trevor

Hi Trevor

Thanks for the long message. I do appreciate the reply. I’ve been
following the project (in terms of watching the mailing list posts to
the Rails mailing list) and haven’t seen much about it. That either
means it works really well or people aren’t using it or people are going
elsewhere for support! I noticed yesterday that the El Dorado Forum
itself is quite active… so, I’m now going to start tracking it.

It looks nice, seems to have many features that I want - now, I need to
suck it down, install it and play with it. Was just looking for a
“heads up - beware!” message before starting out. Given that there have
been none yet, it’s probably a good idea to go ahead with it :slight_smile:

As you’re probably well aware, Beast (and its variants) are most
commonly cited as options for integrating into regular apps… so, I was
just doing a check before I start to evaluate.

The remaining answers are inline.

Trevor T. wrote:

I’m the developer of El Dorado. I can’t speak to how many people are
using the app, but I’ve seen it around a bit. I’m under the impression
that some people have forked the code, or used it for internal projects,
etc as well. The people over at FiveRuns just posted a automatic
installation that features El Dorado as well:

http://eldoradoapp.com/topics/249

Ya, I noticed this from the site - that’s cool :slight_smile:

I’ve been happily using the app for a few sites that are active, and
I’ve been continuing to add new features from time to time. I don’t
think there are any major bugs or issues, but of course there are still
areas that could be improved and such. I’ve certainly been maintaining
and using the app, though, so I know that it’s useable.

Good enough for me! It gives me enough confidence to go ahead and start
evaluating it for our needs. I do like some of the stuff that’s catered
for small companies - and I think that will see us use El Dorado for
more than just 1 thing in the near future.

I’d love to see El Dorado integrated into Radiant, so please do let me
know if you’ll be working on that. Even if you won’t be putting it back
out into the open-source community, it would be fun to see the product.

I would be careful of claiming “integrate” just yet.

[1] The most likely scenario currently is that Radiant runs on
http://www.example.org/ and El Dorado runs on http://bbs.example.org/

[2] The second most important thing is likely to be a need to make sure
that somehow Radiant and El Dorado can share the same user
authentication method (for Radiant, this would NOT be the admin login to
post content)

[3] This would most likely be followed by an integration where I add a
sidebar in Radiant (so, I’d need to add Radius tags) that will allow us
to copy across the 10 most recent posts (subject, title, author, etc.)
to the Radiant site’s home page (or any other page for that matter).
I’ve done this before using Yabb2 - that site is currently offline,
otherwise I’d post you a link. So, what I’d need from El Dorado is a
not too complex page of ‘most recent posts’ and then parse that in on
the Radiant side.

[4] I’d like to then see if it’s possible to add simple things like tags
that allow you to search for BBS posts related to the current page in
the forum. So, I’m thinking that you could do <r:eldorado:search_msg
q=‘form_helper’ /> and this would find you some posts related to
‘form_helper’ and if it that comes back in a good easy to parse format,
I’d like to show that on the Radiant page.

[5] Finally (and this is a big problem), I’d like to see if it’s
possible to use the ‘home page’ of the user inside El Dorado for adding
more things - e.g., if he could bookmark something in the Radiant site,
it could show up inside this user home page area.

What do you think?

I should note that there are some other good alternatives that may be
easier to integrate into an existing Rails app. I don’t have extensive
experience with them, but here are the ones I’m aware of:

http://adva-cms.org/
http://www.toghq.com/
http://www.communityengine.org/

I’m aware of this, but I have spent quite a bit of time with Radiant and
the site that I have this in mind for is already starting out on
Radiant. Additionally, I’m helping to coordinate a project called
‘Summer Reboot’ that is helping to create documentation for Radiant, so
for now, that’s the chosen one: http://wiki.radiantcms.org/Summer_Reboot

Of course, I’ve built El Dorado to work in a way that I like, and I
think it’s a terrific app. Please do let me know if you decide to use it
for anything - this is the whole reason that it’s fun to work on
open-source projects :slight_smile:

Of course, I will. I think the main features that I’m looking for are:

  1. Ease-of-use
  2. Ease-of-integration (e.g. the simple pages that allow me to integrate
    with Radiant)
  3. Spam control/ management - this is really troublesome naturally! I
    have this working quite well on the Mailing L. that I administer, but
    it’s always a problem on a BBS.

Thanks again Trevor - for building the system and for releasing it for
us to use. I fear you’re going to hear more from me in the coming weeks
as I start to go down this path :slight_smile:

Cheers,
Mohit.
10/22/2008 | 12:20 PM.

Trevor T. wrote:

Thanks for your reply, Mohit. It’s silly that I forgot to mention Beast,
of course. I guess I overlooked it because everybody already knows about
it…? Beast is a great app, and a good pick for integration as well,
mainly because it’s so small and widely used. I referred to Beast a lot
when learning Ruby/Rails and working on El Dorado, so I can say from
experience that it’s a well-written and solid app.

Currently, my very short list is Beast and El Dorado!

As for El Dorado and possible Radiant integration of whatever depth, I
look forward to any suggestions, requests, or contributions you may
have. It’s probably easier for me if we pick up the conversation over
here:

http://eldoradoapp.com/

See you there!

Cheers,
Mohit.
10/23/2008 | 9:30 AM.