@polymarket/fx-portal

FxPortal for Matic chain. No mapping. Seamless.


Keywords
ethereum, matic
License
MIT
Install
npm install @polymarket/fx-portal@1.0.0

Documentation

fx-portal(Flexible portal)

FxPortal for Polygon(prev Matic)Chain. No mapping. Seamless communication with Ethereum Network.

Audit - Fx-Portal Contracts Audit by Halborn

What is Fx bridge (fx-portal)?

It is a powerful yet simple implementation Polygon state sync mechanism. Polygon PoS bridge is based on it. The code in the examples folder are examples of the usage of this methodology. You can use these examples to build your own implementations or own custom bridge.

In short, it's Meta bridge. This bridge allows any state-syncs without mapping.

Some use-cases of Fx-portal

What about PoS portal?

PoS Portal is another bridge, but it works only for few ERC standards and requires mappings. It is more developer-friendly, allows customization without much headache.

While Fx-portal focuses on permissionless-ness and flexibility, a developer might have to write more code but more customizable than PoS Portal. It requires no mapping.

Can I build my bridge?

Yes. You can check docs here: https://docs.matic.network/docs/develop/l1-l2-communication/ethereum-to-matic https://docs.matic.network/docs/develop/l1-l2-communication/matic-to-ethereum

What are FxChild and FxRoot?

FxChild (FxChild.sol) and FxRoot (FxRoot.sol) are main contracts on which mapping-less bridge works. It calls and passes data to user-defined methods on another chain without mapping.

Mumbai

Contract Deployed address
FxRoot (Goerli) 0x3d1d3E34f7fB6D26245E6640E1c50710eFFf15bA
FxChild (Mumbai) 0xCf73231F28B7331BBe3124B907840A94851f9f11

Mainnet

Contract Deployed address
FxRoot (Ethereum Mainnet) 0xfe5e5D361b2ad62c541bAb87C45a0B9B018389a2
FxChild (Matic Mainnnet) 0x8397259c983751DAf40400790063935a11afa28a

You can deploy your own FxChild and FxRoot, but no need. Except you want to have some fun and have extra ETH to throw away.

What can I build with it?

  • Arbitrary state bridge (examples/state-transfer)
  • Normal ERC20 bridge (examples/erc2-transfer)
  • ERC20 token generator bridge (example/mintable-erc20-transfer)