main
Найдено исполнением рецепта из самого файла: `const BASE = 'https://testfront.binom.pw'` → `POST /wallet` возвращал 405 Method Not Allowed. GET-ручки терпят отсутствие префикса (`/state` == `/api/state`), а POST-ручки — нет. Внешний разработчик спотыкался на первой же строке примера. Что исправлено: - база в примере: `https://testfront.binom.pw/api` + предупреждение про /api - POST /wallet в примере: добавлены заголовок Content-Type и тело `{}` (без них 405) - WS-адрес в примере: явный `wss://` вместо `BASE.replace('https','wss')`, который после смены базы дал бы кривой `wss://testfront.binom.pw/api.replace…` - amountUnits в примере — строкой (поддержаны оба вида, число тоже работает) Проверено: рецепт, выдранный из файла регуляркой и запущенный как есть, отдаёт курс, `bet_open` и `bet_closed`. WS принимает подключение с чужого Origin (проверено тремя вариантами заголовка).
test-front — технический тестовый фронт (Binary Rocket)
Чисто технический веб-дашборд для ручной проверки механики через HTTP-шлюз: кнопки + лог. Без Phantom, без swap, без вывода средств — только постановка ставок фантиками и наблюдение за событиями.
Зачем
Технический пульт для проверки контракта «вручную»: быстро прогнать сценарий «создать кошелёк → пополнить тестовым фаусетом → поставить → дождаться исхода». Полный контракт API (HTTP + WS, поля событий, коды ошибок) — API.md.
Возможности
- Поля в шапке: Шлюз (API), WS URL, Адрес.
- Создать кошелёк — генерирует новый custodial-адрес через шлюз.
- Пополнить кошелёк — тестовый фаусет: наливает SOL и фантики.
- Сделать ставку —
POST /api/bet(sideUP/DOWN,amountUnits). - События по WebSocket (
price,bet_open,bet_closed) — поллинга нет. - Лог всех действий + кнопки «Копировать» / «Очистить».
Как пользоваться
- Открыть
https://testfront.binom.pw/—index.htmlотдаётся из куба (namespacegame). Поле «Шлюз (API)» можно оставить пустым — фронт возьмёт свой адрес. - Нажать Создать кошелёк — в поле «Адрес» появится custodial-адрес.
- Нажать Пополнить кошелёк — тестовый фаусет нальёт SOL и фантики.
- Выбрать сторону (
UP/DOWN) и сумму (в пределахminAmountHuman/maxAmountHumanиз/api/state:100…10000фантиков) → Сделать ставку. - Результат придёт сам по WS примерно через
expirySeconds(15 с).
Три возможных исхода ставки:
- выиграл —
statusName: "payout_done", выплата с множителем; - проиграл —
statusName: "house_won", ставка остаётся в ваулте; - возврат при ничьей —
statusName: "refunded", залог возвращён ровно суммой ставки без множителя (подробнее — API.md, раздел «Ничья приexitPrice == entryPrice»).
Правило: одна открытая ставка на адрес — вторая ставка с того же адреса получит
409. Дождитесьbet_closedпо WS, прежде чем ставить снова.
Статус
- каркас: кошелёк, фаусет, ставка, события по WS
- контракт: возврат при ничьей (
exitPrice == entryPrice)
Description
Технический тестовый фронт для механики экономики Binary Rocket (пополнение/ставка/вывод) — для ручного тестирования без Unity
Releases
1
Languages
HTML
99.3%
Dockerfile
0.7%