<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>
<title>Oqtane - CMS and Application Framework for Blazor and .NET MAUI</title>
<link>https://www.oqtane.org/blog</link>
<description>Oqtane - CMS and Application Framework for Blazor and .NET MAUI</description>
<item>
<title>Announcing Oqtane... a Modular Application Framework for Blazor!</title>
<link>https://www.oqtane.org/blog/!/7/announcing-oqtane-a-modular-application-framework-for-blazor</link>
<description>Oqtane was originally conceived as a proof of concept to determine if Blazor would be capable of supporting a modular application framework. Taking inspiration from DotNetNuke, it utilizes many concepts from this pionering open source .NET CMS. Specifically it supports multi-tenancy, a fully dynamic page compositing model, designer friendly skins, extensibility via third party modules, and a familiar data model. That being said this was not a migration project; Oqtane was built from the ground up using modern .NET Core patterns and technology.</description>
</item>
<item>
<title>Custom Routing In Blazor</title>
<link>https://www.oqtane.org/blog/!/8/custom-routing-in-blazor</link>
<description>Routing is essentially the &quot;brain&quot; of a web application. In a traditional ASP.NET MVC application, routing is the process of directing an HTTP request to a controller which is running on the server so that it can serve up content to a client browser. In contrast, in a single-page application (SPA), the router responds to navigation actions directly in the client browser without making a request to the server to fetch new content. In both cases, routers utilize route templates which are basically patterns that describe the locations to match in order to trigger a specific rendering.</description>
</item>
<item>
<title>Dynamic Components In Blazor</title>
<link>https://www.oqtane.org/blog/!/9/dynamic-components-in-blazor</link>
<description>Blazor applications are based on components. A component is an element of UI that handles user events and defines flexible UI rendering logic. One the most significant benefits of components is that they promote a high level of code reusability. Under the covers, components are .NET classes written in the form of a Razor markup page with a .razor file extension. Razor is a syntax for combining HTML markup with C# code designed for developer productivity. Razor components are compiled into .NET assemblies that can be shared and distributed as Nuget packages. At run-time components render into an in-memory representation of the browser DOM called a &quot;render tree&quot; that is used to update the UI in a flexible and efficient way.</description>
</item>
<item>
<title>Assembly Loading in Blazor and .NET Core</title>
<link>https://www.oqtane.org/blog/!/11/assembly-loading-in-blazor-and-net-core</link>
<description>In the vast majority of cases when you are using Blazor you will never need to worry about assembly loading. However in a modular framework like Oqtane, where you need to be able to create independent components which are loaded dynamically at run-time, assembly loading becomes a critical requirement. And although this blog is primarily focused on Blazor, there are some fundamental aspects of assembly management in .NET Core which needs to be explained as there are obviously some dependencies in common.</description>
</item>
<item>
<title>Blazor - Blazing a Trail for .NET Web Developers</title>
<link>https://www.oqtane.org/blog/!/12/blazor-blazing-a-trail-for-net-web-developers</link>
<description>This past week I had the opportunity to do presentations about Blazor and Oqtane at a number of community events both locally and internationally. This required me to update my slide deck from the DNN Summit to include the latest information from Microsoft about Blazor, including clarification of the client vs. server hosting models, release schedule, and more technical details about how the technology works under the covers. And now that Oqtane has been officially released as an open source project, it also allowed me to include some information about why I created the project, the technical goals of the original proof of concept, and the reception by the .NET community.</description>
</item>
<item>
<title>Cascading Parameters in Blazor</title>
<link>https://www.oqtane.org/blog/!/13/cascading-parameters-in-blazor</link>
<description>Blazor components can accept parameters that are used to pass information from a parent component to a child component. This is a powerful feature however in a real-world application such as Oqtane where you may have many layers of nested components, it can be quite cumbersome and verbose if you need to pass a parameter value explicitly through all of the hierarchical layers. Cascading parameters solve this problem by providing a convenient way for an ancestor component to provide a value that is then available to all descendent components.</description>
</item>
<item>
<title>Exploring Authentication in Blazor</title>
<link>https://www.oqtane.org/blog/!/14/exploring-authentication-in-blazor</link>
<description>Those of us who have been closely following the evolution of Blazor over the past year have been eagerly awaiting some official guidance from Microsoft in regards to application security. This was finally delivered in the .NET Core 3 Preview 6 release in June where they included some new components, examples, and docmentation related to implementing authentication and authorization in Blazor applications.</description>
</item>
<item>
<title>Calling A Child Component Method From A Parent Component In Blazor</title>
<link>https://www.oqtane.org/blog/!/15/calling-a-child-component-method-from-a-parent-component-in-blazor</link>
<description>Based on the hierarchical model in Blazor, it is trivial to call a method in a parent component from within a child component. But what if you want to do the opposite? A use case for this type of scenario might be a data entry form where a variety of different sections are rendered as child components; however, there might only be a single Submit button for the form which is inside the parent component. So when a user clicks Submit the application may want to call a method in each child component to perform validation or even save the information to a database. Let&#39;s explore a few different options to accomplish our goal.</description>
</item>
<item>
<title>.NET Rocks - Building Applications using Server-Side Blazor</title>
<link>https://www.oqtane.org/blog/!/16/net-rocks-building-applications-using-server-side-blazor</link>
<description>It was an honor being a guest on the show again after an 8 year hiatus... Richard Campbell and Carl Franklin continue to provide the creative insight and passion which makes .NET Rocks! the premiere podcast for Microsoft .NET developers worldwide. This episode focused on Blazor and Oqtane.</description>
</item>
<item>
<title>File Upload in Blazor</title>
<link>https://www.oqtane.org/blog/!/17/file-upload-in-blazor</link>
<description>Uploading files is a very common requirement in most web applications however Blazor does not currently have a native file upload component. Steve Sanderson blogged about this a few weeks ago and even posted a sample project on Github. Oqtane has a need to upload module and theme packages for installation at run-time so we had also implemented our own solution some time ago - which I was happy to discover closely aligned with the approach suggested above.</description>
</item>
<item>
<title>Oqtane vs DNN</title>
<link>https://www.oqtane.org/blog/!/19/oqtane-vs-dnn</link>
<description>The question of Oqtane vs DNN has come up numerous times in recent months. In general it seems that people are trying to understand the rationale behind creating a completely new open source project as opposed to evolving the existing DNN project. In order to answer this question it is helpful to step back in time and review the events which got us to where we are today.</description>
</item>
<item>
<title>Oqtane Philosophy</title>
<link>https://www.oqtane.org/blog/!/20/oqtane-philosophy</link>
<description>Most products are created with some core principles in mind. These principles provide a central theme for all major product decisions. The theme for Oqtane is &quot;performance&quot; which is highlighted by the Oqtane brand name whose root word &quot;octane&quot; is a standard measure of the performance of engine fuel. Performance is a general attribute and for a framework like Oqtane it needs to encompass a wide variety of characteristics such as the speed of installation, familiarization, development, deployment, and interac</description>
</item>
<item>
<title>Migrating from DNN to Oqtane</title>
<link>https://www.oqtane.org/blog/!/21/migrating-from-dnn-to-oqtane</link>
<description>In previous blog posts I have said that Oqtane was &quot;heavily influenced and inspired&quot; by DNN. I realize this statement is rather vague so I thought it may be helpful to provide a bit more detail in order to help clarify the similarities and differences.</description>
</item>
<item>
<title>Announcing Oqtane 1.0... a Modular Application Framework for Blazor!</title>
<link>https://www.oqtane.org/blog/!/22/announcing-oqtane-1-0-a-modular-application-framework-for-blazor</link>
<description>Strategically timed with Microsoft BUILD 2020 and the release of .NET Core 3.2... we are pleased to announce the official 1.0 release of Oqtane, an open source Modular Application Framework for Blazor.</description>
</item>
<item>
<title>Oqtane Builds Momentum With 1.0.1 Release</title>
<link>https://www.oqtane.org/blog/!/23/oqtane-builds-momentum-with-1-0-1-release</link>
<description>Since releasing Oqtane 1.0 at Microsoft BUILD 2020, the response by the .NET community has been tremendous. We attribute this phenomenon partly to the excitement around Blazor WebAssembly and partly to the fact that Oqtane offers a unique value proposition for modular software development which has really struck a chord with developers worldwide. In the past month there has been a total of 57 pull requests submitted by 8 different contributors, pushing the total number of project commits over 1000, and sowing the seeds for a passionate project ecosystem.</description>
</item>
<item>
<title>Installing Oqtane on IIS</title>
<link>https://www.oqtane.org/blog/!/24/installing-oqtane-on-iis</link>
<description>It is possible to install Oqtane without using Visual Studio. However in order to do this you need to become familiar with the specifics of hosting a Blazor application. In this article we will install an Oqtane release locally on a Windows 10 machine using IIS.</description>
</item>
<item>
<title>Upgrading Oqtane</title>
<link>https://www.oqtane.org/blog/!/25/upgrading-oqtane</link>
<description>It is recommended that you upgrade Oqtane on a regular basis in order to ensure you are running the latest framework version. Running the latest version provides you with the latest fixes and features, and also helps protect your installation from security vulnerabilities. As a result it is our goal to make the upgrade process as automated and streamlined as possible. </description>
</item>
<item>
<title>Announcing Oqtane 2.0 for .NET 5</title>
<link>https://www.oqtane.org/blog/!/26/announcing-oqtane-2-0-for-net-5</link>
<description>Strategically timed with the release of .NET Conf 2020 and .NET 5... we are pleased to announce the official release of Oqtane 2.0, an open source Modular Application Framework for Blazor.</description>
</item>
<item>
<title>Oqtane 2.0.1 Now Available</title>
<link>https://www.oqtane.org/blog/!/27/oqtane-2-0-1-now-available</link>
<description>Since releasing version 2.0 in coordination with the .NET 5 launch event at .NET Conf, Oqtane has continued to mature and gain momentum. As expected, broader adoption has revealed opportunities for improvement and led to more user feedback on how to enhance the framework to improve its resiliency and cater to additional use cases.</description>
</item>
<item>
<title>Oqtane 2.0.2 Released</title>
<link>https://www.oqtane.org/blog/!/28/oqtane-2-0-2-released</link>
<description>Oqtane has been receiving plenty of exposure in recent months and was featured on the .NET Community Standup with Safia Abdalla and Jon Galloway on April 13. The 2.0.2 release contains a variety of user experience improvements for both software developers and end users.</description>
</item>
<item>
<title>Oqtane 2.1 Is Now Database Agnostic</title>
<link>https://www.oqtane.org/blog/!/29/oqtane-2-1-is-now-database-agnostic</link>
<description>Hot on the heels of Microsoft BUILD 2021 we are pleased to announce the official release of Oqtane 2.1, a new major release of the popular modular application framework for Blazor, adding multi-database support to its growing list of framework capabilities.</description>
</item>
<item>
<title>Oqtane 2.2 Upgrades To Bootstrap 5</title>
<link>https://www.oqtane.org/blog/!/30/oqtane-2-2-upgrades-to-bootstrap-5</link>
<description>Since the inception of the project, Oqtane has always tried to stay true to its overarching philosophy which is primarily focused on speed and performance. The Oqtane 2.2 release continues with this trend by receiving some notable improvements in the user interface area.</description>
</item>
<item>
<title>Oqtane 2.3 Lays Foundation For Commercial Ecosystem</title>
<link>https://www.oqtane.org/blog/!/31/oqtane-2-3-lays-foundation-for-commercial-ecosystem</link>
<description>One of the most important aspects in the long-term success of any platform is the size of its commercial ecosystem. Essentially a commercial ecosystem is made possible by three fundamental capabilities: a platform, an extensibility model for creating and integrating custom features, and a distribution service for making the custom features easily discoverable and consumable by end users and monetizable by developers. Up until recently Oqtane had mostly focused on the platform and extensibility model; however as these have matured, it has become time to devote some energy to the distribution service.</description>
</item>
<item>
<title>Announcing Oqtane 3.0 for .NET 6</title>
<link>https://www.oqtane.org/blog/!/32/announcing-oqtane-3-0-for-net-6</link>
<description>Strategically timed with the release of .NET 6 and .NET Conf 2021... we are pleased to announce the official release of Oqtane 3.0, an open source Modular Application Framework for Blazor.</description>
</item>
<item>
<title>Oqtane 3.0.1 Released</title>
<link>https://www.oqtane.org/blog/!/33/oqtane-3-0-1-released</link>
<description>Since releasing version 3.0 in coordination with the .NET 6 launch event at .NET Conf, Oqtane has continued to attract industry attention and increase adoption. The 3.0.1 release contains a variety of useful enhancements for both software developers and administrators.</description>
</item>
<item>
<title>Oqtane 3.0.2 Released</title>
<link>https://www.oqtane.org/blog/!/1/oqtane-3-0-2-released</link>
<description>Oqtane continues to evolve and find new ways to serve the needs of the Microsoft community... both as a modular application framework for developers as well as a platform for supporting .NET community initiatives such as Built On Blazor! and .NET Foundation Project Trends.NULL</description>
</item>
<item>
<title>ErrorBoundary and Logging in Blazor</title>
<link>https://www.oqtane.org/blog/!/34/errorboundary-and-logging-in-blazor</link>
<description>Recently I was a guest on the Azure DevOps Podcast where the focus of the episode was Blazor and Oqtane. The discussion was completely unscripted and the conversation flowed from one technical topic to the next... faciliated by the host, Jeffrey Palermo, who asked a variety of insightful questions he felt the audience may be interested in exploring. One of the questions was related to the new ErrorBoundary component in Blazor which was introduced in .NET 6.</description>
</item>
<item>
<title>Oqtane 3.0.3 Released</title>
<link>https://www.oqtane.org/blog/!/35/oqtane-3-0-3-released</link>
<description>Oqtane has been focusing on its runtime capabilities in recent releases, optimizing framework performance and expanding its features in external-facing web scenarios. The 3.0.3 release continues with this theme and includes refinements which are a direct result of production dogfooding experiences with Oqtane.Org, Built On Blazor, and .NET Foundation Project Trends.</description>
</item>
<item>
<title>User Management Improvements</title>
<link>https://www.oqtane.org/blog/!/36/user-management-improvements</link>
<description>The primary authentication method available in Oqtane was traditionally based on using a local user account via the standard .NET Core Identity provider. However Oqtane used a customized user interface to enable the client to be written using native Blazor components. The 3.1 release adds a variety of additional features in the user management area to bring it up to par with the standard server-side features.</description>
</item>
<item>
<title>OAuth 2.0 and OpenId Connect</title>
<link>https://www.oqtane.org/blog/!/37/oauth-2-0-and-openid-connect</link>
<description>Oqtane 3.1 adds support for integrating with an OAuth 2.0 or OpenID Connect provider for external login integration - both of which are international standards that are widely used for enterprise IT security.</description>
</item>
<item>
<title>Site Migrations &amp; Deployment</title>
<link>https://www.oqtane.org/blog/!/38/site-migrations-deployment</link>
<description>A common requirement in Oqtane is the need to identify changes for a specific site in your multi-tenant installation and deploy these changes into another environment. Oqtane 3.1 introduces a new Site Migration capability which allows you to codify the changes you wish to make to a specific site using an approach which is similar to EF Core data migrations and have the changes automatically applied on startup.</description>
</item>
<item>
<title>Backend for Frontend (BFF) Architecture</title>
<link>https://www.oqtane.org/blog/!/39/backend-for-frontend-bff-architecture</link>
<description>The latest guidance from the IETF is that SPA applications which have a back-end should use the Backend for Frontend (BFF) architectural pattern. Oqtane uses the BFF architectural approach - both when running on Blazor WebAssembly and Blazor Server.</description>
</item>
<item>
<title>INotifyPropertyChanged</title>
<link>https://www.oqtane.org/blog/!/40/inotifypropertychanged</link>
<description>One of the most common questions asked by new Blazor developers is how do you communicate between components? Essentially this questions boils down to state management... and the answer is that it depends on what you are trying to accomplish as there are many different solutions to consider, each catering to different UI scenarios.</description>
</item>
<item>
<title>Oqtane 3.1 Released</title>
<link>https://www.oqtane.org/blog/!/41/oqtane-3-1-released</link>
<description>Thirty years ago this week Microsoft released Windows 3.1, the operating system which became the first version of Windows to be widely distributed with new PCs and cemented the dominance of Microsoft on the desktop in the decades to follow. In homage of this great achievement, we are extremely excited to announce the release of Oqtane 3.1.</description>
</item>
<item>
<title>Customizing Antiforgery Behavior For Cookies And Bearer Tokens</title>
<link>https://www.oqtane.org/blog/!/42/customizing-antiforgery-behavior-for-cookies-and-bearer-tokens</link>
<description>The most common way of implementing Antiforgery is by using the [ValidateAntiForgeryToken] action filter on your actions or controllers (this is enabled by default on Razor Pages). However if your application supports multiple types of authorization it has some challenges. This dual authorization approach is common with APIs where you have a same-domain web application that relies on cookies but also supports external clients connecting via bearer tokens.</description>
</item>
<item>
<title>Antiforgery and Blazor</title>
<link>https://www.oqtane.org/blog/!/43/antiforgery-and-blazor</link>
<description>The key to understanding Antiforgery is that it is directly linked to the user&#39;s identity. This means that the antiforgery token and cookie that are generated by .NET Core are only valid for a specific user running in a specific context. So each time a user&#39;s identity changes ( ie.login/logout) new antiforgery tokens and cookies need to be generated for them to remain valid. This post explores how to resolve this challenge in a Blazor application.</description>
</item>
<item>
<title>Oqtane 3.1.1 Released</title>
<link>https://www.oqtane.org/blog/!/44/oqtane-3-1-1-released</link>
<description>The 3.1.1 release is primarily focused on stabilization, ensuring that all of the features introduced in 3.1 function as optimally as possible. This includes improvements to external login to include email verification logic for existing user accounts, improvements for retreiving user identifier claims, and the ability to customize your authentication cookie name for each site.</description>
</item>
<item>
<title>Blazor Server and Hot Reload Challenges</title>
<link>https://www.oqtane.org/blog/!/45/blazor-server-and-hot-reload-challenges</link>
<description>Hot Reload was introduced in .NET 6 and it is enabled by default in the latest versions of Visual Studio. The idea behind Hot Reload is that developers can modify code assets in their project and those changes will be immediately reflected in their run-time development environment. However there is some unexpected behavior you should be aware of.</description>
</item>
<item>
<title>Oqtane 3.1.2 Released</title>
<link>https://www.oqtane.org/blog/!/46/oqtane-3-1-2-released</link>
<description>The 3.1.2 release is primarily focused on stabilization. This includes critical fixes to a number of key scenarios including file uploading, MySQL database support, and creating new isolated tenants.</description>
</item>
<item>
<title>Blazor and Micro Frontend Applications (MFE)</title>
<link>https://www.oqtane.org/blog/!/47/blazor-and-micro-frontend-applications-mfe</link>
<description>Microservices have exploded in popularity in the past decade, with many organizations attempting to use this architectural approach to avoid the limitations of large, monolithic systems. While much has been written about using this approach to decompose the backend of enterprise software applications, many companies continue to struggle with how to manage the frontend.</description>
</item>
<item>
<title>Oqtane 3.1.3 Released</title>
<link>https://www.oqtane.org/blog/!/48/oqtane-3-1-3-released</link>
<description>The 3.1.3 release is primarily focused on stabilization. This includes a variety of user experience improvements, localization enhancements, and support for an Unauthenticated User role to enable targeted interactions with visitors.</description>
</item>
<item>
<title>Oqtane 3.1.4 Released</title>
<link>https://www.oqtane.org/blog/!/49/oqtane-3-1-4-released</link>
<description>The 3.1.4 release is primarily focused on stabilization. This includes a variety of performance optimizations, user experience improvements, and localization enhancements. Based on the fact that performance is one of overarching goals for the framework, we conducted some load testing and optimized the most frequently executed methods both from a client and server workload perspective.</description>
</item>
<item>
<title>Oqtane 3.2 For .NET MAUI &amp; Blazor Hybrid</title>
<link>https://www.oqtane.org/blog/!/50/oqtane-3-2-for-net-maui-blazor-hybrid</link>
<description>The 3.2 release introduces some powerful new multi-platform capabilities based on .NET MAUI and Blazor Hybrid, as well as additional performance optimizations and developer experience improvements.</description>
</item>
<item>
<title>Blazor Client-Side Assembly Servicing</title>
<link>https://www.oqtane.org/blog/!/51/blazor-client-side-assembly-servicing</link>
<description>Blazor applications utilize a client/server architecture. This means that in the majority of Blazor hosting models, a client application is deployed to a specific client device or process which interacts with the server using standard HTTP requests. One of the biggest challenges in most client/server models is how to ensure the client stays updated with the latest fixes and improvements. Obviously the more automated and seamless this process can be from an end user perspective, the more successful it will b</description>
</item>
<item>
<title>Oqtane 3.2.1 Released</title>
<link>https://www.oqtane.org/blog/!/52/oqtane-3-2-1-released</link>
<description>The 3.2.1 release is primarily focused on stabilization. This includes performance improvements to the client startup logic for Blazor Hybrid and Blazor WebAssembly, improvements to base url handling and static resources for component resusability in .NET MAUI, support for Roles as part of OpenID Connect integrations, as well as a new capability to capture server-side events in your custom code.</description>
</item>
<item>
<title>Oqtane Server Events</title>
<link>https://www.oqtane.org/blog/!/53/oqtane-server-events</link>
<description>Oqtane has always contained a SyncManager on the server which has traditionally only been used to synchronize specific server-side events with client-side state. In Oqtane 3.2.1 this capability has now been included using the standard .NET EventHandler capability in conjunction with the SyncManager to raise SyncEvents (which inherit from the standard .NET EventArgs).</description>
</item>
<item>
<title>Oqtane 3.3.0 Released</title>
<link>https://www.oqtane.org/blog/!/54/oqtane-3-3-0-released</link>
<description>The 3.3.0 release is primarily focused on flexibility, as the permissions system has been enhanced to support a new type of API permissions that provide developers with additional opportunities to create sophisticated modern web applications. This release also includes performance optimizations, enhancements to file management, and numerous user experience improvements including the addition of a new AutoComplete component.</description>
</item>
<item>
<title>Permission Enhancements</title>
<link>https://www.oqtane.org/blog/!/55/permission-enhancements</link>
<description>The permissions system in Oqtane is an essential core service as it manages access control within the framework. As part of the the initial creation of Oqtane, certain administrative functions were identified as requiring more privileges and were therefore made available only to users in the Administrators role. Although this approach works well for many installations, there are scenarios in larger organizations where a more fine-grained approach is required for delegated administration. The Oqtane 3.3.0 re</description>
</item>
<item>
<title>Oqtane 3.4.0 Released</title>
<link>https://www.oqtane.org/blog/!/56/oqtane-3-4-0-released</link>
<description>The 3.4.0 release is primarily focused on performance, as the permissions system has been overhauled to avoid unnecessary encoding and parsing of custom access control strings. This release also includes enhancements to connection string management, numerous stabilization and user experience improvements, and the ability to dynamically generate an XML sitemap for seach engine indexing.</description>
</item>
<item>
<title>Connection String Management</title>
<link>https://www.oqtane.org/blog/!/57/connection-string-management</link>
<description>One of the areas of the framework which has created some support issues in the past is connection string managemement. .NET developers generally expect connection strings to be located in appsettings.json, so the fact that Oqtane had a master connection string in appsettings.json but maintained its tenant connection strings inside of the master database caused some confusion. This was especially problematic when troubleshooting installation issues or trying to migrate Oqtane to new infrastructure. The frame</description>
</item>
<item>
<title>Building An Ecosystem</title>
<link>https://www.oqtane.org/blog/!/58/building-an-ecosystem</link>
<description>Ever since May 2020 when I initially released Oqtane 1.0, the open source project has evolved based on the part-time contributions of myself and other community volunteers. The project has grown significantly during the past 3 years and it has now reached a stage where it needs more dedicated focus and resources in order to reach its full potential. So I am excited to announce that I have decided to make a significant career change which will allow me to devote more time to the project and community.</description>
</item>
<item>
<title>Oqtane Labs Inc and Devessence Inc</title>
<link>https://www.oqtane.org/blog/!/60/oqtane-labs-inc-and-devessence-inc</link>
<description>Professional software products require professional services. Oqtane Labs Inc is a software product company that will focus on providing dedicated leadership,  resources, and commercial services for the Oqtane Framework. Devessence Inc is a global software consultancy and an official partner for assisting clients with Oqtane implementations.</description>
</item>
<item>
<title>CSS &amp; JS Resources</title>
<link>https://www.oqtane.org/blog/!/61/css-js-resources</link>
<description>In general the philosophy in Oqtane is to encapsulate the functionality of a module or theme within the software component itself, and not rely on other external workloads for orchestration. Therefore, the recommended approach for managing Stylesheets and JavaScript is to declare them internally within your module or theme so that they are discoverable by the framework.</description>
</item>
<item>
<title>Routable Modules</title>
<link>https://www.oqtane.org/blog/!/62/routable-modules</link>
<description>Routable modules provide a declarative method where a developer can specify the configuration details of how their module should be integrated into a site. Configuration is expressed through the IModule interface and includes all of the standard attributes for pages and modules. This static definition is utilized at startup to automatically reconcile the database with all of the specified configuration details and the result is that UI is fully configured with pages and modules.</description>
</item>
<item>
<title>Announcing Oqtane 4.0 for .NET 7</title>
<link>https://www.oqtane.org/blog/!/63/announcing-oqtane-4-0-for-net-7</link>
<description>To formally recognize our migration from .NET 6 to .NET 7 we are pleased to announce the official release of Oqtane 4.0, an open source CMS and Application Framework for Blazor and .NET MAUI.</description>
</item>
<item>
<title>Oqtane 4.0.1 Released</title>
<link>https://www.oqtane.org/blog/!/64/oqtane-4-0-1-released</link>
<description>The 4.0.1 release is primarily focused on stabilization. This includes a variety of user experience improvements, developer productivity enhancements, and support for an IsRead property for Notifications.</description>
</item>
<item>
<title>Oqtane 4.0.2 Released</title>
<link>https://www.oqtane.org/blog/!/65/oqtane-4-0-2-released</link>
<description>The 4.0.2 release is primarily focused on stabilization. This includes a variety of user experience improvements, run-time environment optimizations, localization updates, and enhancements to the .NET MAUI client application for Blazor Hybrid scenarios.</description>
</item>
<item>
<title>Oqtane Marketplace Launch</title>
<link>https://www.oqtane.org/blog/!/66/oqtane-marketplace-launch</link>
<description>A platform ecosystem is a business model which allows multiple entities to create and share in the collective value of a software platform. Rather than depending on a sole provider for critical business functionality, a platform ecosystem relies on crowdsourcing to provide a wide array of complementary and innovative solutions. In return, solution providers are able to leverage an established sales channel which significantly reduces their customer acquisition cost. And the platform becomes exponentially mo</description>
</item>
<item>
<title>Dapper &amp; SQL Scripts</title>
<link>https://www.oqtane.org/blog/!/67/dapper-sql-scripts</link>
<description>One of the most common misconceptions I hear about Oqtane is that you must follow the specific conventions used in the core framework and default templates in order to develop custom solutions on the platform. This is in fact NOT correct, as Oqtane actually offers tremendous flexibility to enable developers to use their preferred methodologies and components.</description>
</item>
<item>
<title>Oqtane 4.0.3 Released</title>
<link>https://www.oqtane.org/blog/!/68/oqtane-4-0-3-released</link>
<description>The 4.0.3 release is primarily focused on stabilization. This includes a variety of performance optimizations, user experience improvements, Marketplace integration enhancements, localization updates, support for asynchronous scheduled jobs, and a new InputList component which allows users to optionally choose from a list of suggested items.</description>
</item>
<item>
<title>Oqtane On .NET Live</title>
<link>https://www.oqtane.org/blog/!/69/oqtane-on-net-live</link>
<description>On September 11, Shaun Walker was featured as a guest On .NET Live. His presentation provided an overview of the open source CMS and Application Framework that is “rocket fuel for Blazor”</description>
</item>
<item>
<title>Oqtane 4.0.5 Released</title>
<link>https://www.oqtane.org/blog/!/70/oqtane-4-0-5-released</link>
<description>The 4.0.5 release is primarily focused on stabilization. This includes a variety of user experience improvements, Marketplace integration enhancements, localization updates, and a new User Import capability which automates the migration of user accounts from other systems or environments.</description>
</item>
<item>
<title>Importing Users</title>
<link>https://www.oqtane.org/blog/!/71/importing-users</link>
<description>Importing user accounts is a common requirement when migrating from one system or environment to another. One way to accomplish this is to use a third party Identity Provider for managing users. The challenge with that approach is that your site or application may have unique needs in regards to security roles or profile information which an Identity Provider is not able to support. So in order to provide the full flexibility to seamlessly onboard users there is often a need for a bulk import capability.</description>
</item>
<item>
<title>Data Scoping</title>
<link>https://www.oqtane.org/blog/!/72/data-scoping</link>
<description>Data scoping is a fairly common architectural concept when it comes to developing custom software. Basically it refers to the level of granularity that a specific type of data in your application needs to support. You can think of granularity as a way to group similar types of data to provide a logical boundary around it.</description>
</item>
<item>
<title>Upgrading To New .NET Versions</title>
<link>https://www.oqtane.org/blog/!/73/upgrading-to-new-net-versions</link>
<description>Based on the fact that backward compatibility is one of the core philosophies of Oqtane, there are a variety of approaches you can take to allow your development environment to take advantage of newer versions of .NET.</description>
</item>
<item>
<title>Oqtane 4.0.6 Released</title>
<link>https://www.oqtane.org/blog/!/74/oqtane-4-0-6-released</link>
<description>The 4.0.6 release is primarily focused on stabilization. This includes a variety of user experience improvements and a new Search capability which can be utilized in all Admin Dashboard areas for enhanced administration.</description>
</item>
<item>
<title>Announcing Oqtane 5.0 for .NET 8</title>
<link>https://www.oqtane.org/blog/!/75/announcing-oqtane-5-0-for-net-8</link>
<description>The 5.0.0 release is a major release and represents the official migration from .NET 7 to .NET 8. .NET 8 is the latest iteration of the .NET platform. It is a Long Term Support (LTS) release which means that it will be fully supported by Microsoft for the next 3 years (.NET 7 support ends in May 2024). </description>
</item>
<item>
<title>Oqtane Developers Meeting - Dec 2023</title>
<link>https://www.oqtane.org/blog/!/76/oqtane-developers-meeting-dec-2023</link>
<description>On October 4, 2023 we kicked off our first Monthly Developers Meeting for the Oqtane open source project. The goal of these meetings is to provide some constant communication about project status, release schedule, product roadmap, and any issues/blockers. It is also the opportunity for developers to ask questions and provide direct feedback about anything related to the open source project.</description>
</item>
<item>
<title>Oqtane 5.0.1 Released</title>
<link>https://www.oqtane.org/blog/!/77/oqtane-5-0-1-released</link>
<description>The 5.0.1 release is primarily focused on stabilization. This includes many user experience improvements as well as a variety of security and user authentication enhancements.</description>
</item>
<item>
<title>Happy New Year!</title>
<link>https://www.oqtane.org/blog/!/78/happy-new-year</link>
<description>As we begin 2024, it is a good time to reflect on the significant events from last year, and set some goals for the coming year</description>
</item>
<item>
<title>Oqtane Developers Meeting - Jan 2024</title>
<link>https://www.oqtane.org/blog/!/79/oqtane-developers-meeting-jan-2024</link>
<description>Highlights from our most recent meeting on January 3, 2024.</description>
</item>
<item>
<title>Oqtane In Top 5 Most Active Projects For 2023!</title>
<link>https://www.oqtane.org/blog/!/80/oqtane-in-top-5-most-active-projects-for-2023</link>
<description>The .NET Foundation collects daily activity metrics for all .NET Foundation projects and publishes the results at the end of each year. Oqtane is very proud to have achieved the #4 position amongst all Community Projects for both Pull Requests and Commits.</description>
</item>
<item>
<title>Oqtane 5.0.2 Released</title>
<link>https://www.oqtane.org/blog/!/81/oqtane-5-0-2-released</link>
<description>The 5.0.2 release is primarily focused on stabilization. This includes many user experience improvements as well as a variety of performance and developer productivity enhancements. This release includes 51 pull requests by 6 different contributors, pushing the total number of project commits all-time to over 4600. </description>
</item>
<item>
<title>Oqtane Developers Meeting - Feb 2024</title>
<link>https://www.oqtane.org/blog/!/82/oqtane-developers-meeting-feb-2024</link>
<description>The monthly Oqtane Developers Meeting for core contributors was held on Feb 7, 2024.</description>
</item>
<item>
<title>Oqtane Developers Meeting - Mar 2024</title>
<link>https://www.oqtane.org/blog/!/83/oqtane-developers-meeting-mar-2024</link>
<description>The monthly Oqtane Developers Meeting for core contributors was held on Mar 6, 2024. The primary discussion was related to the upcoming 5.1 release which is focused on the migration of Oqtane to Blazor Static Server-Side Rendering (SSR) in .NET 8.</description>
</item>
<item>
<title>Announcing Oqtane 5.1 With Static Server Rendering</title>
<link>https://www.oqtane.org/blog/!/84/announcing-oqtane-5-1-with-static-server-rendering</link>
<description>The 5.1 release is a major release providing Oqtane with Static Server Rendering support based on Blazor in .NET 8. The framework now utilizes Microsoft&#39;s latest recommended patterns for developing full-stack Blazor applications. This new approach has been strategically integrated into Oqtane&#39;s existing capabilities to provide multi-tenancy, modularity, and a robust security architecture which allows developers to focus on building applications rather than infrastructure</description>
</item>
<item>
<title>Developing Components For Static Server Rendering</title>
<link>https://www.oqtane.org/blog/!/85/developing-components-for-static-server-rendering</link>
<description>With Oqtane 5.1 you can now use Static Server rendering in your Oqtane modules. Static Server rendering runs on the server and does not rely on any interactive infrastructure such as WebAssembly or SignalR. Static Server rendering is stateless so you cannot rely on the environment to maintain state within your components. As a result, you need to develop your static components using slightly different techniques than what you are used to with interactive components.</description>
</item>
<item>
<title>Oqtane Developers Meeting - Apr 2024</title>
<link>https://www.oqtane.org/blog/!/86/oqtane-developers-meeting-apr-2024</link>
<description>The monthly Oqtane Developers Meeting for core contributors was held on Apr 3, 2024. The primary discussion was related to Oqtane 5.1 which offers Static Server Rendering which was released on March 27, 2024.
</description>
</item>
<item>
<title>Oqtane 5.1.1 Released</title>
<link>https://www.oqtane.org/blog/!/87/oqtane-5-1-1-released</link>
<description>The 5.1.1 release is primarily a stabilization release, including a variety of improvements to the Static Server-Side Rendering support for Blazor in .NET 8.</description>
</item>
<item>
<title>Oqtane Developers Meeting - May 2024</title>
<link>https://www.oqtane.org/blog/!/88/oqtane-developers-meeting-may-2024</link>
<description>The monthly Oqtane Developers Meeting for core contributors was held on May 1, 2024.</description>
</item>
<item>
<title>Oqtane 5.1.2 Released</title>
<link>https://www.oqtane.org/blog/!/89/oqtane-5-1-2-released</link>
<description>The 5.1.2 release is primarily focused on stabilization. This includes a variety of user and developer experience improvements, performance optimizations, localization updates, and enhancements for Blazor Static Server Rendering.</description>
</item>
<item>
<title>Oqtane Developers Meeting - June 2024</title>
<link>https://www.oqtane.org/blog/!/90/oqtane-developers-meeting-june-2024</link>
<description>The monthly Oqtane Developers Meeting for core contributors was held on June 5, 2024.</description>
</item>
<item>
<title>Passing State To Components Using SSR In .NET 8 </title>
<link>https://www.oqtane.org/blog/!/91/passing-state-to-components-using-ssr-in-net-8</link>
<description>Traditionally when developing in Interactive Blazor, the two most common ways to manage state within an application were by using Cascading Parameters or Scoped Services. These techniques were simple to implement and provided a consistent developer experience across your entire Blazor application. Unfortunately these approaches do not work in .NET 8 when using Static Server Rendering and mixed render modes... however there is a solution.</description>
</item>
<item>
<title>Scalability Testing and Site Templates</title>
<link>https://www.oqtane.org/blog/!/92/scalability-testing-and-site-templates</link>
<description>Scalability testing is the testing of a software application to measure its capability to scale up or scale out. Scalability testing is generally based on the amount of data being managed by the application at runtime in comparison to the resource constraints of the environment. A classic example is if the application is managing a large amount of data but the environment has a limited amount of memory, the application may exhibit scalability issues.</description>
</item>
<item>
<title>Oqtane Developers Meeting - July 2024</title>
<link>https://www.oqtane.org/blog/!/93/oqtane-developers-meeting-july-2024</link>
<description>The monthly Oqtane Developers Meeting for core contributors was held on July 3, 2024. 
</description>
</item>
<item>
<title>Oqtane 5.2.0 Released</title>
<link>https://www.oqtane.org/blog/!/94/oqtane-5-2-0-released</link>
<description>The 5.2.0 release is a major release and includes a native search solution for indexing content, the ability to support custom text editors, as well as usability, scalability and performance improvements.</description>
</item>
<item>
<title>Oqtane Developers Meeting - August 2024</title>
<link>https://www.oqtane.org/blog/!/95/oqtane-developers-meeting-august-2024</link>
<description>The monthly Oqtane Developers Meeting for core contributors was held on August 7, 2024.</description>
</item>
<item>
<title>Oqtane 5.2.1 Released</title>
<link>https://www.oqtane.org/blog/!/96/oqtane-5-2-1-released</link>
<description>The 5.2.1 release is a maintenance release and includes usability, scalability and performance improvements.</description>
</item>
<item>
<title>Oqtane Developers Meeting - September 2024</title>
<link>https://www.oqtane.org/blog/!/97/oqtane-developers-meeting-september-2024</link>
<description>The monthly Oqtane Developers Meeting for core contributors was held on September 4, 2024.</description>
</item>
<item>
<title>Black Belt Blazor</title>
<link>https://www.oqtane.org/blog/!/98/black-belt-blazor</link>
<description>On September 5, 2024 Devessence Inc hosted a webinar titled Black Belt Blazor. The session provided a deep dive into some of the more challenging aspects of Blazor. The presentation was primarily focused on Blazor but was inspired by lessons learned while developing Oqtane. </description>
</item>
<item>
<title>Oqtane 5.2.3 Released</title>
<link>https://www.oqtane.org/blog/!/99/oqtane-5-2-3-released</link>
<description>The 5.2.3 release includes 55 pull requests by 8 different contributors, pushing the total number of project commits all-time to over 5800.</description>
</item>
<item>
<title>TrailBlazor Conference</title>
<link>https://www.oqtane.org/blog/!/100/trailblazor-conference</link>
<description>We are very excited to be co-hosting the TrailBlazor Conference on October 3rd, 2024 (from 8:00 AM - 6:00 PM EDT / UTC -04:00), a free virtual .NET community event which will embody the spirit of excitement and innovation within the Blazor developer ecosystem. 
</description>
</item>
<item>
<title>Migrating a Standard Blazor Application to Oqtane</title>
<link>https://www.oqtane.org/blog/!/101/migrating-a-standard-blazor-application-to-oqtane</link>
<description>One of the common questions which developers ask when they encounter Oqtane is &quot;can I utilize this framework with my existing Blazor applications?&quot;. The short answer to that question is &quot;yes&quot; as Oqtane is a native Blazor application. However you do need to keep in mind that features such as mult-tenancy and modularity are architectural concepts which require a specific implementation approach.</description>
</item>
<item>
<title>Oqtane Developers Meeting - October 2024</title>
<link>https://www.oqtane.org/blog/!/103/oqtane-developers-meeting-october-2024</link>
<description>The monthly Oqtane Developers Meeting for core contributors was held on October 2, 2024.</description>
</item>
<item>
<title>Oqtane 5.2.4 Released</title>
<link>https://www.oqtane.org/blog/!/102/oqtane-5-2-4-released</link>
<description>The 5.2.4 release is a maintenance release and includes usability, security and performance improvements. This release includes 51 pull requests by 7 different contributors, pushing the total number of project commits all-time to over 5900.</description>
</item>
<item>
<title>Oqtane Developers Meeting - November 2024</title>
<link>https://www.oqtane.org/blog/!/105/oqtane-developers-meeting-november-2024</link>
<description>The monthly Oqtane Developers Meeting for core contributors was held on November 6, 2024.</description>
</item>
<item>
<title>Announcing Oqtane 6.0 for .NET 9</title>
<link>https://www.oqtane.org/blog/!/104/announcing-oqtane-6-0-for-net-9</link>
<description>The 6.0.0 release is a major release and represents the official migration from .NET 8 to .NET 9 which includes usability, security and performance improvements.</description>
</item>
<item>
<title>Oqtane Developers Meeting - December 2024</title>
<link>https://www.oqtane.org/blog/!/106/oqtane-developers-meeting-december-2024</link>
<description>The monthly Oqtane Developers Meeting for core contributors was held on December 4, 2024.</description>
</item>
<item>
<title>Oqtane 6.0.1 Released</title>
<link>https://www.oqtane.org/blog/!/107/oqtane-6-0-1-released</link>
<description>The 6.0.1 release is a maintenance release which includes usability, security and performance improvements. This release includes 58 pull requests by 7 different contributors, pushing the total number of project commits all-time to over 6100.</description>
</item>
<item>
<title>Oqtane Core Contributor Meeting - January 2025</title>
<link>https://www.oqtane.org/blog/!/108/oqtane-core-contributor-meeting-january-2025</link>
<description>The monthly Oqtane Core Contributor Meeting was held on January 8, 2025.</description>
</item>
<item>
<title>Oqtane Core Contributor Meeting - February 2025</title>
<link>https://www.oqtane.org/blog/!/109/oqtane-core-contributor-meeting-february-2025</link>
<description>The monthly Oqtane Core Contributor Meeting was held on February 5, 2025.</description>
</item>
<item>
<title>Oqtane 6.1 Released</title>
<link>https://www.oqtane.org/blog/!/110/oqtane-6-1-released</link>
<description>6.1 was released on February 11, 2025 and is a major release which includes usability, security and performance improvements. New features include Static Asset Caching, Folder Asset Caching, File Upload Improvements, User Impersonation, Save Tokens during External Login, and Url Mapping Retention Policy.</description>
</item>
<item>
<title>Dependency Management</title>
<link>https://www.oqtane.org/blog/!/111/dependency-management</link>
<description>One of the overarching principles for Oqtane is &quot;Minimizing Dependencies&quot;... the rationale being that the greater the number of software dependencies, the more points of failure which need to be managed.</description>
</item>
<item>
<title>Oqtane Core Contributor Meeting - March 2025</title>
<link>https://www.oqtane.org/blog/!/112/oqtane-core-contributor-meeting-march-2025</link>
<description>The monthly Oqtane Core Contributor Meeting was held on March 5, 2025.</description>
</item>
<item>
<title>Oqtane 6.1.1 Released</title>
<link>https://www.oqtane.org/blog/!/113/oqtane-6-1-1-released</link>
<description>The 6.1.1 release is a maintenance release which includes usability, security and performance improvements. New features include an integrated Cookie Consent Banner as well as Privacy Policy and Terms of Use pages.</description>
</item>
<item>
<title>Oqtane Core Contributor Meeting - April 2025</title>
<link>https://www.oqtane.org/blog/!/114/oqtane-core-contributor-meeting-april-2025</link>
<description>The monthly Oqtane Core Contributor Meeting was held on April 2, 2025.</description>
</item>
<item>
<title>Oqtane 6.1.2 Released</title>
<link>https://www.oqtane.org/blog/!/115/oqtane-6-1-2-released</link>
<description>The 6.1.2 release is a maintenance release which includes usability, security and performance improvements.</description>
</item>
<item>
<title>Oqtane Core Contributor Meeting - May 2025</title>
<link>https://www.oqtane.org/blog/!/116/oqtane-core-contributor-meeting-may-2025</link>
<description>The monthly Oqtane Core Contributor Meeting was held on May 7, 2025.</description>
</item>
<item>
<title>Oqtane 6.1.3 Released</title>
<link>https://www.oqtane.org/blog/!/117/oqtane-6-1-3-released</link>
<description>The 6.1.3 release is a maintenance release which includes usability, security and performance improvements. This release includes 59 pull requests by 5 different contributors, pushing the total number of project commits all-time to over 6600.</description>
</item>
<item>
<title>Oqtane Core Contributor Meeting - June 2025</title>
<link>https://www.oqtane.org/blog/!/118/oqtane-core-contributor-meeting-june-2025</link>
<description>The monthly Oqtane Core Contributor Meeting was held on June 4, 2025.</description>
</item>
<item>
<title>Oqtane Core Contributor Meeting - July 2025</title>
<link>https://www.oqtane.org/blog/!/119/oqtane-core-contributor-meeting-july-2025</link>
<description>The monthly Oqtane Core Contributor Meeting was held on July 2, 2025</description>
</item>
<item>
<title>Oqtane 6.1.4 Released</title>
<link>https://www.oqtane.org/blog/!/120/oqtane-6-1-4-released</link>
<description>The 6.1.4 release is a maintenance release which includes usability, security and performance improvements. This release includes 49 pull requests by 4 different contributors, pushing the total number of project commits all-time to over 6700.</description>
</item>
<item>
<title>Oqtane Core Contributor Meeting - August 2025</title>
<link>https://www.oqtane.org/blog/!/121/oqtane-core-contributor-meeting-august-2025</link>
<description>The monthly Oqtane Core Contributor Meeting was held on August 6, 2025</description>
</item>
<item>
<title>Oqtane 6.1.5 Released</title>
<link>https://www.oqtane.org/blog/!/122/oqtane-6-1-5-released</link>
<description>The 6.1.5 release is a maintenance release which includes usability, security and performance improvements. This release includes 46 pull requests by 3 different contributors, pushing the total number of project commits all-time to almost 6900.</description>
</item>
<item>
<title>Oqtane Community Standup</title>
<link>https://www.oqtane.org/blog/!/123/oqtane-community-standup</link>
<description>Oqtane will be hosting a monthly Community Standup meeting starting on September 3, 2025 from 12-1 PM ET. This meeting will be open to the .NET community. </description>
</item>
<item>
<title>Oqtane Community Standup - September 2025</title>
<link>https://www.oqtane.org/blog/!/124/oqtane-community-standup-september-2025</link>
<description>The first Oqtane Community Standup was held on September 3, 2025</description>
</item>
<item>
<title>Oqtane 6.2 Released</title>
<link>https://www.oqtane.org/blog/!/125/oqtane-6-2-released</link>
<description>The 6.2 release is a major release which includes developer productivity, usability, security and performance improvements. This release includes 57 pull requests by 4 different contributors, pushing the total number of project commits all-time over 7000. </description>
</item>
<item>
<title>Azure ARM Templates and ZIP Deploy</title>
<link>https://www.oqtane.org/blog/!/126/azure-arm-templates-and-zip-deploy</link>
<description>Oqtane provides a &quot;Deploy To Azure&quot; option to simplify the process of installing the framework on Microsoft Azure. This option utilizes an azuredeploy.json file which is also known as an ARM Template. ARM is an acronym for &quot;Azure Resource Manager&quot; so it should not be surprising that the template file contains configurations for various types of Azure resources.</description>
</item>
<item>
<title>Oqtane Community Standup - October 2025</title>
<link>https://www.oqtane.org/blog/!/127/oqtane-community-standup-october-2025</link>
<description>Oqtane hosted its monthly Community Standup meeting on Wednesday, October 1st from 12-1 PM ET. The recording of the meeting is now available.</description>
</item>
<item>
<title>Oqtane 6.2.1 Released</title>
<link>https://www.oqtane.org/blog/!/128/oqtane-6-2-1-released</link>
<description>The 6.2.1 release is a maintenance release which includes developer productivity, usability, security and performance improvements. This release includes 65 pull requests by 6 different contributors, pushing the total number of project commits all-time over 7100. </description>
</item>
<item>
<title>Upgrading Oqtane Applications To Version 6.2.1</title>
<link>https://www.oqtane.org/blog/!/129/upgrading-oqtane-applications-to-version-6-2-1</link>
<description>A new Oqtane Application Template was introduced in the 6.2 release which greatly improved the developer experience when developing Oqtane applications. Based on community feedback, the template was improved in a variety of ways in the 6.2.1 release. Developers who created an Oqtane Application using the 6.2 template will want to integrate the changes so that they can upgrade to 6.2.1.</description>
</item>
<item>
<title>A Visual Studio &quot;File / New / Project&quot; Experience</title>
<link>https://www.oqtane.org/blog/!/130/a-visual-studio-file-new-project-experience</link>
<description>An Oqtane Application Template was introduced in the 6.2 release which substantially improves the developer experience when developing applications using Oqtane. Many Microsoft developers prefer to use Visual Studio and the Oqtane Application Template was enhanced in 6.2.1 to provide a streamlined Visual Studio &quot;File / New / Project&quot; experience.</description>
</item>
<item>
<title>Oqtane Community Standup - November 2025</title>
<link>https://www.oqtane.org/blog/!/131/oqtane-community-standup-november-2025</link>
<description>Oqtane hosted its monthly Community Standup meeting on Wednesday, November 5th from 4-5 PM ET. The recording of the meeting is now available.</description>
</item>
<item>
<title>Announcing Oqtane 10.0 for .NET 10</title>
<link>https://www.oqtane.org/blog/!/132/announcing-oqtane-10-0-for-net-10</link>
<description>The 10.0.0 release is a major release and represents the official migration from .NET 9 to .NET 10. With this release Oqtane has officially aligned its major version number with .NET.</description>
</item>
<item>
<title>Upgrading Oqtane Applications To Version 10.0</title>
<link>https://www.oqtane.org/blog/!/133/upgrading-oqtane-applications-to-version-10-0</link>
<description>The recent release of .NET 10 included some changes which affect the compatibility of Oqtane Applications. Developers who created an Oqtane Application using the 6.2.* template for .NET 9 will want to integrate the following changes so that they can upgrade to 10.0.0.</description>
</item>
<item>
<title>Oqtane Community Standup - December 2025</title>
<link>https://www.oqtane.org/blog/!/134/oqtane-community-standup-december-2025</link>
<description>Oqtane hosted its monthly Community Standup meeting on Wednesday, December 3rd from 12-1 PM ET. The recording of the meeting is now available.</description>
</item>
<item>
<title>Oqtane 10.0.1 Released</title>
<link>https://www.oqtane.org/blog/!/135/oqtane-10-0-1-released</link>
<description>The 10.0.1 release is a maintenance release which includes developer productivity, usability, security and performance improvements. This release includes 38 pull requests by 5 different contributors, pushing the total number of project commits all-time over 7400.</description>
</item>
<item>
<title>Oqtane 10.0.3 Released</title>
<link>https://www.oqtane.org/blog/!/136/oqtane-10-0-3-released</link>
<description>The 10.0.3 release is a maintenance release which includes developer productivity, usability, security and performance improvements. This release includes 19 pull requests by 2 different contributors, pushing the total number of project commits all-time to almost 7500.</description>
</item>
<item>
<title>Oqtane Community Standup - January 2026</title>
<link>https://www.oqtane.org/blog/!/137/oqtane-community-standup-january-2026</link>
<description>Oqtane hosted its monthly Community Standup meeting on Wednesday, January 7th from 12-1 PM ET. The recording of the meeting is now available.
</description>
</item>
<item>
<title>Oqtane 10.0.4 Released</title>
<link>https://www.oqtane.org/blog/!/138/oqtane-10-0-4-released</link>
<description>The 10.0.4 release is a maintenance release which includes developer productivity, usability, security and performance improvements. This release includes 29 pull requests by 3 different contributors, pushing the total number of project commits all-time over 7500.</description>
</item>
<item>
<title>Oqtane Community Standup - February 2026</title>
<link>https://www.oqtane.org/blog/!/139/oqtane-community-standup-february-2026</link>
<description>Oqtane hosted its monthly Community Standup meeting on Wednesday, February 4th from 12-1 PM ET. The recording of the meeting is now available.
</description>
</item>
<item>
<title>Oqtane 10.1 Released</title>
<link>https://www.oqtane.org/blog/!/140/oqtane-10-1-released</link>
<description>The 10.1 release is a major release which includes developer productivity, usability, security and performance improvements. The theme of the 10.1 release was &quot;content management&quot; and there were a variety of powerful new features which were added to the framework to cater to enterprise content scenarios.</description>
</item>
<item>
<title>Oqtane Community Standup - March 2026</title>
<link>https://www.oqtane.org/blog/!/141/oqtane-community-standup-march-2026</link>
<description>Oqtane hosted its monthly Community Standup meeting on Wednesday, March 4th from 12:00-1:00 PM ET. The recording of the meeting is now available.
</description>
</item>
<item>
<title>Oqtane 10.1.1 Released</title>
<link>https://www.oqtane.org/blog/!/142/oqtane-10-1-1-released</link>
<description>The 10.1.1 release is a maintenance release which includes developer productivity, usability, security and performance improvements. This release includes 23 pull requests by 2 different contributors, pushing the total number of project commits all-time over 7700.</description>
</item>
<item>
<title>Oqtane 10.1.2 Released</title>
<link>https://www.oqtane.org/blog/!/143/oqtane-10-1-2-released</link>
<description>The 10.1.2 release is a maintenance release which includes developer productivity, usability, security and performance improvements. This release includes 10 pull requests by 1 contributor, pushing the total number of project commits all-time over 7750.</description>
</item>
<item>
<title>Oqtane Community Standup - April 2026</title>
<link>https://www.oqtane.org/blog/!/144/oqtane-community-standup-april-2026</link>
<description>Oqtane hosted its monthly Community Standup meeting on Wednesday, April 1st from 12:00-1:00 PM ET. The meeting included a review of Oqtane 10.1.1 and 10.1.2, a demonstration of the Oqtane AI Playbook by Leigh Pointer, etc...</description>
</item>
</channel>
</rss>
