FubuMVC is a “Front Controller” pattern-style MVC framework designed for use in web applications built on ASP.NET.
Note: FubuMVC has nothing to do with the ASP.NET MVC framework.
FubuMVC is built upon the core ASP.NET library (HTTP handlers, modules, caching, etc). FubuMVC’s supports two primary view engines: 1) the ASP.NET WebForms view engine and 2) the Spark view engine. FubuMVC is an alternative to the “Page Control Lifecycle” of WebForms. It encourages you to use views as merely dumb HTML renderers that contain no serious logic (or only display/render logic).
Indeed the entire point of the “Front Controller” pattern (and therefore FubuMVC) is the separation of logic from presentation.
There are many MVC frameworks, including several for the .NET/ASP.NET platform. FubuMVC is different from most of them in that it has a strong focus on “pluggability” and on conventional configuration. FubuMVC’s framework design places a strong emphasis on compositional object-oriented design (versus a strongly inheritance-based architecture).
The practical benefit of this is that you can easily, and to a greater degree, replace/override, extend, and customize FubuMVC for your particular situation. This is why FubuMVC was originally created: because of frustrations experienced when trying to override functionality in some of the other MVC frameworks.
As an aside, you may also wish to investigate OpenRasta, another .NET-based MVC framework that follows some of these same design principles.
The current team consists of (in alphabetical order):
Alex Henning Johannessen
FubuMVC wouldn’t be possible without the time and effort of its contributors. Thank you for everyone who has ever committed, sent a pull request, or offered advice. Of course, if your name is missing please don’t hesitate to contact us. In no particular order:
Jaime Febres Velez