Простой и удобный сайт для студии маникюра с админ-панелью и Telegram уведомлениями.
- ✅ Простое хранение данных - все данные сохраняются в JSON файлах
- ✅ Загрузка изображений - файлы сохраняются в папке
uploads/ - ✅ Telegram уведомления - автоматические уведомления о новых заявках
- ✅ Админ-панель - удобное управление контентом
- ✅ Адаптивный дизайн - работает на всех устройствах
Все данные хранятся в папке data/ в JSON файлах:
settings.json- настройки сайта и Telegram ботаblocks.json- блоки контента (о нас, услуги, отзывы, контакты)services.json- услуги маникюраreviews.json- отзывы клиентовrequests.json- заявки от клиентовsubscribers.json- подписчики Telegramimages.json- информация о загруженных изображениях
Изображения сохраняются в папке uploads/.
-
Установите зависимости:
npm install
-
Запустите сервер:
npm run dev
-
Откройте сайт:
- Сайт: http://localhost:5000
- Админ-панель: http://localhost:5000/admin (пароль:
admin123)
- Создайте бота через @BotFather в Telegram
- Получите токен бота
- В админ-панели в разделе "Настройки" вставьте токен
- Добавьте подписчиков в разделе "Подписчики"
- Нажмите "Отправить тест" для проверки
NailStudio/
├── client/ # React клиент
├── server/ # Express сервер
├── shared/ # Общие типы и схемы
├── data/ # JSON файлы с данными
├── uploads/ # Загруженные изображения
└── package.json
- Клиент: React + TypeScript + Tailwind CSS
- Сервер: Express + TypeScript
- Хранение: JSON файлы
- Сборка: Vite
npm run dev- запуск в режиме разработкиnpm run build- сборка для продакшенаnpm run start- запуск продакшен версииnpm run check- проверка типов TypeScript
- Пароль админа хранится в зашифрованном виде
- Токен Telegram бота скрыт от публичного доступа
- Все файлы загружаются в безопасную папку
При возникновении проблем:
- Проверьте, что все папки
data/иuploads/существуют - Убедитесь, что у процесса есть права на запись в эти папки
- Проверьте логи сервера на наличие ошибок