What is Supermodel?

Supermodel is an open-source Domain Driven Design (DDD) framework that dramatically reduces the cost of developing and maintaining web applications, web services, and mobile applications (native iOS, native Android, and HTML-based).

While a DDD approach carries with it many benefits, a typical DDD application does not result in a DRY ("Don't Repeat Yourself") codebase, making code more verbose and difficult to maintain. Supermodel uses the "convention over configuration" approach, which requires you to define only what's different/weird/unusual in every layer of the application compared to your domain layer. Supermodel makes it easy to build well-designed, extensible applications while also giving you free, fully-configurable CRUD ("Create, Read, Update, Delete") functionality.

  1. For web applications, Supermodel relies on ASP.NET MVC, while keeping you in full control of the HTML being rendered. Out of the box, Supermodel comes with free pageable, sortable, and searchable CRUD support for Twitter Bootstrap and JQuery Mobile, while leaving your options open to implement any other frontend HTML framework.

  2. For Web API applications, Supermodel leverages ASP.NET Web API, giving you free pageable and queryable CRUD, while also keeping you in full control of the web services provided.

  3. For native mobile applications, Supermodel makes use of Xamarin technology, allowing you to build iOS and Android apps. Based on the specific web services exposed (see #2), Supermodel can generate mobile runtime (in C#) that is fully asynchronous and fully transactional, saving you from writing a lot of tedious boilerplate code.

With Supermodel, you can rapidly develop robust websites and applications, reducing development cost/effort by 50% or more depending on the application.