views:

2552

answers:

17

I am looking for a Web Framework to move windows based applications to the web.

The main requirements to WF are the following:

  1. unit tests support
  2. desktop and mobile browsers support
  3. long term viability
  4. maturity of the framework
+6  A: 

How about the ASP.NET MVC framework? It's what this site is running on.

Another more mature option is Castle MonoRail.

I think ASP.NET MVC is probably the best choice in the long run. A year from now, it will be far easier to hire someone who knows ASP.NET MVC than someone who knows MonoRail.

Dave Ward
+1  A: 

I heavily prefer CakePHP for PHP, Django for Python, Rails for Ruby.

In terms of front-end, if you're looking for a desktop-esque end user experience you should look into ExtJS or YUI.

eplawless
+15  A: 

In my opinion, with contributions from the SO community

Kevin Chan
Your link to ASP .NET MVC and Merb are the same...
Thomas Owens
+1  A: 

if you're a java progammer, check out the Struts framework by the Apache folks.

Matt Cummings
A: 

I have been using Struts from Jakarta (Apache group) for java, and it's really good. Good separation of the layers, which allows you use any othe library/framework in any layer, for example Hibernate for object-relational mapping or even any template framework like Velocity in the view layer.

I recommend you give a look at their website

Fernando Barrocal
A: 

Rails is still ahead of the competitors as a complete stack with large community driving it forward.

ryw
A: 

Another alternative would be SproutCore, which is entirely client-side. The project is still in its infancy, however.

Sören Kuklau
+5  A: 

I recommend the Java based Wicket Framework.

It's a component based MVC library which is really easy to use and allows to do all the view stuff in the java code (in contrast to using JSPs or templates or whatever in other frameworks).

jkl
http://www.laughingpanda.org/mediawiki/index.php/Wicket_Bench
djangofan
+2  A: 

I've had surprising success using Drupal as a web app framework. It's highly extensible - pretty much every default behaviour can be overridden easily via modules, and it's a pretty blank slate to start with as well.

Drupal 7 has unit testing built-in, and earlier versions can do it easily via a plugin.

ceejayoz
A: 

ASP.NET MVC will probably be the de facto standard on the .NET platform. Also, MonoRail has been around for quite a while and still doesn't support caching. It seems like a very difficult thing to do, and is a major drawback if you ask me.

The site is missleading:Cache attribute on controller's actions works fine for me.
smoothdeveloper
+2  A: 

If you are curious about Seaside (mentioned by yinkei), visit Randal Schwartz's Methods and Messages. You can start by watching his quick elevator pitch.

Seaside creator Avi Bryant's interview is also a good read/watch.

Working with Seaside was amazing for me, almost like coding a desktop app.

Visit Dabble DB and Cmsbox for real life apps built on Seaside.

Sébastien RoccaSerra
+2  A: 

Why haven't anyone talked about turbogears, web.py and pylons?

A: 

For Python, I recommend Pylons (docs) (book)

John Douthat
A: 

Honestly if you want an MVC framework for asp.net I would pick Castle Monorail. I think it is more mature then the current MVC framework from microsoft.

Nathan Lee
+2  A: 

I have been using Wicket for about a year and it is fantastic. It's java based, supports unit tests, and uses a very flexible templating system for display.

perilandmishap
+1  A: 

The Spring projects WebMVC framework is very good, more so than Struts. I've also heard very good things about Grails which uses Groovy on top of Spring and is modeled after Ruby on Rails.

Orclev
A: 

No-one seems to have mentioned Perl, and the Catalyst framework available for it. It ticks all the boxes in your requirement list.

http://catalystframework.org

RET