Screenshot of a sample Tuxboard layout

Introducing Tuxboard
An open-source dashboard library for ASP.NET Core
View on GitHub

In my career, I've built a number of dashboards from scratch. As with all projects, each dashboard had pluses and minuses as each project completed.

Even with existing libraries out there, there really wasn't anything out there for the ASP.NET platform.

So the initiative was set to write one.

The developer could start with a simple structure where ANY type of dashboard could be generated quickly and provide an easy front-end with their own custom widgets and robust layouts.

Tech Stack

  • ASP.NET Core 5 (or higher)
  • Entity Framework Core
  • SQL Server

Features

The current list of features are based on my experience with dashboards. If there is something missing, please contact me so I can make this a great library for dashboard developers.

  • Easily attach a dashboard to your project
  • Customize dashboards for general audiences (a static dashboard), user-based dashboards, or even role-based dashboards (both dynamic dashboards).
  • Extend your dashboard by building dynamic or static widgets.
  • Small, compact code for performance in C# and JavaScript (native JavaScript)
  • While Tuxboard uses Bootstrap, it can easily conform to any CSS Framework.

Caveats

  • While I've created a couple simple front-ends using Bootstrap and vanilla JavaScript in the repo, I'm an expert in none of the JS Frameworks out there. The TypeScript/JavaScript (tuxboard.js) is small enough where a person could fork this repository and work on a Tuxboard.UI. version (i.e. Tuxboard.UI.Vue).

FAQ

I've posted a simple FAQ on the Github repo.

Posts

  • Introducing Tuxboard

    Today, I introduce Tuxboard, which is an open-source dashboard library for ASP.NET 5 and higher and provide a quick-start

  • Layout of a Tuxboard Dashboard

    What makes up a Tuxboard dashboard? In this post, we look over the structure of a dashboard and explain the different types of components

  • Dashboard Modularity

    In this post, we look at breaking up our dashboard into more modular components for easier access