This is a basic web application for managing courses, developed as part of a task. The application provides user authentication using JWT, role-based authorization, and functionality for managing courses, including viewing, adding, editing, and deleting courses.
- Users can register for an account with a username, email, and password either as administrators or as regular users.
- Registered users can log in to access the application.
- JWT (JSON Web Tokens) are used for user authentication.
- Role-based authorization restricts access to certain functionalities based on user roles.
- Two roles are defined: Administrator and Regular User.
- Only administrators can perform administrative tasks such as adding, editing, and deleting courses.
- Mechanism provided to create, edit, and delete entities from the system, but only the admin can carry out these functions.
The backend of this application is developed using .NET Web API, utilizing Ef Core for database interactions, implementing the Repository pattern, and using MSSQL for data storage.
To run the application, follow these steps:
- Clone the repository to your local machine.
- Navigate to the backend directory and set up the .NET Web API project.
- Update the connection string in the appsettings.json with your connection string.
- Update the database by running
dotnet ef database update
. - Ensure you have a compatible database (e.g., MSSQL) set up and configured.
- Run the application, and the backend server should start listening on the specified port.
- [Samuel N Okafor]
- [Samuel.Okafor@firstbankgroup.com]
This project is licensed under the Apache Licence.