- .NET 8 REST API Membership system + Email verification - Azure and GH Pages
25-November-2024
.NET 8 REST API at Azure with C# using Entity Framework Core + MS SQL consuming an Angular 14 Client at GH Pages - serving as a Membership System
Unit Testing:
- Karma + Jasmine - Used with the Angular Client
Try the demo...
The Web API was made without the ASP.NET Core Identity using custom JWT middleware
Functionality of the Web App
- JWT authentication with Refresh Tokens
- Refresh token rotation
- Revoked token reuse detection
- Email sign up and verification
- Forgot password and reset password functionality
- Role based authorization with two roles "User" and "Admin"
- CRUD Account management routes with role based access control
Tech used for building the Web App
- C#
- The .NET 8 Web API is hosted at Azure App Service
- DevOps by Azure App Service + Repos for the .NET 8 Web API
- The Angular Client is hosted at GH Pages
- DevOps by GitHub Actions + Pages for the Angular Client
- MS SQL as the Database for both Dev + Prod
- CORS Policy implemented by .NET
- JWT Token for access secure routes
- Refresh Token by HTTP only Cookie to generate new JWT Tokens
- Swagger API documentation with routes
- .NET 8 REST API with Dapper SQLite and xUnit
11-November-2024
.NET 8 REST API with C# and Dapper ORM + SQLite DB consuming an Angular 14 Client + Unit Testing
Unit Testing:
- xUnit - Used with one of the .NET Web API
- Karma + Jasmine - Used with the Angular Client
Coverage Reports are generated for visualize the result of Unit Testing ( .NET based xUnit )
Try the demo...
Dapper is a lightweight Micro-ORM which can be an alternative to Entity Framework Core ORM
SQLite is local DB and fine for testing and small applications
Traditional webhosting is used for this Application
- .NET 8 REST API Membership system + Email verification
13-October-2024
.NET 8 REST API with C# using Entity Framework Core + SQLite consuming an Angular 14 Client - serving as a Membership System
Unit Testing:
- Karma + Jasmine - Used with the Angular Client
Try the demo...
The Web API was made without the ASP.NET Core Identity using custom JWT middleware
Functionality of the Web App
- JWT authentication with Refresh Tokens
- Refresh token rotation
- Revoked token reuse detection
- Email sign up and verification
- Forgot password and reset password functionality
- Role based authorization with two roles "User" and "Admin"
- CRUD Account management routes with role based access control
Tech used for building the Web App
- C#
- The .NET 8 Web API is hosted at a traditional Webhotel
- The Angular Client is hosted at a traditional Webhotel
- SQLite as the Database for both Dev + Prod
- CORS Policy implemented by .NET
- JWT Token for access secure routes
- Refresh Token by HTTP only Cookie to generate new JWT Tokens
- Swagger API documentation with routes
- Node Express TypeScript Eslint Jest Boilerplate
16-February-2024
A boilerplate ready for serving Node Express TypeScript ESlint Prettier Jest Supertest and Husky
The code at GitHub
- Tests
02-July-2023
Types of Tests used creating this Blog and the Web Projects
- Usability Tests to involve the future Users of the Blog and Projects with the goal of satisfied Users
- End-to-end Tests or Functional Tests for making sure that the workflows work as expected. The authentication of a User could be an example
- Integration Tests across several units to achieve their goals
- Unit Test for testing functions or classes by supplying input and making sure the output is as expected
Below a demo of testing with Jest and Supertest in a Node.js Express TypeScript App
The code at GitHubBelow a demo of Unit testing with xUnit and .NET Core console App
The code at GitHub