audetv / hex-example

Example of Hexagonal Architecture for training course at Geekbrains. Repeating the code step by step.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

hex-example

Example of Hexagonal Architecture for training course at Geekbrains. Repeating the code step by step.

Тренируем:

  1. Создание сервера и клиента HTTP
  2. Передачу json-данных в запросах и ответах (в т.ч. потоково)
  3. Тестирование с помощью httptest

Задача:

Создать простой CRUD-сервер регистрации пользователей (система хранения - в памяти).

Сервер должен поддерживать операции:

  • Создание профиля пользователя в виде json
  • Удаление профиля по уникальному идентификатору
  • Чтение профиля по уникальному идентификатору
  • Получение всех профилей по части имени

Дополнительны требования:

  • Hexagonal architecture
  • Graceful shutdown
  • Basic auth middleware
  • Стриминг получения списка профилей, с выдачей ошибки в любой момент, если потребуется (имитация ошибки в системе хранения)

About

Example of Hexagonal Architecture for training course at Geekbrains. Repeating the code step by step.

License:MIT License


Languages

Language:Go 99.8%Language:Makefile 0.2%