Blog

GPU Day case study: Migrating another Orchard 1 DotNest site to Orchard Core with smart compromises for quicker implementation

We’ve already presented a case study for the Show Orchard website focusing on migrating an Orchard 1 DotNest website to Orchard Core with content migration using the Orchard 1 Recipe Migration feature; you can read that here. Now, the GPU Day website is very similar except the content migration was simplified and we didn’t overhaul the website markup and styling. It’s a great example of how you can easily transition to Orchard Core keeping everything as is if you don’t have the time or budget to modernize every area of the site. As most of what we at Lombiq do, this project is also open-source. If you’d like to follow along, you can have a look at the theme’s source code here. This is a post by Márk Bartha, software engineer at Lombiq. Introduction GPU Day is a conference organized by the Wigner Scientific Computational Laboratory that focuses on massively parallel computing, visualization, and data analysis in both scientific and industrial applications. We also presented our Hastlayer .NET hardware accelerator project many times there too. The website serves as an information hub for these annual conferences. It was initially running on Orchard 1 DotNest, but now it was time to migrate it to Orchard Core. While these migrations always come with certain challenges due to the new features introduced in Orchard Core, we tried to keep things easy by not changing the frontend of the site, even though it's somewhat outdated. Rethinking content types Each GPU Day event needed to display various types of information, such as the schedule, speakers, and location details. Previously, with Orchard 1, this process required creating separate content items for each type of information and then linking them using the Projection or Content Elements in the Layouts editor. However, Orchard Core offered a more streamlined approach and we could simplify it. First, there was no real need for the option to organize the elements' position, so we didn’t just replace it with FlowPart. We used content fields instead, for example, the "About GPU Day" section is now just an HtmlField instead of a separate content item. For organizing the event schedule, we introduced an Event Day content type to represent each day of the event, capturing its title and date. Additionally, we created an Event content type for each specific activity, detailing its time and other relevant information. There’s another content type called Event with their details along with the date and time of it. With all this information we were able to add a BagPart called Schedule to the GPU Day type and let the admins add Event Day items. Then, there was a query responsible for fetching all the Event items where their day matches with the one set to the Event Day item. The Speaker items, similarly to the Event items, are managed separately, but we also use a Taxonomy called Year. It’s the same implementation we had on the Orchard 1 site: if the Year value matches with the one selected in the Year TaxonomyField on the GPUDay type, then a query can fetch the related speakers. Migrating the old events While we didn't utilize the migration utility, we still needed to transfer all the past events. Although there weren't many content items, recreating the events manually would have required us to also create all the speakers and scheduled programs, and there were around a hundred of them. Considering these events are already in the past, the easiest solution was to create a content type called Old GPU Day with an HtmlBodyPart and simply grab the markup from the live site. The only adjustments needed were to the image URLs. The relative paths were fine since we copied the entire media library, but in the old system, they were prefixed with "https://dotneststatic.com/”. We had to replace this with a Liquid media filter (e.g., https://dotneststatic.com/media/images/wigner-logo.png became {{ "~/mediatheme/images/wigner-logo.png" | href }}). Finally, we ensured that these are rendered exactly the same as the normal GPU Day items and that the queries listing the old events capture both the old and new ones, ensuring that a visitor won’t notice any discrepancies. Keeping the original styling completely Back then, the theme was originally built on a third-party template. We implemented multiple shape templates where the markup followed the original design. With the migration, we didn’t aim to overhaul or modernize the styling. We still wanted to use our NodeJS Extensions for asset compilation, though. So, we simply copied over the old .scss files along with the third-party assets and ensured they compiled, resulting in the same styling. It was more or less straightforward; however, we had to fix a few breaking changes with the new compiler, such as using math.div() instead of a slash (see more about this here). To keep the markup as it was, we copied the original Liquid code into their corresponding templates. The Liquid code had to be modified since it is not entirely compatible with Orchard Core, which uses a different library and set of filters. For example, the {% Href "~/Themes/GpuDay.Theme/Images/wigner-logo.png" %} code was changed to {{ "~/mediatheme/images/wigner-logo.png" | href }}. Lombiq modules and utilities involved During development, the NodeJS Extensions utility proved invaluable, as it automatically compiles all assets during the build process. The Lombiq Media Theme is an ideal choice for developing a media theme for DotNest, compiling your templates and assets into a deployable package; refer to the documentation for further details. Lastly, we used the Lombiq Privacy module to ensure GDPR compliance. Summary Migrating old websites from Orchard to Orchard Core doesn’t have to be a huge hassle if you're willing to make some compromises. We were content to use the old markup and assets, and we managed to store the entire HTML markup of the old events in an HtmlField to keep the process simple and less labor-intensive. Ultimately, the admins can now enjoy the more user-friendly content editing capabilities of Orchard Core to create this year's GPU Day event – see what Balázs Kacskovics told us about it: Our work became much easier with the new admin panel. With fewer menu items, it became much more transparent and intuitive than before. Now, finding the relevant options and content items is a simple task. Also, fewer content types mean less hassle for us, e.g. the editing of the new GPUDay content item is more efficient and less time-consuming, also we can make fewer mistakes with the new frame. If you're considering migrating your Orchard 1 website to DotNest Core, this is an excellent time. Should you have any questions or encounter challenges don’t hesitate to reach out to us. We're always ready to bring our expertise to your unique project needs. Get in touch with us today, and let's start making your Orchard Core website even better!

Interactive Orchard Core tutorials now available with Lombiq Walkthroughs

Do you want to learn about the most important Orchard Core features with a hands-on tutorial that guides you with interactive tooltips, right there in Orchard Core? We now have a module available for you! We recently added the Lombiq Walkthroughs for Orchard Core module to the selection available to all DotNest sites. This module teaches you the Orchard Core fundamentals by guiding you through step-by-step tutorials right there on the Orchard Core admin. Popups and tooltips tell you what to look for and what to do, as well as they include links to further recommended resources. Check out a demo video of this module here. And now you can use it right away on DotNest! Just create a new DotNest site, select the Walkthroughs recipe when running its setup, and you'll get a neat Orchard Core tutorial starting right on the homepage!

Show Orchard case study: Migrating an Orchard 1 DotNest site to Orchard Core

If you're looking to migrate an Orchard 1 website along with its content items to Orchard Core, whether on DotNest or any other Orchard Core website, the DotNest Core SDK and Orchard 1 Recipe Migration feature make the process straightforward. The Show Orchard website is a practical example of this, what we just migrated to Orchard Core. This is a post by Márk Bartha, software engineer at Lombiq. Introduction Show Orchard is an Orchard CMS showcase, displaying only the best Orchard Core and Orchard 1.x powered sites from around the web. It was started by Ryan Drew Burnett, now maintained by Lombiq Technologies. When we took over the project, we already implemented it on DotNest, but at that time it was an Orchard 1 site. Since DotNest fully supports Orchard Core, it was time to migrate it. However, since a lot has changed since Orchard 1, it required us to rethink a few widgets here and there, and also we had to take care of the existing content items. Do you want to jump right into the code? You're lucky since the Media Theme-based theme of Show Orchard is open-source and available here! Preparations Creating a DotNest site is most efficiently done by utilizing the DotNest Core SDK. The SDK is an actual Orchard Core website that comes equipped with a preset of features and themes that are already available on DotNest. It also activates the Media Theme feature, a tool used for hosting your theme assets and templates conveniently in the Media Library. There’s also a handy utility known as the Media Theme Deployer that takes your Liquid templates from the Views folder and assets from the wwwroot folder, packaging them into a Media Theme recipe ready for import on DotNest. We used a fork of this SDK repository for our own DotNest sites and started to develop the theme as if it were a typical Orchard Core site, always mindful of the limitations. Content types and UI components The websites and their data (e.g., URL, developer name and contact, image, category) are stored using the Website content type. The AutoroutePart is attached for the friendly URL, and the HtmlBodyPart is included for the optional interview with the developer. The configuration of this content type, including the category taxonomy, aligns with the Orchard 1 version of the content type. The header and the footer are implemented directly in the Layout.liquid file for simplicity. This approach has been effective, as it hasn’t required editing for years; if it did, we would have used a widget. The menu is implemented utilizing the Menu feature and is displayed with the Menu shape. There is a specialized Categories menu that requires additional implementation. This menu lists all the terms from the Category taxonomy, each linking to a page displaying the corresponding content items. To accomplish this, we created a new menu item content type (the stereotype being MenuItem). We then used a Query to retrieve the Category taxonomy in the menu item's shape override, displaying the term items' display link. The Queries feature proved invaluable for other components as well. For instance, the stepper on the Website content item detail pages and the listing of related Website items both leverage this feature to fetch the necessary content items. Automated styling compilation The original styling of the Show Orchard site was outdated. It was built on an old version of Bootstrap, utilized LESS for styling, and the classes didn’t follow our favored BEM conventions. To modernize and enhance the styling, we shifted to Bootstrap 5 and adopted Sass for styling. Lombiq’s Orchard Base Theme served as the foundation for the theme, offering helpful shapes, including the GoogleTag shape designed specifically for Google Analytics integration. Compilation of the assets was efficiently handled by Lombiq's Node.js Extensions utility. Migrating Orchard 1 content items to Orchard Core The Orchard 1 Recipe Migration feature in the Helpful Extensions module proved to be extremely useful for this task. It’s a feature that adds a page to your Orchard Core website where you can import an Orchard 1 recipe, converting it into an Orchard Core recipe. However, there were a few challenges encountered. We had to create IOrchardContentConverter and IOrchardExportConverter implementations to address specific data needs. These providers are designed to extend the recipe converter logic with custom logic, either per imported content or after the whole export, to carry out additional tasks. For us, it was essential to ensure the Category taxonomy terms were imported accurately, and their IDs were correctly assigned to the Category taxonomy fields. We also faced a task with the exported Media; in Orchard 1, Image and other content types represented a media item and had their ID referenced in Media Fields. In Orchard Core, it’s directly associated with a relative path to the media file. To address this, we used an IOrchardExportConverter to map the legacy IDs to the media paths and assign them to the new media fields. We decided against including the actual images with the media recipe step in the recipe, as it would result in a massive file size and a potential timeout. Uploading them manually to the appropriate Media Library folder wasn't a significant issue. Conclusion Though the Show Orchard website is simplistic in its design, migrating data and re-implementing various elements presented its own set of challenges. Nonetheless, we are pleased to announce that the site is now seamlessly operating on DotNest Core. Our next step is to transition all of our remaining DotNest sites to Core as well. If you're considering migrating your Orchard 1 website to DotNest Core, this is an excellent time. Should you have any questions or encounter challenges don’t hesitate to reach out to us. We're always ready to bring our expertise to your unique project needs. Get in touch with us today, and let's start making your Orchard Core website even better!

DotNest upgraded to Orchard Core 1.7

Orchard Core, the CMS behind DotNest sites is constantly improved by its community, including us. Now it got its v1.7 release, which is available on all DotNest sites too. The community recently released the latest 1.7 version of Orchard Core with several new features and additions! There's a new SMS and SMS Notifications module that provides a way to send SMS messages and notifications to users using SMS services. And by utilizing the new two-factor SMS Method feature, you can also transmit a two-factor authentication code to the user via SMS. And yes, this means that starting with version 1.7, Orchard Core is shipped with everything you need to secure your app with two-factor authentication. The Lucene and Elasticsearch features are capable of searching within PDF files because PDF files are indexed by default. As an enhancement, we added a new feature called Media Indexing which extends the media indexing capability to also encompass searching within files with the following extensions .txt, .md, .docx, and .pptx. And we have a lot more to cover! Check out all the details of the release in the official release notes. All of the DotNest sites can now use these new features, and the other improvements that the new version brings, because we upgraded the platform to Orchard Core 1.7 too. Actually, your site already used a pre-release version of 1.7 for a few weeks, due to us updating to it to get some bug fixes. Enjoy the latest and greatest Orchard Core version! There shouldn't be any problems apart from this obscure one, but if you notice anything, please don't hesitate to get in touch with us via our support channels.

Your DotNest site (almost) never goes down

You're trusting DotNest with your Orchard sites because you want some convenient, flexible, and reliable hosting. It's surely convenient (just a couple of clicks and you have an Orchard website running), and it brings all the flexibility of Orchard Core and Orchard 1. However, about that reliable part: How reliable is DotNest, actually? Pretty damn reliable! So, let's look behind the scenes and see some numbers. When it comes to the availability of a web app, we're talking about it serving users (requests) with correct results (i.e. not just error pages but what they're actually looking for) within some performance metrics (like if a page takes a minute to load then technically it's working but we consider the app unavailable). If it does this almost every time, then we can say it's reliable. What does this look like for DotNest? You may already know that DotNest runs on Microsoft's cloud, Azure. We collect telemetry data about how the platform performs with the Azure feature Application Insights: It's quite a useful tool to see all kinds of metrics and charts about how fast DotNest is, whether there are any errors, and all kinds of details down to the individual requests. It also immediately notifies us if something is off, even if you don't notice anything wrong with your site! But for cases when you do notice, we also use Application Insights availability tests: This pings endpoints of the platform periodically, much like an ordinary user would, and verifies that they load correctly and within 30 seconds (this is the minimum threshold that's possible to configure). It does this from multiple locations around the world, so we can also know if there are network issues. For DotNest, Azure pings the app every 5 minutes from 5 locations. A failure means that the request's response is incorrect or takes more than 30 seconds. If it fails once, then it'll try again within 20 seconds, and then once more again; the app is considered unavailable if it still fails on the third try. Here are the availability metrics of one of those endpoints for the Orchard Core sites for the last 3 months: Yeah, that's 17 failing availability checks in 3 months! The tiny blip you may notice on the chart around mid-July was because of that; this was the only outage we had, for a total of 5 minutes. Sounds pretty reliable, right? All this translates to an availability of 99.99% which is something we're quite proud of being able to provide for you! BTW the reason why checks from the East US region are the fastest is because the app is hosted in the East US data center of Azure. For the rest of the locations, it takes this much for the data to travel back and forth via the internet. If you don't done it already and want to host your sites on the hugely reliable DotNest, create your site here! We also guarantee reliability in our Terms of Service.

Cloudflare CDN and protection for all DotNest sites

If you're hosting your Orchard Core or Orchard 1 site on DotNest, you don't have to worry about a lot of things, like the basic security and speed of your site. That's kind of the point, right? Now the good news is, that we improved both the security and speed of your website with a service called Cloudflare, that you don't have to worry about either! Cloudflare is a great service that can sit in front of your site and make it a lot better by providing the following and a lot more: Automatically renewed SSL certificates so the communication between users and your site can't be eavesdropped. We already had secure connections for your sites forever, but this is even better. Speed up by utilizing Cloudflare's worldwide Content Delivery Network (CDN). When a user visits your site, instead of their browser downloading the content directly from DotNest's servers, which are on the East coast of the US, they'll now download it from one of Cloudflare's close CDN nodes. This can make things a lot faster, especially if that content was already requested by somebody else from the area, thus making it available from the local node's cache. Security features, e.g. masking e-mail addresses from spam crawlers, defending against spam pots, and offering DDoS protection. And all of this is now available for all DotNest sites! BTW if you used a custom domain, our recommendation has long been to use Cloudflare for that too. Do you want to see for yourself how a DotNest site works together with Cloudflare? Create one here for free!

Revamping Ik wil een taart: migrating an old version of Orchard Core website with custom theme and commerce logic to DotNest

Migrating the content of an old version of an Orchard Core website with a custom theme and with modifications in the business logic of the Orchard Core Commerce module to DotNest? Yes, it is possible! This case study explores how we achieved this with Ik wil een taart, a confectionery in the Netherlands, by migrating the content of the website running on the RC2 version of Orchard Core to the latest one, on DotNest. The site is a client of Princen group, which is a Dutch company, specialized in web development since 1992, offering secure, user-friendly, and scalable digital solutions. This is a post by Krisztián Németh, software engineer at Lombiq and project leader of DotNest. Theme Conversion Initially, the site had a custom theme written in the Liquid templating language and several templates added via the admin UI too. Our primary objective was to transform this into a Media Theme. First, we focused on maintaining the theme without altering the unique business logic derived from custom modifications in the Orchard Core Commerce source code. Commerce Features Enhancement As stewards for the Orchard Core Commerce project, we saw this migration as a perfect opportunity to enhance the product based on real-world feedback. We added local tax calculations, net-gross prices, integrated Stripe payments, and made other minor adjustments. These improvements and many more led to the release of versions 1.0.0 and 1.1.0 of Orchard Core Commerce. You can explore the changes and releases here. Like many other projects of ours Orchard Core Commerce also uses Node.js Extensions to handle assets, and Helpful Libraries to reduce boilerplate. And of course, as this site will be part of DotNest it uses the Privacy module also. Adding the Commerce Feature on DotNest DotNest Tenants Core didn't have the Commerce feature, so we added it and deployed it to be available for everyone who wants to create a custom site on DotNest with an Orchard Core tenant. So, feel free to do it, it's there, ready to use! Adjustments and Additions After the Media Theme was ready and the new Commerce features were implemented, it was time to adjust the view logic in the Liquid files, leading to some small modifications in the Commerce module. This was exactly the moment where it came in handy that we had a live scenario, so the Commerce module could be enhanced in a very close and fast feedback loop. The biggest challenge was to have the new Stripe payments feature included in the site's custom theme and also because of the changed business logic on how prices were calculated we had to adjust the view logic where it was needed to show prices, sum prices, and tax sums. This was done in three different areas: On the cart summary page, on the successful order page, and in the email template which is being sent after a successful order by a workflow. Content Migration Next, we moved the old content and data to the new system. We did it by exporting everything via recipes from the old site and then importing them to the new site locally. Changed some content type and content part-related settings and fields due to the fact that the old site had a bit different structure for products than we have now in Commerce. We used Helpful Extensions for the Page content type, which includes a Title Part, Autoroute Part, and Flow Part. We also used the Helpful Widgets from Helpful Extensions for its Liquid Widget and Html Widget content types. After everything was set a final export was done to be able to deploy that data to the staging environment of DotNest. Localization Finally, due to changes in shapes and the addition of parts and view elements in the Commerce module, we had to add Dutch translation to the site using PO files with the help of OrchardCoreContrib.PoExtractor and the Orchard Core documentation about localization. Conclusion All in all, the project stands as a successful case of website migration and customization, meeting unique demands. Feeling inspired by the transformation of "Ik wil een taart" and ready to take your own Orchard Core website to the next level? You're in the right place! Try out the improved Orchard Core Commerce feature on a DotNest site today! And, if you have any questions or are facing challenges similar to those we tackled in this project, don't hesitate to get in touch with us. We're always ready to bring our expertise to your unique project needs. Contact us today and let's start making your Orchard Core website even better!

Xero4PowerBI website case study: Migrating a static website to DotNest

Do you have a simple static website that you want to spice up with proper content management? Orchard Core is a CMS that you can quickly migrate to, and DotNest can host it with two clicks. This is what we did for Xero4PowerBI too! This is a post by Krisztián Németh, software engineer at Lombiq and project leader of DotNest. Introduction Xero is an excellent financial management system; however, providing access to your Xero data is difficult. Xero4PowerBI, developed by Paradigm BI, a boutique business intelligence studio, offers a cost-effective multiplatform reporting system that enables fast-paced reporting on your financial status. Paradigm BI specializes in creating insightful business intelligence tailored to your needs, making your Power BI dashboards and paginated reports work for you. Xero4PowerBI is Paradigm BI's tool that facilitates sharing financial information across your organization using bookmarks and alerts on desktop and mobile devices, creating datasets that Excel users can easily use in pivot tables and charts. The Challenge The original website of Xero4PowerBI was a simple 4-page HTML site that needed to be migrated to DotNest and Orchard Core. The goal was to create a modern, flexible, and easy-to-maintain website while preserving the existing design and functionality. The Solution Our team at Lombiq migrated the website to Orchard Core by creating the pages and templates, maintaining the original design while slightly modifying it to fit the new Orchard Core Media Theme. This allowed for a better and easier structure of zones, and we also added a simple footer. The site now can be viewed at https://xero4powerbi.com/. We set it up using the Blank Orchard Core recipe and enabled various features that were needed for the site using a predefined recipe. Mainly Lombiq Helpful Extensions were utilized for creating the Page content type, consisting of a Title Part, Autoroute Part, and Flow Part. We also used the Lombiq Helpful Extensions - Helpful Widgets feature for Liquid Widget and Html Widget functionalities. In addition to the existing site, we implemented a blog using the Orchard Core The Blog Theme as a template for blog-related content definitions. The Media Theme was exported via a zip file, created by the Media Theme deployer dotnet tool. The Media Theme, a feature developed by Lombiq, allows developers to host their themes in the Orchard Core Media Library, including templates and assets. This feature is especially useful in SaaS scenarios where full Orchard theming cannot be provided to every user, yet the theming experience must remain available. Thus, this was our go-to solution for creating a custom theme and hosting the site on our Orchard Core SaaS DotNest. The Results The successful migration to DotNest Orchard Core provided Xero4PowerBI with a modern, easy-to-use website that met their requirements. The site now offers improved functionality, flexibility, and maintainability. Mike Allen, Principal Consultant at Paradigm BI, shared his positive experience working with Lombiq for the migration: In the past I have used WordPress, Blog Engine, and hybrid .NET Razor and Blog Engine. I selected Orchard Core as my new CMS as I wanted a modern .NET platform that incorporated a blog. Creating a theme seemed difficult, so I asked Lombiq for some help, and as they say, the rest is history. I wanted a mixture of different types of widgets so that I could do HTML or Markup and the flexibility to add new features to the website. Mike Allen Services trades as Paradigm BI, a registered business name in Australia. Paradigm BI has developed Xero4PowerBI and initially had an Azure Static website. Paradigm BI is a boutique business intelligence ISV located in Brisbane, Queensland, Australia. Are you considering migrating your website to Orchard Core or looking to enhance your site's features? Don't hesitate to get in touch with us and let our expertise work for you!

Custom domains now available for your Orchard Core sites - free for open-source

Do you want to host an Orchard Core site on DotNest for your company, club, NGO, or otherwise do you want to use something like mysite.com for it? Now, this is available!For just $25/month, you can not only use your custom domain instead of the default mysite.dotnest.net one, but you can also remove the DotNest footer from it. Unlimited customization for your Orchard Core site! If you run an open-source project that you'd like to host your site for, then let us know, because we can provide you this service for free. If you had a subscription during the DotNest Core beta, using the old Orchard 1 custom domain usage service, then don't worry, your fees won't change.For more info on how you can use your custom domains, see this knowledge base article.

A personal blog with theming on DotNest - case study

You have quite a lot of options if you want to start a personal website, or something like a blog nowadays. You can use services like Medium or Substack, but my problem with those is that ultimately, you don't have complete control over how your content is published and how people may consume it. Monetization wasn't my concern either. I wanted something simple, where I can be sure that people will be able to read my quips without any of the contemporary online marketing tools intruding (hello, profiling and soft paywalls!). Having been an Orchard developer for more than a decade, perhaps let's just use Orchard Core for this too? So, I quickly created a DotNest site and got going. This is a post by Zoltán Lehóczky from Lombiq, but about his personal website. I'll spare you the suspense, here's my site if you'd like to check it out: https://lettersfromfiume.com/. As you can see, it's a blog with an About page, a search feature, and that's it. Exactly what I needed! After creating the site, I've set it up with Orchard's built-in Blog recipe. Initially, I didn't actually want to customize anything. But then I started to fiddle around, because of course I couldn't resist adjusting some things: By default, blog posts use Markdown for their editor. While I like Markdown, I thought that I'll publish more than simple text, what may necessitate adding some HTML to your Markdown anyway, so let's just start with a full HTML editor. Thus, I've added HTML Body Part to the Blog Post content type. This change required me to override the Content__BlogPost and Content_Summary__BlogPost shapes to display the text, so I did that with the Templates module from the admin. Now I wanted to add a favicon instead of the default one with the Orchard Core logo, and also add a tiny bit of CSS... At this point, things were starting to get a bit messy on the admin, and I figured that if I'm writing code, I might as well write it properly, in an IDE. So, I thought I'll utilize the recently available Media Theme approach. I followed the instructions in the DotNest Core SDK, ending up with a GitHub repository that contained an Orchard Core app with which I could run my site locally and create a proper Orchard Core theme for it. The theme is nothing too special, it used TheBlogTheme as its base theme, and contains a couple of shape overrides, a CSS file, and some graphic files. It also has a setup recipe with a snapshot of my site's content, so with the help of Orchard's Auto Setup feature, the site runs right away if I hit F5 in Visual Studio. One particularly cool feature of the whole development story is that it also uses a GitHub Actions workflow from Media Theme to automatically deploy the theme if I push to the repository. The changes are out on the production site less than 30s after I've pushed! The code is fully open-source, and you can check it out here for some inspiration. Later, I also added a search feature with Elasticsearch. This was just a matter of running Orchard's built-in "Blog - Elasticsearch Search" recipe. Overall, this was pretty straightforward. I quite enjoyed getting this little site up and running and customizing it here and there. Of course, it just scratches the surface of what DotNest can do, but this is what I needed. You can also have your own Orchard Core site running hassle-free on DotNest, create one here!