News

Project Oqtane Provides Blazor-Based Modern App Framework

The .NET Foundation recently shined a spotlight on Project Oqtane, a modern application framework for Blazor, Microsoft's red-hot open source project that enables web development in C#.

Blazor, in the works for a couple years now, is a game-changing framework that leverages WebAssembly as a binary instruction format, acting as a compilation target for C# code. By obviating the need to use web mainstay JavaScript, a whole new world of web development is opened up to .NET-centric coders.

The project was the latest to be highlighted by the .NET Foundation, an independent, non-profit organization established to support an open source ecosystem around the .NET platform, working hand in hand with Microsoft.

Oqtane
[Click on image for larger view.] Oqtane (source: Project Oqtane).

"Oqtane is a modular application framework which accelerates the development of modern digital experiences," the .NET Foundation said. "It was architected from the ground up to utilize Blazor, a modern single-page application framework for building interactive web apps with C# and .NET. Oqtane offers advanced capabilities such as multi-tenancy, a fully dynamic page compositing model, designer friendly themes, extensibility via third party plug-in modules, a headless API, and supports Blazor Server and Blazor WebAssembly hosting models."

The project is headed by creator Shaun Walker, who discussed his brainchild in a recent .NET Foundation video.

"Rather than building applications from the ground up in sort of a in a static way, the idea behind a modular framework is that you basically get a complete foundation of an application to build on top of and then you focus on building your specific business applications as modules which sort of seamlessly plug in to the overall foundation to create a cohesive application," explained Walker. "There's a lot of benefits of doing things in a modular way in that you can ... break down the problem into smaller pieces. You can develop them independently from the main application. You can deploy them independently."

Walker -- who also created the popular DotNetNuke (now DNN) web CMS -- announced Oqtane 2.0 for .NET 5 during the latter's debut last fall at Microsoft's .NET Conf 2020. The next update is scheduled for the first quarter of this year.

The project's GitHub site states Oqtane was inspired by Walker's 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 application framework offering a fully dynamic page compositing model, multi-site support, designer friendly templates (skins), and extensibility via third party modules."

Oqtane Architecture
[Click on image for larger view.] Oqtane Architecture (source: Project Oqtane).

As it's a still fairly young, developing project, the documentation is skimpy, with one page stating, "Here we would like to explain why Oqtane works the way it does," followed only by one entry about DLL handling. The API documentation is much more robust, however.

Walker in November said Oqtane would be transferring development to .NET 5 immediately, while also announcing localization support spearheaded by a community contributor.

The project's roadmap indicates that for the next update, coming this quarter, the following is planned:
  • Complete Static Localization of Admin UI
  • Cross Platform Database Support ( ie. SQLite )
  • EF Core Migrations for Database Installation/Upgrade

Last November, Walker provided further updates on the project. "Since the official 1.0 release in May 2020, the Oqtane community has continued to grow and expand," he said. "To date, the open source repository has attracted 568 pull requests from 21 contributors and has published 6 official releases, which ranks it among the most active open source projects within the .NET Foundation. We also need to recognize the expert assistance and encouragement we have received directly from members of the Microsoft ASP.NET team including Daniel Roth, Steve Sanderson, Pranav Krishnamoorthy, and Safia Abdalla."

For the future, Walker in his video talked more about the next major feature for Oqtane as requested by the community: support for other databases beyond its default support for SQL Server variants. Along with the aforementioned SQLite, he mentioned MySQL and Postgres specifically. He also noted continued work on localization.

Walker also encouraged more community involvement, noting that developers who might be uncomfortable with technical pull requests would especially be welcomed to shore up the project's documentation, which he described as "a weak area."

Seeing as how the next update should be landing within the next couple months, developers won't have to wait too long to see how the project is advancing.

About the Author

David Ramel is an editor and writer at Converge 360.

comments powered by Disqus

Featured

  • Hands On: New VS Code Insiders Build Creates Web Page from Image in Seconds

    New Vision support with GitHub Copilot in the latest Visual Studio Code Insiders build takes a user-supplied mockup image and creates a web page from it in seconds, handling all the HTML and CSS.

  • Naive Bayes Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the naive Bayes regression technique, where the goal is to predict a single numeric value. Compared to other machine learning regression techniques, naive Bayes regression is usually less accurate, but is simple, easy to implement and customize, works on both large and small datasets, is highly interpretable, and doesn't require tuning any hyperparameters.

  • VS Code Copilot Previews New GPT-4o AI Code Completion Model

    The 4o upgrade includes additional training on more than 275,000 high-quality public repositories in over 30 popular programming languages, said Microsoft-owned GitHub, which created the original "AI pair programmer" years ago.

  • Microsoft's Rust Embrace Continues with Azure SDK Beta

    "Rust's strong type system and ownership model help prevent common programming errors such as null pointer dereferencing and buffer overflows, leading to more secure and stable code."

  • Xcode IDE from Microsoft Archrival Apple Gets Copilot AI

    Just after expanding the reach of its Copilot AI coding assistant to the open-source Eclipse IDE, Microsoft showcased how it's going even further, providing details about a preview version for the Xcode IDE from archrival Apple.

Subscribe on YouTube

Upcoming Training Events