Telegram-бот для расчета реальной чистой прибыли (P&L) селлеров на Wildberries.
SellerBot автоматически собирает данные по продажам, комиссиям, логистике и штрафам через API Wildberries, вычитает себестоимость и выдает одну понятную цифру: "Сколько денег ты заработал сегодня".
- Backend: Python 3.11+, FastAPI, aiogram 3.x
- Database: PostgreSQL 15, SQLAlchemy (async)
- Cache: Redis 7
- Storage: MinIO
- Admin Panel: Next.js 15, TypeScript, Shadcn/ui
- Payments: ЮКасса
git clone <repo-url>
cd sellerbot# Скопировать шаблон
cp .env.example .env
# Отредактировать .env и заполнить:
# - TELEGRAM_BOT_TOKEN (получить у @BotFather)
# - ADMIN_TELEGRAM_ID (ваш Telegram ID)
# - SECRET_KEY (любая случайная строка)
# - ENCRYPTION_KEY (сгенерировать командой ниже)Генерация ENCRYPTION_KEY:
python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())"docker-compose up -dПроверить статус:
docker-compose psДолжны быть запущены:
- sellerbot-postgres (порт 5433)
- sellerbot-redis (порт 6380)
- sellerbot-minio (порты 9002, 9003)
cd backend
# Создать виртуальное окружение
python -m venv venv
# Активировать venv
# Windows:
venv\Scripts\activate
# Linux/Mac:
source venv/bin/activate
# Установить зависимости
pip install -r requirements.txt
# Применить миграции базы данных
alembic upgrade head# В папке backend с активированным venv
python main.pyAPI будет доступен на http://localhost:8000
# В новом терминале, в папке backend с активированным venv
python -m app.bot.maincd admin
# Установить зависимости
npm install
# Запустить dev сервер
npm run devAdmin panel будет доступен на http://localhost:3000
sellerbot/
├── backend/ # FastAPI + aiogram
│ ├── app/
│ │ ├── api/ # REST API endpoints
│ │ ├── bot/ # Telegram bot handlers
│ │ ├── core/ # Config, DB, security
│ │ ├── models/ # SQLAlchemy models
│ │ ├── schemas/ # Pydantic schemas
│ │ ├── services/ # Business logic
│ │ ├── integrations/# WB API, ЮКасса
│ │ └── scheduler/ # APScheduler tasks
│ ├── alembic/ # DB migrations
│ ├── tests/ # Pytest тесты
│ └── main.py
│
├── admin/ # Next.js Admin Panel
│ ├── app/ # App Router
│ └── components/ # UI components
│
├── docs/ # Documentation
│ ├── PRODUCT_DESCRIPTION.md
│ ├── TECH_STACK.md
│ ├── ROADMAP.md
│ └── CLAUDE.md
│
└── docker-compose.yml
cd backend
# Запустить все тесты
pytest tests/ -v
# С покрытием кода
pytest tests/ -v --cov=app
# Только unit тесты P&L калькулятора
pytest tests/test_pnl_service.py -v🚧 MVP в разработке - Неделя 1/4
См. ROADMAP.md для детального плана.
Проприетарный проект