Секретный санта в каждый дом! Часть 0. Начало

2020-03-09 • edited 2021-02-06

Начало разработки небольшого проекта. Формулировка требований.

Оглавление

Цель проекта

Каждый новый год встаёт задача проведения раздачи подарков среди коллег, друзей, знакомых. Классическим способом организации данного мероприятия является секретный санта, в рамках которого каждый из участников готовит подарок случайному игроку. Есть множество различных приложений, упрощающих организацию секретного санты, однако мне пока не удалось найти сервис, который бы позволил автоматизировать всю связанную с подготовкой рутину. Настало время написать такой сервис!

Требования к функционалу

MVP:

  • Игровые комнаты, в которых есть роли игрока и организатора.
  • Поддержка двух вариантов игры: анонимного и явного.
  • Возможность задания ограничений на тип и стоимость подарка, а также на срок игры.
  • Генерация удобных для печати наклеек с именем получателя подарка.

Желаемый функционал:

  • Поддержка различных стилей наклеек.
  • Возможность указывать степень готовности подарка.
  • Поддержка OAuth.
  • Уведомления об изменениях в популярных мессенджерах.
  • Следование GDPR.

Требования к технической части

  • Backend: .NetCore.
  • Frontend: Blazor.
  • DB: PostgreSQL.
  • Поддержка SignalR.
  • Деплой должен быть простым (Docker).
  • Покрытие тестами не менее 80%.
  • CI/CD.
  • Долгие задачи должны выполняться на Hangfire.

Ссылки:

Исходный код проекта доступен на github.

developmentdevelopmentstudycsharpblazordockernetcorepostgresqlsecretsanta
License: MIT

Двоичная куча (Binary Heap) и сортировка с её помощью.

comments powered by Disqus