JavaCourseProject

0

Описание

Языки

  • Java66,4%
  • JavaScript29,7%
  • CSS2,5%
  • Dockerfile0,9%
  • HTML0,5%
README.md

Бронирование мест

Компания организует новое пространство для коворкинга, где студенты, сотрудники и гости могут комфортно проводить время, работая над своими проектами. Ваша цель — создать сервис, который обеспечит быстрое, гарантированное и удобное бронирование рабочих мест и прочих помещений через интерфейс на сайте.

Цели проекта: Разработать сервис, который позволит бронировать места в коворкинге:

  1. Быстро. Минимизировать количество шагов в процессе бронирования
  2. Гарантированно. Обеспечить актуальное отображение свободных мест и возможность узнать загруженность на нужные дату/время. Не допускать возможности брони одного места двумя участниками
  3. Удобно. Создать интуитивно понятный интерфейс без лишних переходов, с линейной навигацией по сценариям использования

Функциональные требования:

  • Возможности бронирования. Опции для отмены и переноса бронирований
  • Административный интерфейс. Управление бронированиями и редактирование данных пользователей

Стек:

  • Java + Spring
  • Gradle + Kotlin
  • PostgreSQL
  • PgAdmin
  • React
  • Docker + WSL
  • Swagger

Версии

  • Windows 11: 10.0.26100 Build 26100
  • Java: 17
  • JVM: 23.0.2
  • Spring: 3.4.5
  • Gradle: 8.13
  • Kotlin: 2.0.21
  • PostgreSQL: 14.18
  • PgAdmin 4: 9.3
  • React: 19.1.0
  • Docker: 28.0.4, build b8034c0
  • Docker Compose: 3.8
  • WSL: 2.4.13.0, core: 5.15.167.4-1
  • Swagger: 5.2.0

Запуск

  1. Создайте в корне проекта файл
    .env
    со следующей структурой:
POSTGRES_USER = "..." POSTGRES_PASSWORD = "..." POSTGRES_DB = "..." PGADMIN_EMAIL = "..." PGADMIN_PASSWORD = "..."

и заполните его нужными значениями

  1. Поменяйте поле

    Username
    в файле
    servers.json
    на значение, указанное в поле
    POSTGRES_USER
    в файле
    .env

  2. Выполните

    docker-compose up -d --build

Лицензия

MIT

*Использован упрощенный кейс олимпиады PROD`25