Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ProjectHive Backend

Java SpringBoot Hibernate PostgreSQL JWT

Backend сервис для мобильного приложения управления задачами команды.

Система позволяет тимлидам публиковать задачи, а разработчикам — брать задачи в работу и отслеживать их выполнение через мобильное приложение.

Технологии

  • Java
  • Spring Boot
  • Spring Security
  • Hibernate / JPA
  • PostgreSQL
  • JWT authentication
  • Maven

Основной функционал

  • регистрация и аутентификация пользователей
  • авторизация через JWT
  • создание и управление задачами
  • назначение задач участникам команды
  • изменение статуса выполнения задач
  • REST API для взаимодействия с мобильным приложением

Архитектура проекта

Проект построен по многослойной архитектуре:

controller – REST контроллеры service – бизнес-логика приложения repository – работа с базой данных (Spring Data JPA) model – сущности базы данных auth – конфигурация безопасности и JWT

Такой подход обеспечивает разделение ответственности и упрощает поддержку кода.

База данных

Используется PostgreSQL.

Основные сущности:

  • User
  • Task
  • Team
  • TeamMember
  • TaskStatus

Доступ к базе данных реализован через Hibernate (JPA).

Аутентификация

Для защиты API используется JWT (JSON Web Token).

Процесс авторизации:

  1. Пользователь отправляет логин и пароль
  2. Сервер генерирует JWT-токен
  3. Токен используется для доступа к защищенным endpoint'ам

REST API

Пример основных endpoint'ов:

POST /api/auth/register

POST /api/auth/authenticate

GET /api/task/{taskID}

GET /api/task/picked

POST /api/task/pick/{taskID}

POST /api/task/finish/{taskID}

POST /api/task/approve/{taskID}

PUT /api/task/{taskID}

DELETE /api/task/{taskID}

Связь с мобильным приложением

Этот backend используется мобильным приложением, написанным на Kotlin (Android).

Приложение взаимодействует с сервером через REST API.

Запуск проекта

  1. Клонировать репозиторий

git clone https://github.com/FrostHoll/ProjectHiveBack

  1. Настроить PostgreSQL

  2. Запустить приложение

mvn spring-boot:run

Автор

Олег Щербаков

About

REST API backend for Android app for tasks tracking

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages