Orchestra is a composable shell and WPF framework built on top of Catel
C# CoffeeScript Other
Clone or download

README.md

Orchestra

Name Badge
Chat Join the chat at https://gitter.im/WildGums/Orchestra
Downloads NuGet downloads
Stable version Version
Unstable version Pre-release version

Orchestra is a mature, composable WPF shell and framework built on top of Catel.

It has been in active development for over 5 years (initial commit 2012/06/18) and is used in numerous Line of Business (LoB) applications on a daily basis.

Orchestra consists of a main shell including an SDK with services that allow developers to communicate with the shell.

Goals

Provide a robust yet flexible LOB shell, designed with best practices in mind, to jump start the development of desktop applications.

In other words, we wanted to create a shell that dramatically speeds up the time it takes to release a LOB application to market by enabling developers to concentrate more on the business logic and less on scaffolding.

Available Shells

Orchestra provides support for two different shells:

  • Fluent ribbon
  • MahApps
Fluent ribbon shell MahApps shell
Fluent Ribbon 01 MahApps 01
Fluent Ribbon 02

Sample Applications

Here are some examples of applications built with Orchestra and other Orc.* libraries:

LogViewer Rantt CsvTextEditor FlexGrid
Log viewer Gantt chart application Csv file text editor Data visualizer
Log Viewer Gantt Chart CsvTextEditor FlexGrid

LogViewer and CsvTextEditor are open source projects hosted on Github.

Other examples of commercial applications built with Orchestra can be found on our official website WildGums.com.

NuGet packages

Prerequisites

A good working knowledge of Inversion of Control (IoC).

Orchestra features

  • Application wide logging with an in app log viewer (CTRL + L)
  • Command manager
  • Shortcut key manager
  • Fluent validation
  • Themeable 'about box' window
  • Themeable splash screen
  • Consistent styling across the whole application

Orchestra + module features

We purposely designed Orchestra to be a lightweight shell. However you can 'super charge' it with the following open source libraries: (We use all these libraries with Orchestra. In fact they were designed to work seamlessly with Orchestra. Hint: the libraries all start with Orc.*)

You can find the full list here.

Other similar open source projects

For documentation, please visit the documentation portal