Orchard Pros

Orchard Pros on Show Orchard
Category Community Developer IDeliverable

Give us some background on IDeliverable and the services that your offer

IDeliverable was founded late 2013 by a group of like-minded individuals with a true passion for .NET based software development and cloud computing. We provide software development, consulting and training within our three areas of focus:

  1. .NET software development
  2. Microsoft Azure
  3. Orchard CMS

Tell us a bit about Orchard Pros and why the site was built

Orchard Pros is a community website where Orchard developers can find high quality support when they get stuck and/or have questions about Orchard, technical or not. It is similar to Stack Overflow in the sense that users get to ask questions, provide answers, earn points and build a reputation, but is 100% focussed on Orchard and is more flexible in terms of what types of questions can be asked we think.

The reason we created this site is that we wanted to take Orchard support to the next level, creating an additional incentive to experienced Orchard developers to offer support in the form of reputation and bounties (in the form of actual currency), with the ultimate goal of sharing knowledge and expertise and increasing Orchard’s adoption. We spend a lot of time on CodePlex helping out others, and often thought to ourselves: man, if only we could earn some points with this and gain some level ups. We love games, and wanted a gamified Orchard community where people can earn titles and unlock achievements.

How do you see the site shaping people’s Orchard experience?

It is our hope that the site will give developers more confidence in the sense that there is a professional community that they can turn to when they absolutely need help and are perhaps even willing to pay for. It is also our goal to help increase their own knowledge of Orchard development, ultimately building a strong community of Orchard developers.

What did your development workflow compromise of?

We started out building a prototype (You can have a look at this here.), defining all the screens. Once we were happy with the prototype, we started designing and implementing the theme. Once the theme was sufficiently done, we started working on the Orchard Pros module that comprises almost every bit of functionality you see on the site. Obviously it leverages whatever is there out of the box with Orchard, tying things together as needed, but also provides Orchard Pros specific screens and features, such as user registration and creating and managing tickets.

Give us an insight into how the site’s content is composed using Orchard

Content Types

The site’s content structure is essentially composed of 3 content types:

  • Page
  • Reply
    • TitlePart
    • BodyPart
    • ReplyPart (custom part)
    • AttachmentsHolder (Custom part that enables users to attach files to the content item.)
    • VotablePart (Custom part that enables users to upvote/downvote the content item.)
  • Ticket
    • AutoroutePart
    • TitlePart
    • BodyPart
    • TicketPart (custom part)
      • Categories (TaxonomyField)
      • Tags (TaxonomyField)
    • AttachmentsHolderPart
    • RepliesPart (Custom part that enables users to post replies to the content item.)
    • StatisticsPart (Custom part that stores statistical information about the content item such as view count.)
    • SubscriptionSourcePart (Custom part that turns the content item into a source of notifications that users can subscribe to.)

Workflows

  • Open Authentication (Handles signing up/in using social media accounts such as Facebook and Twitter – powered by Nicholas Mayne’s OpenAuthentication module.)
  • Signed Out (Performs a simple redirect to the homepage when the user signs out.)
  • Signed Up (Assigns the newly created user account to the Members role and sends a welcome email).

What was your favourite feature of the site to develop?

Pretty much every bit of it, really. We have fond memories of developing the ticket screens, which involved creating custom controllers, working with Orchard’s content manager API and implementing indexing (Lucene) to make the site searchable. But also the personalization area was absolute fun to do. We just love integrating with Orchard.

Give us some information about the technology stack used to power Orchard Pros and how you’ve found the sites performance

Orchard Pros runs smooth on Azure Websites on a Medium instance. We use a SQL Server database to host the tables and Blob Storage to host files uploaded by our users.

Thank you so much for taking the time to my questions, here’s the last! In your opinion, what sets Orchard apart from other CMS platforms?

We think that Orchard is the most important CMS in the ASP.NET world, not only because it is built with ASP.NET MVC, but due to its modular nature, incredibly sound architecture, performance and a simple yet attractive looking backend for web editors to work with. Also the awesome community behind it and the way Orchard is governed. It’s a great example of how open source can really work.