Необходимо сделать сервис из двух интерфейсов. Сервис будет использоваться для проведения онлайн трансляций, по сути это просто простая html-страничка, которую стримминговый софт будет забирать по http и накладывать поверх видео. То есть требований к нагрузке нету, требований по безопасности тоже нету (это будет работать локально с 1 пользователем и в админке и на выводе). Задача очень простая и быстрая, но крайней срочная.
Чтобы было понятно что я хочу получить в конце, см, например вот это видео:
www.youtube.com/watch?v=Y... перемотайте его на 20:03 и поставьте на паузу. Там внизу вы увидеть список игроков, для части игроков стоит отметка с его игровой ролью. Один игрок (Левша, номер 9 ) затемнен, т.к. "отстрелен" по сути мне нужно сделать веб-сервис, который подготовит вот эту вот самую плашку для трансляций. Без лишних заморочек.
Пользователем буду только я потому тут не требуется супер крутого UI/UX, нужно чтобы мне было удобно заполнить один раз всех игроков и потом, по ходу игры менять их роли.
По технологиям лучше PHP+MySQL (PostgreSQL), т.к. их я точно смогу развернуть локально). Но это не обязательно
1. Админка
Делаем максимально просто, работать с этим будет один человек, которому можно довериться, потому не усложяем никакими дополнительными проверками и валидациями.
Авторизация также не нужна.
нужно сделать инструмент по редактированию одного списка из 10-40 элементов, с 5-ю полями каждый. Усложнять не нужно просто нужно вывести этот самый список, в который можно добавлять новые значения, удалять старые и редактировать текущие. Все, больше тут ничего не нужно.
Редактировать нужно следующие поля:
1. Имя input text
2. Фото загрузка фотографии (с подготовкой после загрузки превью высотой 130px (и пропорциональной шириной, хорошо если число сжатия регулируется где-то в конфиге), которая и будет показываться в списке)
3. Порядок input text (число, но тип введенных данных можно не валидировать если ввели не число можно тупым приведением к типу писать в базу 0)
4. Роль select (4 значения)
5. Статус select (3 значения)
Никаких особых пожеланий тут нет главное чтобы этим можно было пользоваться.
Вторая часть:
Интерфейс вывода.
Задача вывести людей, который были добавлены в админке в html-поток.
Нужно взять людей, у которых поле порядок содержит число от 1 до 10 (включительно) отсортированных по этому числу. Если игроков больше 10 таких (ну, сглючил кто-то) то берем первые 10. Игроки, у которых “порядок” не заполнен/равен нулю не выводятся вообще.
Игроки выводятся на весь экран по ширине на прозрачном бекграунде. Высота страницы должна быть ровно под размер картинки (проверочная история: в браузере появляется скролл только тогда, когда он реально сжимается до минимального размера квртинок)
Игрок выводится как его фотография высотой 150px и именем игрока под ней. Игроки выстраиваются в одну линию. Если имя слишком длинное то оно должно сжаться за счет уменьшения размера шрифта. Шрифт ubuntu regular. Размер шрифта нужно подобрать так, чтобы имя в 10 символов влезало без уменьшения шрифта.
Это база.
Сам этот список авторефрешится каждые 2 секунды
Теперь единственный чуть более сложный элемент, в контексте верстки:
В зависимости от того, что выбрано в админке в селекте для каждого игрока поверх его фотографии могут быть наложены две картинки (одна с отображением роли, вторая для убитых игроков тип убийства (застрелен или повешен).
Опять же сложностей алгоритмических нет. Будет прописано “вот это значение вот этого селекта накладываем вот эту картинку, вот это значение вот этого другую”.
Все, больше ничего делать не нужно.