The following section provides details on Lyra's developer tools and their use cases.
Developers can interact with Lyra's markets on-chain or off-chain, with purpose-build packages for each case. To view walkthroughs on how to use each tool, see our example guides.
On Chain
There are three ways for developers to interact with Lyra markets:
Protocol SDK
The Protocol SDK and underlying LyraAdapter.sol provides all functions required to interact with Lyra markets via a single inherited contract. This is the best experience for developers interacting with contracts on-chain.
Contracts
Interacting with the Lyra contracts directly introduces a more complicated setup but gives developers maximum control. Learn more about the core contracts here.
Off Chain
Lyra.js
Lyra.js wraps around ethers and Lyra contracts to make market data and orders easy to fetch and execute respectively. This is the best experience for developers interacting with contracts off-chain.
Subgraph
Lyra's subgraph indexes contract events and provides access to historical data via GraphQL, an easy-to-use querying language.