This repository conatins TodoList - a sample Blazor app
This project is a .NET 5 implemented Blazor WebAssembly application for managing tasks.
TodoList enables communication with the MSSQL database consisting of sending and receiving data regarding users, lists and todos. Application can be used by users who may create account and login to the application.
It uses Entity Framework Core to communicate with a database, which contains required data tables like:
- Users - where informations about users are stored
- ListsOfTodos - where informations about lists of todos are stored
- Todos- where informations about todos are stored.
Other tools used in project:
- JwtBearer - for authentication
- Open API - for API documentation
- AutoMapper - for mapping DTO-s and EntityModels data
Click to expand!
- [POST] Create new user
/api/users
- [POST] Authenticate the user
/api/users/authenticate
- [GET] Get user by id
/api/users/{userId}
Click to expand!
- [POST] Create a new list
/api/lists
- [GET] Get a list of todo lists
/api/lists
- [GET] Get todo list by id
/api/lists/{listOfTodosId}
- [DELETE] Delete the todo list with given id
/api/lists/{listOfTodosId}
- [PUT] Update (full update) todo list
/api/lists/{listOfTodosId}
Click to expand!
- [POST] Create a new todo
/api/lists/{listOfTodosId}/todos
- [GET] Get a list of todos from specified todo list
/api/lists/{listOfTodosId}/todos
- [GET] Get todo from specified todo list
/api/lists/{listOfTodosId}/todos/{todoId}
- [DELETE] Delete the todo with given id
/api/lists/{listOfTodosId}/todos/{todoId}
- [PUT] Update (full update) todo
/api/lists/{listOfTodosId}/todos/{todoId}
- [PATCH] Update (Partially update) todo
/api/lists/{listOfTodosId}/todos/{todoId}
For more documentation data, visit
/swagger/TodoListOpenAPISepcification/swagger.json
(or /index.html
for documentation UI)
Make sure you have the .NET 5.0 SDK installed on your machine. Then do:
git clone https://github.com/TomWia9/TodoList.git
cd TodoList\TodoList\Server
dotnet run
This will need to be perfored before running the application for the first time
- You have to change ConnectionString in appsettings.json for ConnectionString that allow you to connect with database in your computer.
- Issue the Entity Framework command to update the database
dotnet ef database update