.NET Zero to Hero Series is now LIVE! JOIN 🚀

5 min read

Introducing fullstackhero - Open Source Boilerplates for Rapid Web Development

#dotnet

Ever gone through the painful process of setting up solutions from scratch although most of the features/code seems to be repetitive? fullstackhero addresses this very pain point and offers complete end-to-end solutions/boilerplates to facilitate and ease the process of getting started with web development.

What’s fullStackHero?

fullstackhero is a collection of Boilerplates that are built with Clean Architecture, the latest Packages, and Essential Features that your projects will need to get started with. Using fullstackhero boilerplates, one can easily save more than 200 hours of development and research time and kick start the application development in no time. The Essentials are already done, you just have to worry about writing the business logic. Most importantly, fullstackhero is completely FREE to use! 

Here is fullstackhero’s GitHub handle - https://github.com/fullstackhero

Benefits of fullStackHero

  • Production Ready API - fullstackhero sports the latest .NET 6 Web API fused with clean architecture.
  • Premium Client Applications - Blazor WebAssembly is the currently offered Boilerplate for fullstackhero’s client side. Angular , React and MVC on the way!
  • Multitenancy Support - Multitenancy is built-in!
  • Clean Seperation - API and client applications are seperated into different GitHub Repositories to ensure that there is no dependency whatsover. This enables us to accomadate various new technoligies as both client and API applications in future.
  • Documenation - fullstackhero is completely documented on fullstackhero.net
  • Completely FREE - Being Community driven, fullstackhero is actively developed on GitHub under MIT license and is open for contributions!

Now that we are aware of what fullstackhero is, let’s check out the projects under fullstackhero.

For the initial release, these are two actively developed projects/boilerplates under fullstackhero

  • .NET 6 Web API Boilerplate
  • Blazor Web Assembly Boilerplate

.NET 6 Web API Boilerplate

.NET WebAPI Boilerplate Template built with .NET 6.0. Incorporates the most essential Packages your projects will ever need. Follows Clean Architecture Principles.

introducing-fullstackhero

fullstackhero’s .NET Web API Boilerplate is a starting point for your next .NET 6 Clean Architecture Project that incorporates the most essential packages and features your projects will ever need including out of the box Multi-Tenancy support. This project can save well over 200+ hours of development time for your team.

Read more - https://fullstackhero.net/dotnet-webapi-boilerplate/general/overview/

Setting up Development Environment - https://fullstackhero.net/dotnet-webapi-boilerplate/general/development-environment/

GitHub Repository URL - https://github.com/fullstackhero/dotnet-webapi-boilerplate

Features

  •  Built on .NET 6.0
  •  Follows Clean Architecture Principles
  •  Domain Driven Design
  •  Completely Documented at fullstackhero.net
  •  Multi Tenancy Support with Finbuckle
    •  Create Tenants with Multi Database / Shared Database Support
    •  Activate / Deactivate Tenants on Demand
    •  Upgrade Subscription of Tenants - Add More Validity Months to each tenant!
  •  Supports MySQL, MSSQL, Oracle & PostgreSQL!
  • Uses Entity Framework Core as DB Abstraction
  •  Flexible Repository Pattern
  •  Dapper Integration for Optimal Performance
  •  Serilog Integration with various Sinks - File, SEQ, Kibana
  •  OpenAPI - Supports Client Service Generation
  •  Mapster Integration for Quicker Mapping
  •  API Versioning
  •  Response Caching - Distributed Caching + REDIS
  •  Fluent Validations
  •  Audit Logging
  •  Advanced User & Role Based Permission Management
  •  Code Analysis & StyleCop Integration with Rulesets
  •  JSON Based Localization with Caching
  •  Hangfire Support - Secured Dashboard
  •  File Storage Service
  •  Test Projects
  •  JWT & Azure AD Authentication
  •  MediatR - CQRS
  •  SignalR Notifications

Getting Started with .NET Web API Boilerplate

Here is how to quickly get started with setting up .NET Web API Boilerplate on your machine in no time.

Open up your Command Prompt / Powershell and run the following command to install the solution template.

dotnet new -i FullStackHero.WebAPI.Boilerplate

This would install the .NET Web API template globally on your machine. Do note that, at the time of writing this documentation, the latest available version is 0.0.6-rc which is also one of the first stable pre-release versions of the package. It is highly likely that there is already a newer version available when you are reading this.

Now that you have installed the template locally on your machine, let’s see how you can start generating complete .NET WebAPI Solutions seamlessly.

Simply navigate to a new directory (wherever you want to place your new solution), and open up Command Prompt at the opened directory.

Run the following command. Note that, in this demonstration, I am naming my new solution as FSH.Starter.

introducing-fullstackhero

Once that is done, your new solution is created for you. As simple as that!

Here are the folders and files created for you.

introducing-fullstackhero

Read more about getting started here - https://fullstackhero.net/dotnet-webapi-boilerplate/general/getting-started/

Blazor Web Assembly Boilerplate

Built with .NET 6.0 and the goodness of MudBlazor Component Library. Incorporates the most essential Packages your projects will ever need. Follows Clean Architecture Principles.

GitHub Repository URL - https://github.com/fullstackhero/blazor-wasm-boilerplate

introducing-fullstackhero

Similar to the WebAPI Boilerplate, the Blazor project too has a NuGet package that you can install on to your machine to start generating the Blazor Boilerplate with ease.

dotnet new --install FullStackHero.BlazorWebAssembly.Boilerplate

Once installed, you can run the following to generate a new Blazor project.

dotnet new fsh-blazor -o FSH.Blazor

Note that it is vital to run the API Server first. Only then can the Blazor project consume services of the API.

Once both the Blazor and API projects are running, navigate to localhost:5002 to access the Blazor WebAssembly Project. Here is what you will be welcomed with.

introducing-fullstackhero

You can auto-fill the default username/password & tenant by clicking on the Fill Administrator Credentials button.

Anyways, here are the default login details for your reference.

Once you login, the home page will be loaded.

introducing-fullstackhero

Features & Components

  • Login / Registration / Forgot Password
  • Home & Dashboard
  • Tenant Management
  • Dark Mode / Language Switcher
  • Account Management
  • Catalog Management - Sample CRUD Included for Brands and Products
  • User Management
  • Role Management
  • Permission Management
  • Theme Manager to control Primary & Secondary Colors, Border Radiuses, Table Component Attributes

Here are a couple of more screenshots of the Awesome Blazor WebAssembly project!

introducing-fullstackhero

introducing-fullstackhero

introducing-fullstackhero

introducing-fullstackhero

introducing-fullstackhero

introducing-fullstackhero

Explore more about the project by referring to - https://fullstackhero.net/blazor-webassembly-boilerplate/general/getting-started/

UI Fundamentals - https://fullstackhero.net/blazor-webassembly-boilerplate/ui-overview/fundamentals/

Sponsorship & Support

Has this Project helped you learn something New? or Helped you at work? Here are a few ways by which you can support.

  • Leave a star! ⭐
  • Fork it ;)
  • Recommend this awesome project to your colleagues. 🥇
  • Do consider endorsing me on LinkedIn for ASP.NET Core - Connect via LinkedIn 🦸
  • Or, If you want to support this project in the long run, consider buying me a coffee! ☕

Sponsorships and Contributions are also accepted on open collective. Do consider sponsoring the project to keep it running for a long time.

https://opencollective.com/fullstackhero/contribute

Source Code ✌️
Grab the source code of the entire implementation by clicking here. Do Follow me on GitHub .
Support ❤️
If you have enjoyed my content and code, do support me by buying a couple of coffees. This will enable me to dedicate more time to research and create new content. Cheers!
Share this Article
Share this article with your network to help others!
What's your Feedback?
Do let me know your thoughts around this article.

Mukesh's .NET Newsletter 🚀

Join 5,000+ Engineers to Boost your .NET Skills. I have started a .NET Zero to Hero Series that covers everything from the basics to advanced topics to help you with your .NET Journey! You will receive 1 Awesome Email every week.

Subscribe