On the road to Merb-1.0

Posted by ezmobius Mon, 14 Jan 2008 21:35:00 GMT

We are currently slaving away on a complete refactor/revamping of the merb framework on our way towards 1.0.

Here is a nice article about the progress and roadmap we are taking.

http://yehudakatz.com/2008/01/14/merbnext/

You can follow the merb-core development on github here:

http://github.com/wycats/merb-core/tree/master

Basically we are completely refactoring merb into a merb-core and merb-more gem plus many pliugins. This is to make it as tight as humanly possible going forward so merb1.0 will be a stable api and system upon release.

This means new documentation standards as well as full Rack support so merb will run on mongrel, evented_mongrel, swiftiplied_mongrel, thin, fcgi, webrick and ebb. Plus any other rack servers that come into existence.

This also means that merb’s app layout is no longer hard coded. You will be able to run a single file merb app or the current rails-like app layout or create your own with a flexible dsl.

I’m pretty excited about the future of Merb. Yehuda Katz and I are now working full time on Merb and related technologies. Engine Yard’s new control panel will be written in merb and EY is also offering the same level of support for Merb that it does for Rails apps. Cool stuff is on the horizon.

So bear with us a bit as we head for Merb 1.0 with a scalable API as well as scalable ruby web platform.

Tags  | 16 comments

Comments

  1. Ryan A. said 17 minutes later:
    We're about to host a 2 year old Rails app w/ EY... And we also plan to convert it to Merb this year. Good times!
  2. JonMagic said about 5 hours later:
    Sounds good to me, my small team will help wherever we can...
  3. macournoyer said about 5 hours later:
    Nice work w/ the refactoring Ezra. I was unsure of how the code was structured before but now I totally like it! Good move on moving to Rack. And thx for putting Thin support builtin.
  4. Brian Hogan said about 7 hours later:
    Sounds good except for one thing: the app layout. I really like a project structure that's a standard. That goes such a long way toward making it easy for a project to move between teams / developers. At my day job we have lots of turnover because the developers are students. Rails has been a godsend to me because everything has a place and everyone knows where it is. If you allow anyone to put stuff wherever they want to, it gets harder. I love the idea of a single-file merb app, a-la Camping, but I get nervous about the 'structure it how you want to" possibilities. It's still really neat though.
  5. Strass said about 13 hours later:
    @Brian I get the impression that Merb-without-the-traditional-framework is built for the people who really needs it. The majority of people will surely choose the full fledge version.
  6. John said about 16 hours later:
    @Brian, totally agree. A structured way to develop is a godsend when you have multiple people developing. Thats the main advantage of Rails for me, forget all the other hand holding and html/js generation, I can do without that. In fact I have enjoyed the jump to merb as its allowed me to re-acquaint myself with html/js.
  7. Stainless Steelski said about 16 hours later:
    Cool. +1 for custom directory structure. Do you have Merb's 1.0 ETA? Going to jump from Rails after 1.0 release.
  8. Ezra said about 20 hours later:
    Thanks for the encouragement everyone. We are currently targeting Merb 0.9 by February 8th(hoping to release at acts_as_conference). Merb 0.9 will be the pre-release for merb 1.0, giving us a little time to shake out all the details and get everyones apps updated to the new way of doing things. So I think a realistic goal for Merb 1.0 is late feb, early march(give or take).
  9. Jeremy said about 23 hours later:
    @Brian and @John I agree that situations like yours call for standardized directory structures. But I find it preferable to have the freedom to structure an application in a way that is best suited for the task. You would, of course, be able to mandate a standard directory structure (stick with the default layout?). Where I see this is as being a big help is with small proof-of-concept projects. Using Rails (or any fixed directory structure) impedes the ease of examining those quick projects. For example, I frequently create applications to test out some logic/feature/library etc. When looking back at those projects some time later, it gets difficult to know what has code worth keeping because so much unneeded content is generated. But beyond that, if merb is going to be able to bridge the gap between Camping/Ramaze/Sinatra and Rails, this seems like a necessary feature. And conceptually, a DSL sounds like a great way to offer this flexibility. Anyway, I am very excited to see this release! These are certainly exciting times.
  10. Ben said 1 day later:
    This is great news. I checked out the merb-core source, and it's really clean and exciting. I love that you're decoupling the core framework from the app directory structure, as it will make a multi-app friendly code organization possible (something where rails falls pretty flat on its face IMHO - see the post on my blog). Also, I've been using Ramaze a bit, and it's nice to have a framework that grows so well with the size of the project, without having all the initial overhead of a full-blown rails(-like) directory tree. This setup for merb will (hopefully) make it possible to write micro-apps (like the _why wiki) in merb. Thanks for the awesome progress, Ezra (et al.). Merb is getting cleaner and leaner by the day.
  11. Trevor Turk said 1 day later:
    Excited!!!
  12. http://dysinger.net said 3 days later:
    That git-hub linx is broked
  13. http://dysinger.net said 3 days later:
    Woops - it was my rss reader. :/
  14. Robert Dempsey said 4 days later:
    We are looking forward to hearing about Merb at the acts_as_conference charity session. Thank you again Ezra for coming and talking. Merb's progress is very exciting, and something we are actively looking to work with more and more. See you in February.
  15. Josh said 15 days later:
    Pardon my ignorance, but what's "Rack" support? Thanks
  16. Chris Duncan said 21 days later:
    @Josh Rack provides an interface between your web framework and a webserver. It is being used by a number of Ruby web frameworks (Merb, Ramaze, Sinatra ...) and can also be used without a framework. Check it out - http://rack.rubyforge.org/ @Ezra this is great news, can't wait to take it for a spin.

(leave url/email »)

   Preview comment