Skip to content

Do It is a project used for creating tasks and sharing it with others. Its main goal is to help users remembering and organize important tasks.

License

Notifications You must be signed in to change notification settings

kaiqlopes/doit-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

42 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Do It

NPM

About the Project

Do It is a To Do List app which has the focus on helping users to be more organized, centering all their responsabilities in one place through task creations with a variety of customizations.

Features:

  • Register your tasks, choose its priority, categories, expiration dates, task status and give detailed description about what to do.

  • You can share the task with others and remove them. If it is the case, you can also give or remove administrator permissions which grants the users more authority and flexibility over the tasks.

  • Users with permissions can invite new task users, give administrator rights, update or delete tasks.

  • Account creation, authentication token using Oauth2 and JWT. Users that doesn't have an account are not able to use the app or be invited to any task.

  • Some endpoints are protected, allowing only system admin accounts to access it.

Domain Model

doit2

Used Technologies

Skills

  • Layered Architecture
    image

  • Spring Security applied in order to limit some endpoints and generate tokens that expires within a day, tokens are necessary to access all endpoints and validate users
  • Customized HTTP response codes using ResponseEntity
  • Customized exceptions response messages and codes using exception handlers
  • Customized Constraint Validator to validate user updates
  • N+1 queries problems solved to improve performance
  • Request tests using Postman
  • Unit and integration tests writen for repository, services and controllers using JUnit 5 and Mockito ensuring application integrity

How to Run

Prerequisites: Java 17

1. Clone the repository

git clone [email protected]:kaiqlopes/doit-api.git

2. Open the project in your preferred IDE and execute it


3. Use any API REST testing tool

Author

Kaique Lopes da Silva

About

Do It is a project used for creating tasks and sharing it with others. Its main goal is to help users remembering and organize important tasks.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages