Skip to content

spanwite/secret-santa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Secret Santa Logo
Тайный Санта

Простой веб-сайт для проведения онлайн-розыгрыша по игре «Тайный Санта»

Позволяет сгенерировать пары участников для анонимного обмена подарками без регистрации, аккаунтов и сторонних сервисов.

Проект ориентирован на небольшие компании друзей, коллег или семейные круги, где важно быстро и прозрачно организовать розыгрыш.

Демо

Посмотреть и попробовать сайт можно здесь:
👉 https://spanwite.github.io/secret-santa/

Идея и философия

Не всегда есть желание или возможность пользоваться внешними сервисами для игры в Тайного Санту:

  • требуется регистрация,
  • нужно передавать персональные данные третьим лицам,
  • интерфейс может быть перегружен лишним функционалом.

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

Возможности

Текущая версия сайта поддерживает:

  1. Добавление и удаление участников с сохранением данных в localStorage
  2. Указание списка желаемых и нежелательных подарков для каждого участника
  3. Генерацию уникальных ссылок для каждого участника
  4. Просмотр информации о том, кому именно нужно дарить подарок, без раскрытия других пар

Как пользоваться

  1. Добавьте участников с помощью формы на главной странице:

    • укажите имя участника;
    • заполните список желаемых и нежелательных подарков (опционально);
    • нажмите кнопку «Добавить».
  2. После добавления всех участников нажмите кнопку «Разыграть».

  3. Для каждого участника:

    • скопируйте сгенерированную ссылку с помощью кнопки с иконкой копирования;
    • отправьте эту ссылку соответствующему участнику любым удобным способом.
  4. Перейдя по ссылке, участник увидит:

    • имя человека, которому он дарит подарок;
    • список желаний и нежелательных подарков этого человека.

Организатор при этом не узнаёт, кто кому выпал, если сам не открывает ссылки.

Технические особенности

Сайт является полностью статическим и не использует серверную часть. Вся логика выполняется на стороне клиента.

Используемый стек

Минимальный набор технологий без сторонних библиотек и фреймворков:

  • HTML
  • CSS
  • JavaScript

Генерация ссылок

Каждая ссылка формируется на основе текущего домена и содержит всю необходимую информацию в параметрах URL:

  • from — имя участника, который дарит подарок
  • to — имя участника, которому дарят
  • wishlist — список желаемых подарков
  • antiWishlist — список нежелательных подарков

Часть параметров кодируется в Base64.

Примечание: Кодирование используется для того, чтобы организатор, рассылающий ссылки, случайно не увидел распределение пар, просто взглянув на URL.

Планы по развитию

Идеи для дальнейшего улучшения проекта:

  • Возможность редактирования данных участника после добавления
  • Визуальная анимация при копировании ссылки
  • Новогоднее или праздничное оформление
  • Обновление и улучшение общего дизайна интерфейса
  • Перевод на другие языки

Лицензия

Проект распространяется свободно и может быть использован, доработан или адаптирован под любые нужды.

About

Простой веб-сайт для проведения онлайн-розыгрыша по игре «Тайный Санта».

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors