Skip to content
Modular Application Framework for Blazor
Branch: master
Clone or download
sbwalker Merge pull request #177 from sbwalker/master
fix leaky resource probem in client-side Blazor related to HttpClient and AuthenticationStateProvider
Latest commit 4f86eb2 Nov 18, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
Oqtane.Shared completed background job scheduler Nov 15, 2019
.gitignore Large file streaming uploads Sep 6, 2019
LICENSE Update LICENSE May 5, 2019
Oqtane.Framework.nuspec event logging fix Oct 28, 2019
Oqtane.sln Update Oct 22, 2019
pack.cmd event logging fix Oct 28, 2019
screenshot2.png updated screenshots Oct 16, 2019

Oqtane Framework

Oqtane is a Modular Application Framework for Blazor


Oqtane uses Blazor, a new web framework for .NET Core that lets you build interactive web UIs using C# instead of JavaScript. Blazor apps are composed of reusable web UI components implemented using C#, HTML, and CSS. Both client and server code is written in C#, allowing you to share code and libraries.

To get started with Oqtane:

1. Oqtane is currently compatible with .NET Core 3.0.

2. Install the latest edition of Visual Studio 2019 with the ASP.NET and web development workload. Installing the latest edition will also install the latest version of .NET Core 3.0.

3. Download or Clone the Oqtane source code to your local system. Open the Oqtane.sln solution file. If you want to develop using server-side Blazor (which includes a full debugging experience in Visual Studio) you should choose to Build the solution using the default Debug configuration. If you want to develop using client-side Blazor (WebAssembly) you should first choose the "Wasm" configuration option in the Visual Studio toolbar and then Build.

NOTE: If you have already installed a previous version of Oqtane and you wish to install a newer version, there is currently no upgrade path from one version to the next. The recommended upgrade approach is to get the latest code and build it, and then reset the DefaultConnection value to "" in the appsettings.json file in the Oqtane.server project. This will trigger a re-install when you run the application which will execute the latest database scripts.


This project is a work in progress and the schedule for implementing the items identified below is dependent upon the availability of community members who are able to assist.


  • Need support for JwT tokens for external client access to API


  • Need ability to run on SQLite


Oqtane was created by Shaun Walker and is inspired by the DotNetNuke web application framework. Initially created as a proof of concept, Oqtane is a native Blazor application written from the ground up using modern .NET Core technology. It is a modular framework offering a fully dynamic page compositing model, multi-site support, designer friendly templates (skins), and extensibility via third party modules.

At this point Oqtane offers a minimum of desired functionality and is not recommended for production usage. The expectation is that Oqtane will rapidly evolve as a community driven open source project. At this point in time we do not promise any upgrade path from one version to the next, and developers should expect breaking changes as the framework stabilizes.

Release Announcement

Announcing Oqtane... a Modular Application Framework for Blazor!

Example Screenshots

Install Wizard:


Default view after installation:


A seamless login flow utilizing .NET Core Identity services:


Main view for authorized users, allowing full management of modules and content:

Admin View

Content editing user experience using modal dialog:

Edit Content

Context menu for managing specific module on page:

Manage Module

Control panel for adding, editing, and deleting pages as well as adding new modules to a page:

Manage Page

You can’t perform that action at this time.