This is a template web app with a built-in user management and authentication/authorization system both in the front- and in the back- ends. We use it as a starting point for future projects. You may download the code on github.
Functionality at a glance:
- Multiple languages in the front-end.
- Role-based authentication/authorization in the front-end and back-end, supporting external and internal users.
- External user registration with email confirmation, password reminder, and approval by internal users.
- User management by internal users (creation, deletion, role switching, and editing).
- User paging, searching, and sorting functionality.
- Unified solution for back-end and front-end development in Visual Studio. Optionally, the applications may be separately developed in a different IDE (e.g. VS Code).
- Back-end with ASP.NET Core Web API, EF Core and SQL Server.
- Multi-layer back-end architecture with services injected in the controller constructor.
- Back-end ViewModel validation returning validation errors to the client.
- JWT back-end authentication and claim-based authorization with ASP.NET Core Identity.
- Front-end with Angular 7 and Bootstrap.
- Front-end role-based authorization with authentication service, routing modules, route data, authentication guards, and http interceptors.
- Type-safe HttpClient observable requests with universal error handling for network or validation errors, and data prefetching from multiple services.