Frequently Asked Questions

What is Orchard?

Orchard is a free, open source, community-focused project aimed at delivering applications and reusable components on the ASP.NET platform. It will create shared components for building ASP.NET applications and extensions, and specific applications that leverage these components to meet the needs of end-users, scripters, and developers. Additionally, it will provide help for existing .NET applications to be successful in achieving their goals. Orchard is currently licensed under a New BSD license, which is approved by the OSI. The intended output of the Orchard project is three-fold:

  • Individual .NET-based applications that appeal to end-users, scripters, and developers
  • A set of re-usable components that makes it easy to build such applications
  • Partnerships with the .NET community to help define these applications and extensions

In the near term, the Orchard project is focused on delivering a .NET-based CMS application that will allow users to rapidly create content-driven Websites, and an underlying framework that will allow developers and customizers to provide additional functionality through extensions and themes.

What is the Orchard CMS application? How does it compare with Microsoft SharePoint?

Orchard CMS is an open source project which aims to provide a simple solution for small web agencies who want to quickly create Internet-facing Web sites. For corporations wanting a fully-featured, Microsoft-supported, enterprise-level CMS solution out-of-the-box, including Workflow, Digital Asset Management, Advanced Search, Web Analytics, and Social Networking, Microsoft SharePoint™ is a more natural choice. SharePoint also provides capabilities beyond CMS including Team Collaboration, Document and Records Management, Business Process Integration and Business Intelligence.

Microsoft SharePoint is the Business Collaboration Platform for the Enterprise and the Web. SharePoint today runs many large Internet-facing websites that require the robust CMS, Search, Workflow and Analytics capabilities that SharePoint provides. Examples include Kraft, Viacom, Hawaiian Airlines, US Government, and United States Marine Corp.

What is Microsoft’s involvement in Orchard? Is Orchard a Microsoft-supported project?

Orchard is a community-focused open source project delivered through the Outercurve Foundation. Like any open source project, we intend to expand the project through community contributions and enlist new members from many different organizations. Although Microsoft is sponsoring this project by providing full-time development resources to the effort, the Orchard CMS is not officially supported through Microsoft. Orchard is supported primarily by the project team through community forums and email. If you are looking for a Microsoft-supported CMS product, Microsoft SharePoint is a better choice.

What is the status of the Orchard project? What is available to use today?

The Orchard project is just getting started with a new codebase established October 2009. An early technical preview release is available from our Download page, and is easy to set up on your local machine using the Web Platform Installer. We have chosen to announce the project in these early stages in order to enlist community participation and feedback, so that we can publicly validate our designs and development approach as the project evolves.

Who is the audience for the Orchard effort? Are you focused on developers, users, or both?

Orchard seeks to appeal to a variety of audiences, from end-users who want to quickly build a site using only an application's interface, to designers, scripters and developers who want to extend the application though markup or code customizations. At this early stage of the project, we are primarily engaging with a .NET developer audience. As the project evolves, we’ll gradually expand the circle of feedback to include additional audiences.

Will Orchard applications run well in shared hosting environments?

Orchard is tailored for today’s shared hosting environments, where users potentially have less control over what software is running on the server. As an open source solution, Orchard will retain the flexibility to run on a number of different technologies, making it suitable for a wide range of hosters running different platforms or database servers. In dedicated hosting environments where it is possible to run the entire Windows, .NET + IIS + SQL Server stack, SharePoint offers an optimized solution that takes advantage of the unique strengths of this combined platform.

How does Orchard compare with DotNetNuke®? What is Microsoft’s relationship with existing partners?

DNN is a mature and successful .NET-based project, a key partner for Microsoft, and a vital contributor to the .NET open source ecosystem. Our hope is that new technology investments made by Orchard will serve existing applications like DNN in the long run, and ultimately provide infrastructure and components that our partners can leverage to enrich their own offerings.

Orchard aims to help our .NET partners, not to compete directly with them. Orchard is already working with several partners in the .NET open source space, including DNN, to identify opportunities to work together for mutual benefit. In addition to providing shared infrastructure that can be leveraged within existing apps, we will continually seek opportunities for the Orchard team to contribute to existing projects and help our partners be successful in achieving their own goals. Orchard’s extensibility model also presents partners with another vehicle for delivering their solutions and expanding their audience.

What about Oxite? Aren’t they building a CMS application too? How does Oxite relate to the Orchard effort?

Oxite started out as a blogging engine to support the Mix ’09 conference website, and has since evolved into a mature open source project in its own right. Oxite recently began introducing general extensibility support (modules, plug-ins) and some lightweight CMS content-editing features, and Orchard began partnering with them to share scenarios and code. Ultimately we concluded our efforts were better served by working together, and two of the principal developers on Oxite, Erik Porter and Nathan Heskew, have officially joined the Orchard team. Together we will take the lessons learned from early Orchard prototyping and Oxite development, borrowing code where appropriate from those efforts, to deliver a fundamentally new architecture that is the Orchard CMS. We have deliberately chosen to start development anew, with the guidance and contribution from the community, rather than build on the existing code, in order to involve the community up-front as well as create a sustainable architecture that can meet the ambitious Orchard project goals. Over time we expect Orchard to become a successor to Oxite v1 and we will be sure to provide a migration path for users of that application.

What are your primary goals with the project?

Our primary aim with the Orchard project is to seed the .NET ecosystem with freely available open source applications, as well as help .NET developers building new applications by providing components they can leverage and extend. Ultimately, we want to help foster a vibrant open source community on the Microsoft Windows and .NET platform and extend the reach of this platform to new audiences.

Does Orchard belong to Microsoft?

No. Orchard is an independent project created by a team of Microsoft developers who are passionate about open source. Like any open source project, we intend to expand the project through community contributions and enlist new members from many different organizations.

What is Orchard’s relationship to the Outercurve Foundation?

The Outercurve Foundation was established to enable free exchange of code between software companies and open source communities, and particularly to help commercial software companies to participate in open source. There are many individuals within Microsoft that are passionate about open source, and the CodePlex Foundation provides a new and exciting channel for Microsoft project teams to engage in an open source model. The CodePlex Foundation recently announced project acceptance guidelines where individual projects will be accepted as part of galleries sponsored by organizations, e.g. a commercial entity like Microsoft, or the Foundation itself. Although no specific projects have been accepted that this time, we are hopeful that Orchard will be among the set of projects to be considered and are actively engaging with the Foundation to explore this possibility.

Why will Orchard build new applications, when there are several existing .NET applications that are already widely used? Does Orchard aim to compete with these applications?

One of the primary goals for Orchard is to enable applications to be easily composed together and to allow them to share common infrastructure such as plug-ins, themes, navigation, and administrative features. Although many existing applications share such features conceptually, very few actually share implementation such that they could be easily combined. By building some applications in tandem with the infrastructure, we think we’ll identify better scenarios and requirements for the shared pieces that disparate applications need in order to interoperate. We are also working with partner applications to determine how their current architectures can benefit from Orchard’s efforts, and understand how they could leverage the modules, components, and extensions that Orchard aims to build. For example, if we create a commerce module that is easily pluggable into an Orchard-enabled application, we would like to make it possible for that module to be used throughout other.NET applications too. We think we need to both build apps and work with existing apps in order to achieve Orchard’s goals, and our aim is to help the application community, not to compete with it.

How does the Orchard Commerce or CMS application relate to Microsoft products like SharePoint and Commerce Server?

The Orchard CMS application aims to provide a free solution targeted primarily at the open source community, driven by the community’s needs and direction. In contrast to Microsoft SharePoint™, Orchard will be a focused entirely on creating Internet-facing content websites quickly, and will not target scenarios such as internal business portal solutions for Enterprise intranet sites or team-oriented features like document sharing and collaboration. Orchard will also provide simpler features for extensibility and customization that require little or no knowledge of the code or architecture of the application, appealing to a typical Web scripter or breadth developer, who often knows little more than HTML, CSS, and JavaScript, and is not a programmer by trade. Similarly, the Orchard Commerce offering aims to provide a low-end, free solution to shop owners who want to create an Internet-facing storefront quickly, and who do not need the depth of features that a commercial product like Commerce Server offers, such as integration with existing business applications (such as SharePoint), and/or existing backend systems (such as SAP). As customer sites need to scale to the richer features that SharePoint and Commerce Server provide, Orchard will provide an on-ramp and migration guidance into those more full-featured solutions.

How does Orchard compare with DotNetNuke®? What is Microsoft’s relationship with existing partners?

DNN is a mature and successful .NET-based project, a key partner for Microsoft, and a vital contributor to the .NET open source ecosystem. Our hope is that new technology investments made by Orchard will serve existing applications like DNN in the long run, and ultimately provide infrastructure and components that our partners can leverage to enrich their own offerings.How does Orchard compare with DotNetNuke®? What is Microsoft’s relationship with existing partners?

Orchard aims to help our .NET partners, not to compete directly with them. Orchard is already working with several partners in the .NET open source space, including DNN, to identify opportunities to work together for mutual benefit. In addition to providing shared infrastructure that can be leveraged within existing apps, we will continually seek opportunities for the Orchard team to contribute to existing projects and help our partners be successful in achieving their own goals. Orchard’s extensibility model also presents partners with another vehicle for delivering their solutions and expanding their audience.

What about Oxite? Aren’t they building a CMS application too? How does Oxite relate to the Orchard effort?

Oxite started out as a blogging engine to support the Mix ’09 conference website, and has since evolved into a maturing open source project in its own right. Oxite recently began introducing general extensibility support (modules, plug-ins) and some lightweight CMS content-editing features, and Orchard began partnering with them to share scenarios and code. Ultimately we concluded our efforts were better served by working together, and as of this month two of the principle developers on Oxite, Erik Porter and Nathan Heskew, have officially joined the Orchard team. Together we will take the lessons learned from early Orchard prototyping and Oxite development, borrowing code where appropriate from those efforts, to deliver a fundamentally new architecture that is the Orchard CMS. We have deliberately chosen to start development anew, with the guidance and contribution from the community, rather than build on the existing code, in order to involve the community up-front as well as create a sustainable architecture that can meet the ambitious Orchard project goals. Over time we expect Orchard to become a successor to Oxite v1 and we will be sure to provide a migration path for users of that application.

Your roadmap looks pretty ambitious. How much of this is implemented today? What is your expected timeline to deliver on the stated vision?

The Orchard project is just getting started. We spent a few months in the ASP.NET team staffing up and doing exploratory development to prototype some extensibility concepts such as plug-ins, themes, and widgets. In parallel, the Oxite project developed very similar concepts (and even sharing some of our initial prototype code). From our respective experiences and with the combined resources from Oxite and ASP.NET joining together to form the Orchard core team, we believe we are well-positioned to deliver on our stated ambitious feature set. The team recently began working on a fresh codebase (new as of October) to take the best of these ASP.NET prototyping efforts and lessons learned from Oxite v1 to start working on our first application, the Orchard CMS.

We have chosen to announce the project in these early stages in order to enlist community participation and feedback, so that we can publicly validate our designs and development approach as the project evolves. Based on the scope of our current roadmap/vision, we expect the Orchard CMS application to be delivered over approximately 12-18 months development time for a small-to-medium sized core team applied full-time to the project.

Is a goal for Orchard to showcase or promote specific Microsoft technologies? Are you creating best-practices guidance for these technologies?

Orchard is not a set of best practices or guidance. Different applications have different architecture needs and audiences, and the Orchard approach to building an application may or may not fit with your needs. Orchard is targeting an audience of breadth developers, and seeks to hide architectural complexity under a simple and approachable extensibility model – this requirement alone changes the way we will approach application architecture, and we may break from conventional architectural wisdom to achieve this simplicity. Of course, we will follow clean coding and testing practices, but we are willing to favor desired user experience over architectural purity if they come into conflict, though we believe the two generally go hand in hand. We believe that the Microsoft Web Platform is an excellent foundation for building modern, rich, and scalable Web applications, and we’ll certainly leverage the best of Microsoft technologies to deliver a comprehensive solution. However, it is not an explicit goal to showcase or promote any specific Microsoft technology (other than the very high-level goal of promoting .NET-based application development). We will use Microsoft technologies where they make sense and align with our needs, and we will use non-Microsoft technologies as well.

Is Orchard only for developers using ASP.NET MVC? Can WebForms-based applications benefit from Orchard?

The Orchard project aims to build both applications and a set of shared components for building and extending applications. Although we’ve chosen to build the Orchard applications on the ASP.NET MVC framework (in particular for its flexible rendering, routing, separation of concerns, and testability), we expect many of the shared components delivered by Orchard are equally suitable for using in an ASP.NET WebForms application. For example, our initial prototype of the Orchard plug-in engine (for adding extensibility to a Web application) has no dependency on MVC, and would be re-usable within a WebForms application. As the project evolves, we’ll continue to consider how additional Orchard infrastructure components can usable outside of the MVC model.

How can I contribute to Orchard? In particular, do you have the ability to accept source code contributions from the community?

The Orchard project aims to be a community-driven project from its inception, and relies upon community contributions in the form of code, feedback, and feature suggestions. We are working on defining the contribution model and will announce the details very soon.

How will Orchard contribute to helping existing .NET open source projects? In other words, what does the “helping hand” portion of your mission statement really mean?

Orchard is not just about building new apps or an application framework. It also seeks to recognize the great work that is already happening in the .NET community, and to provide a “helping hand” to existing projects in whatever way it can. This may come in the form of direct contribution, such as code, funding, or developers, or indirect contribution, such as driving awareness of community solutions through marketing and advertising, and recognizing those individuals who are advancing the .NET platform through open source solutions. Orchard also aims to bring together people with a common interest in .NET-based open source and provide a venue for discussion and collaboration (such as arranging conference events or facilitating user group discussions). We are reaching out to partners today to identify specific opportunities and we welcome your input.

How does Orchard plan to differentiate itself from other OSS application offerings, either .NET-based or on competitive platforms? What is Orchard’s unique value proposition?

We think that one of the key differentiators for Orchard is the potential for applications to be composed together and to share infrastructure and extensions such as modules, themes, and plug-ins. We hope to achieve this in a way that respects the individual architectures of applications while also providing some standardized ways for apps to interoperate in a loosely-coupled fashion. We believe that .NET applications can be “better together” if this is done correctly. Other differentiating features for Orchard applications may include first-class support for mobile front-ends, the ability to run under a cloud-based hosting solution such as Azure, and/or social networking features that increase the value of applications in proportion to users or installed instances of the app.

What do you mean by community-driven software? How is the community factored into your planning and development?

Our goal is to conduct the Orchard project as transparently as possible, to ensure the community is involved in every aspect of the project, including defining the vision, setting project priorities, proposing designs, and implementing features. We are committed to ensuring that no part of the project is developed “behind closed doors.” All design proposals and specs are posted to a publicly available and user-editable wiki, all development is performed against a public source code repository, daily check-ins are visible to everyone, and the bug and issue tracker databases are open to community submissions and comments. We are currently working on establishing our contribution model and will eventually establish a public mailing list for project-related discussions.

What is your policy on using third-party OSS software (i.e. not developed at Microsoft) to support Orchard’s goals?

We welcome inclusion of third-party solutions into Orchard, to the extent that they align with the project goals. We have no desire to reinvent technology that is already developed and widely adopted by the community, and we recognize that leveraging existing solutions allows us to focus our development efforts on features that support Orchard’s unique value proposition. As with any project, we must consider our dependencies carefully and understand how those dependencies potentially impact adopters of Orchard technology, including license considerations, versioning, and support. We are using some external libraries today and plan to evaluate other third-party solutions as we go forward with development.

Why have you chosen the revised BSD license for Orchard?

To encourage the broadest possible adoption, we’ve chosen a very permissive license that should allow many different types of projects to create derivative works based on Orchard. The revised BSD license is OSI-approved, DFSG-compliant, proprietary-compatible, and GPL-compatible, making it a solid choice for encouraging projects of many types of leverage the Orchard project.

The Orchard mission appears very supportive of a free, open source ecosystem. Do you also plan to support the commercial software ecosystem?

We specifically chose a permissive, proprietary-compatible license to enable free and commercial projects alike to benefit from the Orchard effort. We definitely envision a number of commercial opportunities to emerge out of Orchard, including derivative commercial applications with value-added features and commercial plug-in extensions to Orchard applications.

Do Orchard plans include improving support and pricing for Windows shared hosting options?

Free and low-priced hosting options for Windows-based Web applications are certainly a necessary prerequisite for Orchard applications to succeed and gain widespread adoption. Although it is not within the core charter of the Orchard team to define license terms and pricing for hosting service providers, we intend to partner with hosters and hosting-related groups within Microsoft to ensure that Orchard application hosting is both available and affordable.

Who is the audience for the Orchard effort? Are you focused on developers, users, or both?

Orchard seeks to appeal to a variety of audiences, from .NET developers, to Web scripters and designers, to end-users. The Orchard infrastructure components are squarely aim at the first audience, namely .NET developers who are building application solutions today and are well-versed in managed code and the .NET platform. The model for building Orchard application extensions, however, must appeal to a broader audience, such as Web designers and scripters who may not be programmers by trade, but are skilled in Web standards (HTML, CSS) and scripting languages. Finally, the Orchard applications themselves must appeal to a broad range of end-users with no programming knowledge whatsoever, and enable these users to create, customize, and manage application functionality and content entirely through the application interface. At this early stage of the project, we are primarily engaging with the .NET developer audience. As the project evolves and more of the extensibility model and application functionality is defined and implemented, we’ll be validating our approach with breadth developers and end-users, expanding the circle of feedback to include these audiences.

Is Orchard building a framework or applications, or both? To you plan to focus on one over the other?

The stated goal of the project is to deliver both reusable components as well as applications, but we are focused initially on the CMS application and associated end user experience as a way to derive the necessary framework infrastructure the application needs. Over time we will transition focus more to reusability of Orchard infrastructure for building new applications.

As Orchard is a Microsoft-initiated effort, isn’t this all about promoting Windows?

Well, yes. :-)