Readme on english is available here.
- Проект полностью асинхронен благодаря aiogram, asyncpg и redis asyncio.
- Предусмотренно 2 уровня логирования.
- Подключен тестовый магазин yookassa.
-
Telegram:
-
Создайте тестовый магазин юкасса.
-
Создайте .env файл с такой структурой (гайд по dotenv):
# Telegram
TOKEN='token from BotFather'
BUGS_GROUP_ID='group id' # начинается на "-"
IDEAS_GROUP_ID='group id' # начинается на "-"
RETURN_URL='link to your bot' # нужно для юкассы
# Postgres
POSTGRES_USER='postgres'
POSTGRES_PASSWORD='postgres'
POSTGRES_DB='AnonChat'
POSTGRES_HOST='localhost' # измените на название контейнера если вы используете докер
POSTGRES_PORT='5432'
# Redis
REDIS_DB='1'
REDIS_HOST='localhost' # измените на название контейнера если вы используете докер
REDIS_PORT='6379'
# Yookassa
YOOKASSA_ACCOUNT_ID='yookassa shop id' # это значение должно быть числом
YOOKASSA_SECRET_KEY='yookassa api token'
Самый простой способ - запустить проект с помощью docker.
-
Убедитесь, что у вас установлен docker.
-
Скомпилируйте проект (это займет некоторое время):
docker compose build
- Запустите проект:
docker compose up
На этом все! Docker compose файл установит и настроит все необходимое.
Также вы можете запустить проект вручную:
- Создайте виртуальное окружение:
python -m venv venv
- Активируйте виртуальное окружение:
- Windows:
venv\Scripts\activate
- Linux и macOS:
source venv/bin/activate
- Установите зависимости:
pip install -r requirements.txt
-
Установите Redis.
-
Установите Postgres (если вы меняли имя пользователя или пароль при установке измените их в .env файле).
-
Запустите проект:
python main.py
Вы можете задать вопрос или поделиться идеей о проекте.
Планы по проекту находятся здесь.