Skip to content

Latest commit

 

History

History
53 lines (40 loc) · 4.17 KB

File metadata and controls

53 lines (40 loc) · 4.17 KB

SMOOT-Bridge

SMOOT-Bridge is a decentralized, generic message-passing protocol for secure, bidirectional communication between blockchain ecosystems — spanning both EVM-compatible chains (Ethereum, Polygon) and non-EVM chains (Stellar/Soroban).

The protocol's flagship use case is cross-chain token transfer for ERC-3643-compliant (and ERC-20-compatible) tokens, using a lock/mint and burn/unlock mechanism relayed by an off-chain agent network. The underlying architecture is designed to be extended to additional chains and message types over time.

How it works

Contract / Entity Chain Role
TokenHome Ethereum Registers the original token; locks it when transferring out to another chain.
TokenRemote Polygon Mints/registers the mapped token when a transfer arrives from the home chain.
Gateway Both Message bus that relays cross-chain calls (outboundCall / inboundCall) between contracts.
SMOOT-Bridge Agents Off-chain Decentralized relayer network that watches outboundCall events and submits matching inboundCalls on the destination chain.

Transfer flow (Ethereum → Polygon, and back):

  1. User calls send on TokenHome (or TokenRemote for the return trip).
  2. The token is locked (or burned) and the source Gateway emits an outboundCall event.
  3. An Agent captures the event, signs, and relays it as an inboundCall to the Gateway on the destination chain.
  4. The destination Gateway triggers TokenRemote to mint (or TokenHome to unlock/transfer) the asset to the recipient.

Repository layout

Path Description
contracts/ Smart contracts, split per chain: contracts_ethereum, contracts_polygon (token, message-bridge, and NFT-market contracts), contracts_soroban (Stellar), and contracts_merkle_proofs.
agent/ The off-chain SMOOT-Bridge Agent (a.k.a. cross-route) that watches chains and relays cross-chain messages.
apps/ Front-end applications: app_bridge_ui (current bridge UI, supports Stellar and Polygon), app_nftMarket (NFT marketplace UI), and the deprecated app_erc3643 (superseded by app_bridge_ui).
services/ Backend services: routeService_multiSig (multi-sig message routing) and scanService_nftMarket (chain scanning for the NFT market).
deployment/ Deployment tooling and Dockerfiles for the agent and scan service.
sdks/ Client SDKs (reserved for future use).
design/ Design documents.
requirement/ Requirement documents.
docs/ Additional docs, including deployment tutorials and event model reference.
test/ Integration/setup test scaffolding.

Getting started

Each component is independently runnable; see its own README for setup details:

License

Licensed under the Apache License 2.0.