GenLayer project boilerplate — это сторонний пример на GitHub для сценария использования GenLayer. Его README посвящен интеллектуальному контракту для ставок на футбол, прямым тестам с моками веб-запросов и LLM, интеграционным тестам на базе Studio, скрипту развертывания на TypeScript и фронтенду на Next.js. Это руководство основано на файлах репозитория, полученных из 2026-08-19. В нем OdiRouter не описывается как интеграция, партнер, встроенный сервис или лицо, поддерживающее проект. OdiRouter — лишь независимый домен публикации: https://odirouter.ai/.
Что находится в репозитории
README делит проект на несколько рабочих частей:
contracts/содержит интеллектуальные контракты на Python. Основной пример находится вcontracts/football_bets.py.tests/direct/содержит быстрые тесты в памяти. В них используются моки веб-запросов и LLM, поэтому GenLayer Studio для этого режима не нужен.tests/integration/содержит сквозные тесты, которым нужен GenLayer Studio.frontend/— это приложение Next.js 15 на TypeScript с TanStack Query и Radix UI.deploy/содержит скрипт развертывания на TypeScript.gltest.config.yamlописывает записиlocalnetиstudionet, путь к контрактам и файл окружения.pyproject.tomlзадает конфигурацию pytest и маркерintegration.package.jsonзадает рабочее пространство фронтенда, командыdev,build,start,lint,deployи зависимостьgenlayer-js^1.1.8.
Такое решение позволяет независимо менять контракт, интерфейсную часть и сценарий, сохраняя при этом быстрые и интеграционные проверки.
Подготовка окружения
README указывает Python 3.12 или более новую версию, а также глобально установленный GenLayer CLI:
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
npm install -g genlayerДля интеграционных тестов и развертывания нужен GenLayer Studio: локальная установка или размещенный Studio, на который ссылается README. Точный URL-адрес и доступность среды необходимо проверить перед запуском. Репозиторий также содержит переменные фронтенда в frontend/.env.example, включая URL RPC, идентификатор сети и адрес развернутого контракта.
Проверки перед развертыванием
Сначала запустите линтер контрактов:
genvm-lint check contracts/football_bets.pyЗатем выполните прямые тесты:
pytest tests/direct/ -vREADME описывает API прямого доступа, используемый тестами: direct_deploy, direct_vm.sender, mock_web, mock_llm, expect_revert и clear_mocks. Эти имена относятся к тестовой среде репозитория. Перед переносом кода в другой проект проверьте версии пакетов и актуальную документацию.
Интеграционные тесты запускаются через gltest и требуют Studio:
gltest tests/integration/ -v -sБыстрый цикл проверки выполняется без Studio, а сетевой сценарий проверяется отдельно. Не следует выдавать скорость, надежность или результаты этих тестов за универсальные бенчмарки: README не публикует независимые показатели производительности.
Контракт и текущие имена API
contracts/football_bets.py использует TreeMap для ставок и очков, декораторы @gl.public.write и @gl.public.view, а также gl.nondet.web.render и gl.nondet.exec_prompt при проверке результата матча. Результат обрабатывается через gl.eq_principle.strict_eq. Это конкретный пример из репозитория, а не полный список возможностей GenLayer.
Сценарий deploy/deployScript.ts читает байты contracts/football_bets.py, вызывает client.initializeConsensusSmartContract(), затем client.deployContract() и ждет получения через client.waitForTransactionReceipt(). В файле явно импортируются GenLayerClient, TransactionHash, TransactionStatus, DecodedDeployData, GenLayerChain и localnet из genlayer-js. Эти имена следует сменить с установленной областью SDK перед изменением сценария.
Где расширять проект
Для нового сценария использования обычно нужно изменить четыре области:
Создайте контракт в
contracts/и закройте его прямыми тестами. Сохраните отдельные имитационные объекты для внешних веб-данных и LLM, если контракт их использует.Добавьте интеграционные сценарии в
tests/integration/, чтобы проверять поведение через Studio.Обновите
deploy/deployScript.ts, если изменились файл контракта или аргументы развертывания.Обновите типизированную оболочку контракта и хуки в
frontend/lib/contracts/иfrontend/lib/hooks/, а адрес и параметры RPC храните в.env.
gltest.config.yaml и pyproject.toml остаются точками настройки запуска тестов. Такой путь расширения соответствует структуре текущего репозитория и не предполагает скрытых API.
Что проверить перед использованием
Репозиторий является примером, а не гарантией готовности системы к эксплуатации. Перед началом работы проверьте текущие версии GenLayer CLI, genlayer-js, пакетов Python и Studio. Не делайте выводов о сетевой экономике, гарантиях, совместимости, стоимости или производительности на основании одного шаблонного проекта. В этой публикации нет подтверждения встроенной интеграции с OdiRouter, партнерства или одобрения.