Skip to content

ilyushkaaa/Filmoteka

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Фильмотека API

Этот проект представляет собой бэкенд приложения "Фильмотека", которое предоставляет REST API для управления базой данных фильмов и актёров.

Особенности

  • Добавление, изменение и удаление информации об актёрах.
  • Добавление, изменение и удаление информации о фильмах.
  • Получение списка фильмов с возможностью сортировки и поиска.
  • Получение списка актёров с их фильмами.
  • Авторизация и ролевая система доступа: обычный пользователь и администратор.
  • Логирование обрабатываемых запросов и ошибок.
  • Покрытие тестами более чем на 70%.
  • Docker и docker-compose для удобного развёртывания окружения.
  • Использован code-first подход
  • Проект выполнен с использованием чистой архитектуры

Использованные инструменты

  • Go
  • PostgreSQL
  • Redis
  • Docker
  • docker-compose

Установка и запуск

  1. Склонируйте репозиторий:

    Для https:

    git clone https://github.com/ilyushkaaa/Filmoteka.git

    Для ssh:

     git clone git@github.com:ilyushkaaa/Filmoteka.git
  2. Перейдите в каталог проекта:

    cd filmoteka
  3. Создайте файл .env и настройте переменные окружения, включая настройки подключения к базе данных.

  4. Запустите проект с помощью docker-compose:

    docker-compose up --build
  5. Для работы с функционалом, связанным с изменением данных, то есть, который может выполнять только админ, необходимо вручную добавить в базу данных юзера со значением admin в поле role, а далее как и обычный юзер авторизоваться и полученный session_id прикладывать в заголовке запроса Cookie

  6. API будет доступно по адресу http://localhost:8080.

Использование

API документация доступна после запуска приложения по адресу http://localhost:8080/swagger/index.html.


About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors