Микросервис, который выводит информацию по адресу в сети трон, его bandwidth, energy, и баланс trx.
🐳 Запуск через Docker (рекомендуется)
- Установите Docker согласно инструкции с официального сайта: https://docs.docker.com/
- Клонировать репозиторий
git clone git@github.com:pashpiter/tron_service.git
- Перейти в папку tron_service
cd tron_service
- В папке создайте файл
.envс переменных окружения
touch .env
- Заполните по примеру своими значениями как в этом файле
- Для запуска проекта введите команду:
docker compose up -d
или если локально установлен Make:
make up
Тесты. Проект покрыт тестами, которые выполняются при сборке контейнеров.
💻 Локальный запуск (без Docker)
- Клонировать репозиторий
git clone git@github.com:pashpiter/tron_service.git
- Перейти в папку tron_service
cd tron_service
- В папке создайте файл
.envс переменных окружения
touch .env
- Заполните по примеру своими значениями как в этом файле
- Создать и активировать вирутальное окружение
python3 -m venv venv
acivate .venv/bin/activate
- Установить зависимости
pip install -r requirements.txt
- Запустить приложение
uvicorn app.main:app --reload
Тесты. Для запуска тестов используйте команду
pytest -v.
После запуска документация доступна по адресу:
{FASAPI_HOST}:{FASAPI_PORT}/docs
{FASAPI_HOST}:{FASAPI_PORT}/redoc
POST /
Описание:
Возвращает баланс TRX, bandwidth, energy и другую информацию по указанному адресу в сети TRON.
Параметры запроса (JSON):
{
"address": "TQjaZ9FD473QBTdUzMLmSyoGB6Yz1CGpux"
}
Пример успешного ответа:
{
"address": "TQjaZ9FD473QBTdUzMLmSyoGB6Yz1CGpux",
"trx_balance": 89898.03202,
"bandwidth": 600,
"energy": 0
}
GET /
Описание: Возвращает историю запросов с пагинацией. Параметры запроса (query params):
offset - Количество пропускаемых элементов (default: 0)
limit - Количество элементов на странице (default: 10)
Пример успешного ответа:
{
"items": [
{
"address": "TQjaZ9FD473QBTdUzMLmSyoGB6Yz1CGpux",
"trx_balance": 1250.5,
"bandwidth": 4900,
"energy": 950,
"id": 1,
"timestamp": "2025-04-22T11:26:50.621134Z"
}
]
}