oqtane / oqtane.framework

CMS & Application Framework for Blazor & .NET MAUI
http://www.oqtane.org
MIT License
1.9k stars 547 forks source link
aspnet-core blazor cms maui webassembly

Oqtane Framework

Oqtane

Oqtane is an open source Content Management System (CMS) and Application Framework that provides advanced functionality for developing web, mobile, and desktop applications on modern .NET.

Oqtane allows you to "Build Applications, Not Infrastructure" which means that you can focus your investment on solving your unique business challenges rather than wasting time and effort on building general infrastructure.

Oqtane is "Rocket Fuel for Blazor" as it provides powerful capabilities to accelerate your Blazor development experience, providing scalable services and a composable UI which can be hosted on Static Blazor, Blazor Server, Blazor WebAssembly, or Blazor Hybrid (via .NET MAUI).

Oqtane is being developed based on some fundamental principles which are outlined in the Oqtane Philosophy. This project is an official member of the .NET Foundation and is governed by the .NET Foundation Contributor Covenant Code of Conduct

Latest Release

6.0.0 was released on November 14, 2024 and is a major release including 39 pull requests by 6 different contributors, pushing the total number of project commits all-time to over 6000. The Oqtane framework continues to evolve at a rapid pace to meet the needs of .NET developers.

Deploy to Azure

Getting Started (Version 6.x)

Installing using source code from the Dev/Master branch:

Developing a custom module:

Installing an official release:

Additional Instructions

Video Series

Oqtane Marketplace

Explore and enhance your Oqtane experience by visiting the Oqtane Marketplace. Discover a variety of modules, themes, and extensions contributed by the community. Visit Oqtane Marketplace

Documentation

There is a separate Documentation repository which contains a variety of types of documentation for Oqtane, including API documentation that is auto generated using Docfx. The contents of the repository is published to Githib Pages and is available at https://docs.oqtane.org

Join the Community

Connect with other developers, get support, and share ideas by joining the Oqtane community on Discord!

Join our Discord

Roadmap

This project is open source, and therefore is a work in progress...

6.0.0 (Nov 14, 2024)

5.2.4 (Oct 17, 2024)

5.2.3 (Sep 23, 2024)

5.2.2 (Sep 23, 2024)

5.2.1 (Aug 22, 2024)

5.2.0 (Jul 25, 2024)

5.1.2 (May 28, 2024)

5.1.1 (Apr 16, 2024)

5.1.0 (Mar 27, 2024)

5.0.2 (Jan 25, 2024)

5.0.1 (Dec 21, 2023)

5.0.0 (Nov 16, 2023)

➡️ Full list and older versions can be found in the docs roadmap

Background

Oqtane was created by Shaun Walker and is inspired by the DotNetNuke web application framework. Oqtane is a native Blazor application written from the ground up using modern .NET Core technology and a Single Page Application (SPA) architecture. It is a modular application framework offering a fully dynamic page compositing model, multi-site support, designer friendly themes, and extensibility via third party modules.

Reference Implementations

Built On Blazor! - a showcase of sites built on Blazor

.NET Foundation Project Trends - tracks the most active .NET Foundation open source projects based on GitHub activity

Architecture

The following diagram visualizes the client and server components in the Oqtane architecture.

Architecture

Databases

As of version 2.1 (June 2021) Oqtane supports multiple relational database providers - SQL Server, SQLite, MySQL, PostgreSQL

Databases

Example Screenshots

Install Wizard:

Installer

Default view after installation:

Home

A seamless login flow utilizing .NET Core Identity services:

Login

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

Admin dashboard for accessing the various administrative features of the framework:

Admin Dashboard

Responsive design mobile view:

Mobile View