--- layout: default title: "Why Merb?" current: "why_merb" ---

Why Merb?

Speed

Built for it!

Like Ruby on Rails, Merb is an MVC framework. Unlike Rails, Merb is ORM-agnostic, JavaScript library agnostic, and template language agnostic, preferring plugins that add in support for a particular feature rather than trying to produce a monolithic library with everything in the core.

Merb is also thread-safe and was originally engineered to handle multiple file uploads concurrently.

Lightweight

A simple, clearly documented core

Rather than trying to cram every feature under the sun into a single code base, we keep things to the bare minimum, without sacrificing anything important.

The core code in Merb is kept simple and well organised meaning it’s easier to understand, maintain and extend.

Powerful

Featureful, flexible and extensible

While we try to keep the core as minimal and clean as possible, this hasn’t meant a sacrifice of features. Merb has a very comprehensive set of features which we are continually improving. For example the new provides, which replaces the responds_to API.

For any features that aren’t covered in Merb’s core, there are plugins. Rather than reinvent the wheel with a custom plugin framework, these are implemented as RubyGems, giving us easy plugin installation, updates and versioning.