173 lines
5.8 KiB
Markdown
173 lines
5.8 KiB
Markdown
# 🚀 Быстрый старт NakamaSpace
|
||
|
||
Быстрая инструкция для запуска за 5 минут.
|
||
|
||
## ⚡ Супер быстрый старт
|
||
|
||
```bash
|
||
# 1. Клонировать репозиторий
|
||
git clone <repository-url>
|
||
cd nakama
|
||
|
||
# 2. Запустить
|
||
./start.sh
|
||
```
|
||
|
||
Скрипт автоматически:
|
||
- Проверит и запустит MongoDB
|
||
- Установит зависимости
|
||
- Создаст .env файлы
|
||
- Запустит приложение
|
||
|
||
## 📝 Минимальная настройка
|
||
|
||
Если используете скрипт `start.sh`, нужно только:
|
||
|
||
1. **Получить Telegram Bot Token**
|
||
- Откройте [@BotFather](https://t.me/BotFather)
|
||
- Отправьте `/newbot`
|
||
- Скопируйте токен
|
||
|
||
2. **Добавить токен в .env**
|
||
```bash
|
||
nano .env
|
||
# Замените: TELEGRAM_BOT_TOKEN=your_telegram_bot_token_here
|
||
```
|
||
|
||
3. **Настроить Web App в боте**
|
||
- В BotFather: `/mybots` → ваш бот → Bot Settings → Menu Button
|
||
- Укажите URL: `http://localhost:5173` (для разработки)
|
||
|
||
## 🌐 Для локального тестирования в Telegram
|
||
|
||
Telegram требует HTTPS для Mini Apps. Используйте ngrok:
|
||
|
||
```bash
|
||
# Установить ngrok
|
||
brew install ngrok # macOS
|
||
# или скачайте с https://ngrok.com
|
||
|
||
# Запустить туннель
|
||
ngrok http 5173
|
||
|
||
# Скопируйте HTTPS URL и укажите в BotFather
|
||
```
|
||
|
||
## 📱 Первый запуск
|
||
|
||
1. **Откройте бота в Telegram**
|
||
2. **Нажмите кнопку меню** или отправьте команду
|
||
3. **Приложение откроется** как Mini App
|
||
4. **Готово!** Теперь можете:
|
||
- Создавать посты с тегами
|
||
- Искать в e621 и gelbooru
|
||
- Подписываться на пользователей
|
||
- Получать уведомления
|
||
|
||
## 🛠️ Структура проекта
|
||
|
||
```
|
||
nakama/
|
||
├── backend/ # API сервер
|
||
├── frontend/ # React приложение
|
||
├── start.sh # Скрипт запуска
|
||
├── SETUP.md # Подробная инструкция
|
||
└── README.md # Основная документация
|
||
```
|
||
|
||
## 🎨 Основные функции
|
||
|
||
### 🏠 Лента
|
||
- Создание постов с текстом и изображениями
|
||
- Обязательные теги: Furry 🦊, Anime 🎌, Other
|
||
- Лайки, комментарии, репосты
|
||
- Упоминания пользователей
|
||
|
||
### 🔍 Поиск
|
||
- e621 API для Furry контента
|
||
- gelbooru API для Anime
|
||
- Автокомплит тегов
|
||
- Просмотрщик изображений с swipe
|
||
- Скачивание изображений
|
||
|
||
### 🔔 Уведомления
|
||
- Telegram-стиль баблов
|
||
- Уведомления о подписках, лайках, комментариях
|
||
- Переходы к постам и профилям
|
||
|
||
### 👤 Профиль
|
||
- Статистика подписчиков
|
||
- Настройки фильтров (без Furry, только Anime, без NSFW)
|
||
- Донаты через Telegram Stars (планируется)
|
||
- Редактирование био
|
||
|
||
## 🛡️ Модерация
|
||
|
||
Для назначения модератора:
|
||
|
||
```javascript
|
||
// Подключиться к MongoDB
|
||
mongo nakama
|
||
|
||
// Назначить роль
|
||
db.users.updateOne(
|
||
{ telegramId: "YOUR_TELEGRAM_ID" },
|
||
{ $set: { role: "moderator" } } // или "admin"
|
||
)
|
||
```
|
||
|
||
Модераторы могут:
|
||
- Удалять любые посты
|
||
- Отмечать контент как NSFW
|
||
- Блокировать пользователей
|
||
- Просматривать и обрабатывать жалобы
|
||
|
||
## 🐛 Проблемы?
|
||
|
||
### Приложение не запускается
|
||
```bash
|
||
# Проверьте MongoDB
|
||
brew services list # должен быть started
|
||
|
||
# Проверьте порты
|
||
lsof -i :3000 # backend
|
||
lsof -i :5173 # frontend
|
||
```
|
||
|
||
### CORS ошибки
|
||
Убедитесь что `frontend/.env` содержит правильный API URL:
|
||
```
|
||
VITE_API_URL=http://localhost:3000/api
|
||
```
|
||
|
||
### Telegram показывает ошибку
|
||
- Проверьте что используете HTTPS (ngrok для разработки)
|
||
- Убедитесь что токен бота правильный
|
||
- Проверьте что Menu Button настроен в BotFather
|
||
|
||
## 📚 Дополнительная документация
|
||
|
||
- [SETUP.md](SETUP.md) - Подробная инструкция по установке
|
||
- [README.md](README.md) - Полная документация проекта
|
||
- [CONTRIBUTING.md](CONTRIBUTING.md) - Гайд по разработке
|
||
|
||
## 💡 Подсказки
|
||
|
||
1. **Dev режим**: Telegram Init Data проверка отключена для удобства разработки
|
||
2. **Моки**: В dev режиме создается тестовый пользователь автоматически
|
||
3. **Hot reload**: Frontend обновляется автоматически при изменениях
|
||
4. **Логи**: Смотрите в терминале для отладки
|
||
|
||
## 🎉 Готово к использованию!
|
||
|
||
Приложение работает? Отлично! Теперь вы можете:
|
||
- Создать первый пост
|
||
- Попробовать поиск по тегам
|
||
- Изучить настройки профиля
|
||
- Пригласить друзей в свою мини-социальную сеть!
|
||
|
||
---
|
||
|
||
**Нужна помощь?** Создайте Issue на GitHub или проверьте полную документацию в SETUP.md
|
||
|