AdminLTE Starter Kit for ASP.NET Core – Open Source

by

A New Developer can take anywhere from 8 hours upto few days to Integrate a 3rd Party Bootstrap UI with ASP.NET Core. A Senior Developer may take anywhere from 4-6 hours in doing the same. With this Open Source Project, the only GOAL is to dramatically reduce these long hours of development. Feel free to contribute to the project and Support me to make it easier for our fellow developers 🙂

AdminLTE Starter Kit for ASP.NET Core

Project Specifications &  Features

The Project is currently at V1. Here is what you can expect to get with this release.

Built with ASP.NET Core 3.1

The entire project is built using ASP.NET Core 3.1 Razor Pages to serve a Starter template for anyone who wants to have an already implemented Dashboard UI.

Extended User Management

User and Role Management comes out-of the box with this Open source Project. There are other features too like Profile Pictures, Role Badges and Default Seeds for Roles and Users.

Open Source Based on AdminLTE

Completely FREE to use. Seamless integration with AdminLTE Bootstrap UI. Comes bundled with plugins as well.

Seamless Integration with AdminLTE

Well Integrated with AdminLTE using Partial Views and Layout Pages Concepts of Razor Page. With this clean seperation it is possible to manage your UI and extend it with ease. To understand more on Integrating AdminLTE or any other Bootstrap UI with ASP.NET Core Razor Pages / MVC, read this article.

AdminLTE Integration
User Manager

Extended User & Roles Management

User and Role Managmenet is something you don’t get out of the box with Microsoft Identity. With this project,  you will be getting a complete implementation of User and Role Management.

Here is what the User Management Includes.

  1.  Extended User Properties like First Name, Last Name, Profile Picture and more.
  2.  Default User Seeding available.
    Default SuperAdmin Credentials – superadmin@gmail.com / 123Pa$$word.
    Default Basic User Credentials – basic@gmail.com / 123Pa$$word.
    You can change / view these settings at Data / IdentitySeed.cs in the project folder. 
  3.  Superadmins can view a list of registered Users.

Here is what Role Management has to offer.

  1. Default Roles Seeding Included. Available Roles are Superadmin / Admin / Moderator / Basic . These Roles are stored as an Enum under the Enums / Roles.cs file.
  2. Super Admin can add new Roles
  3. Super Admins can assign new roles to the user.

If you want to read in detail on how this is implemented, I have an article for the same. Read it here.

 

Mail Service using Mailkit

Sending Mails is an integral part of any Dashboard Application nowadays. With this Open Source Project, Mails are sent via 2 ways.

  1. Once a user is registered, a confirmation mail goes to his / her registered email id.
  2. Logged in User can use the Compose Mail Feature to Send mails to their contacts.

Note that – While Registering a new User, an Email Confirmation will be sent to the registered ID. The Application allows only the confirmed users to login. However you can bypass this check by Enabling the AutoConfirmEmail in the appsettings.json. 

PS, For this to work, remember to add your SMTP Settings in the appsetttings.json. To know more about sending Mails in ASP.NET Core, read this article.

Compose Email
Role Manager

Other Awesome Features

1. Advanced Document Repository – A simple and powerful way to store your documents in the database and secure it to your account. Users can make their documents public or private as they choose. This Feature is coming soon.

2. Logging with Serilog (Coming Soon)

3. Globalization – Multilingual Support  (Coming Soon)

4. Toast Notifications

Everything done for you.

Get the Complete Source Code of this Project here. Feel free to contribute as well. The Steps to get started are mentioned in the next section.

Getting Started with AdminLTE Starter Kit for ASP.NET Core

To use this template, there are a few options:

I’ll cover both options here.

Prerequisites

  • Make sure you are running on the latest .NET Core SDK (SDK 3.1 and above only). Get the latest one here.
  • Visual Studio 2019 ( You can check out my Installation Guide of Visual Studio 2019 Community which is completely Free to use.) Make sure that ASP.NET and web development workload is installed.
  • Install the latest DOTNET & EF CLI Tools by using this command – dotnet tool install –global dotnet-ef 

Using the Visual Studio Project Template

  1. Click Here to Download the Visual Studio Extension from the VS-Marketplace
  2. Install the Extension
  3. After installing the template, you should be able to create a new project in Visual Studio and search for AdminLTE . You should see the template appear in your list of project templates:
adminlte

After choosing this template, provide a project name and finish the project creation wizard. You should be all set.

  1. Once Visual Studio is done creating your new Project, Navigate to appsettings.json and change the Connection String to your preferred one.
  2. In the Package Manage Console, Apply Migrations by typing in update-database. This updates your Database.
  3. Finally Run the Application.

Or Download the Source Code

Navigate to my Github Repository –  https://github.com/iammukeshm/AdminLTE.StarterKit 
From here, Click on the Code -> Download as ZIP. This will download the entire source code for you locally to your machine. The download size would be around 10-15 Mb.

Running the AdminLTE StarterKit for ASP.NET Core 3.1

Extract the Zip file and navigate to the Root of the Project File (Not the Solution File). In this directory, open up Power Shell and run the following commands.

Before proceeding do not forget to open up the appsettings.json and change the connection strings / email settings and so on.

dotnet restore
dotnet build
dotnet ef database update
dotnet run

powershell

With that done, navigate to http://localhost:5000/ or https://localhost:5001/
You can find the Application running here.

AdminLTE StarterKit for ASP.NET Core

By default, the application creates 2 users for you during runtime, a Superadmin and a Basic user.
Default SuperAdmin Credentials – superadmin@gmail.com / 123Pa$$word.
Default Basic User Credentials – basic@gmail.com / 123Pa$$word.

Support

If you found this project helpful or learnt something new, consider supporting. Do Buy me a coffee, so that I can keep on bringing up such Projects FREE for the community! 

Buy me a coffeeBuy me a coffee

If you have any comments or suggestions, please leave them behind in the comments section below. Do not forget to share this article within your developer community. Thanks and Happy Coding! 😀

16 Comments

  1. Majid Shahabfar

    Hi Mukesh,
    If I wanna organize my solution according to clean architecture, what changes should I do?
    Generally speaking how can I change my solution in AdminLTE to have multiple separate projects in solution?

    Reply
  2. Sudipta Banerjee

    Instead of – dotnet tool install –global dotnet-ef

    I used dotnet tool install dotnet-ef –global

    Reply
  3. Muhammad ElHelaly

    Excellent

    Reply
    • Mukesh Murugan

      Hi,
      Make sure you have the latest version of VS2019 COMMUNITY / PRO / ENTERPRISE 16.0+
      This is usually why you won’t be able to see the extension. Did you try to search for it on VS?

      REGARDS

      Reply
    • Mukesh Murugan

      I have uploaded a newer version of the extension. Please uninstall the existing extension and install the newer version. Please let me know if it is fixed. I can confirm that it works for me. Thanks.

      Reply
  4. Pham

    Hi Mukesh Murugan ,
    )
    I am using lasted Microsoft Visual Studio Community 2019 (Version 16.7.1 and have tried to search in “Create new project ” box, but still not found !!!

    Regards

    Reply
  5. Jitendra Bhargava

    Hello Mukesh Murugan,

    Same problem i am also facing. After Installing Extension its not coming in New Project => Select Template List.

    Please Help !

    Thanks

    Reply
  6. Pedro Martins

    Hello Mukesh,
    thanks for your starter Kit! when are you planning to implement serilog example use in the starter kit?

    Reply

Submit a Comment

Your email address will not be published. Required fields are marked *

Pin It on Pinterest