Project

Task Management System

Challenging
91 completions
~ 52 hours
4.6

You will practice building a REST API, learn how to validate input and customize server responses, practice applying JWT authentication and learn about creating complex database queries using Spring Data.

Provided by

JetBrains Academy JetBrains Academy

About

Have you ever used any task management systems like Jira or Trello? This project is the perfect starting point to build a small yet feature rich application on your own. In this project, you will develop a task management system that allows users to create, update, and manage tasks. You'll implement JWT authentication to protect your system and create aggregate views of tasks. This will give you a good practice in creating advance CRUD applications and provide you with the necessary skills to create a useful web service for your portfolio and daily use.

Graduate project icon

Graduate project

This project covers the core topics of the Java Backend Developer (Spring Boot) course, making it sufficiently challenging to be a proud addition to your portfolio.

At least one graduate project is required to complete the course.

What you'll learn

Once you choose a project, we'll provide you with a study plan that includes all the necessary topics from your course to get it built. Here’s what awaits you:
Create the endpoint to register new users and secure the other endpoint to make it accessible to authenticated users only.
Add the functionality to publish new tasks and list and filter existing tasks.
Introduce JWT authentication to let users use tokens to authenticate to access the API.
Allow users to assign their tasks to other users and change the task statuses.
Allow users to post comments to tasks and see all the comments for each task.

Reviews

Bernardo Antunes avatar
Bernardo Antunes
2 hours ago
Pretty interesting project. Sure learned a lot about spring boot!
Yaraslau Krautsou
3 months ago
What I learned in this project: 1. Spring Boot architecture — how the layers (controller, service, repository, model) fit together and why separating them matters. ...
Dylan Kalb avatar
Dylan Kalb
4 months ago
I would say I learned most about the different layers of an application. Decoupling the logic into its own service layer from the controller while also keeping the logic of querying the database within interfaces that extended the repositories kept my project very organized. Learning how to implemen ...

4.6

Learners who completed this project within the Java Backend Developer (Spring Boot) course rated it as follows:
Usefulness
4.8
Fun
4.4
Clarity
4.5