Современный и красивый веб‑приложение желаний с совместным редактированием. Все данные сохраняются как JSON‑файлы на сервере, поддерживается до 5 автоматических копий для восстановления.
- Установите Node.js 18+
- Установите зависимости:
npm install- Запустите сервер:
npm startОткройте http://localhost:3000.
- Создание/редактирование вишлистов (без авторизации, доступно всем)
- Добавление пунктов, редактирование текста
- «Взять»/«Освободить» пункт; отображение статуса для всех
- Автосохранение версий (до 5 копий) и восстановление из списка версий
- Современный адаптивный UI (Tailwind, поддержка мобильных устройств)
server.js— Express API, статическая выдачаpublic/public/— фронтенд (Tailwind через CDN)data/— файлы вишлистов (<id>.json)data/versions/<id>/— версии для конкретного списка
GET /api/wishlists— список вишлистовPOST /api/wishlists— создать/перезаписать (body:{ title, items })GET /api/wishlists/:id— получить списокPATCH /api/wishlists/:id— переименовать (body:{ title })POST /api/wishlists/:id/items— добавить пункт (body:{ text })PATCH /api/wishlists/:id/items/:itemId— изменить текст или статус (body:{ text? , action: 'take'|'release', name? })GET /api/wishlists/:id/versions— список версийPOST /api/wishlists/:id/restore— восстановить (body:{ file })
- Перед каждым изменением создаётся версия текущего файла; хранится до 5 последних копий.
- Для «живого» отображения используется периодическое обновление каждые 5 секунд.