This is a secure Employee Management System built using ASP.NET Core Web API. It includes features like JWT-based authentication, role-based authorization, and menu-level permission mapping. The project follows the Repository Pattern for clean architecture and maintainability.
- User Registration & Login
- JWT Token-based Authentication
- Role-Based Access Control (Admin, User, HR, Manager, Intern)
- Menu-Permission Mapping per Role
- View Profile & Self-Update
- Admin CRUD Operations on Employees & Roles
- Uses Entity Framework Core (EF Core) & Code First Migrations
- ASP.NET Core Web API
- Entity Framework Core
- SQL Server
- JWT Bearer Authentication
- Repository Pattern
- AutoMapper
- C#
/Controllers
AuthController.cs
UserController.cs
AdminController.cs
PermissionController.cs
/DTOs LoginDTO.cs RegisterDTO.cs LoginResponseDTO.cs UserAccessDTO.cs MenuPermissionDTO.cs AddPermissionDTO.cs AssignRole.cs ....
/Models Employee.cs Role.cs EmpRole.cs RoleMenuPermission.cs
/Interfaces IUnitOfWork.cs IAuthRepository.cs IEmployeRepository.cs
/Repositories UnitOfWork.cs AuthRepository.cs EmployeRepository.cs
/Helper MappingProfile
/Extensions ServiceRegister.cs
- Clone the repo
git clone https://github.com/Shruti120809/EmpManage.git
- Update appsettings.json with your SQL Server connection string.
- Run the following in Package Manager Console: Update-Database
- Run the project: dotnet run