DEVELOPER / RUN IT
REPO publicSTACK node + pythonCHAINS 4
Run and verify Trestle.
Clone the repository, install, run the test suite, then start the relayer and the frontend. Nothing below needs a funded account.
QUICKSTART
git clone https://github.com/Nifemi0/Trestle cd Trestle npm install npm test # on-chain + relayer-scope assertions npm run test:pressure:quick # fast pressure sanity check node frontend/logic_test.js # bridge routing logic node src/relayer.js --once # single relay pass node src/health.js --verbose # full status report
01
LAYOUT
Where things live.
| Path | Contents |
|---|---|
| src/ | The two long-running processes: relayer.js and health.js |
| contracts/ | Compiled Hyperlane warp + ISM artifacts and deployed addresses |
| scripts/ | Deploy, add-chain, transfer and diagnostics tooling |
| test/ | On-chain assertions plus the pressure simulations |
| frontend/ | This UI — pages, shared config, icons, styles |
| configs/ registry/ | Hyperlane core and warp route configuration, local registry metadata |
| systemd/ | Unit files for the relayer and the frontend |
OPERATIONS
Running processes.
systemctl status botchain-relayer systemctl status botchain-frontend journalctl -u botchain-relayer -n 50 --no-pager curl -s localhost:8088/api/status
- Poll interval, block range, stuck-message threshold and retries are environment variables on the relayer.
- Every loop writes relayer_health.json; the watchdog reads that file rather than guessing.
- Alerts go to alerts.log and to Telegram when the token/chat pair is configured.
Never reuse the testnet deployer key for anything holding real value. deployer.json and relayer.env stay local and gitignored.