Technical Overview

EmpyrealSDK is fundamentally based on a data model built upon an Object-Relational Mapping (ORM), mapping entities to database tables and linked to a REST API, constructed using an asynchronous Python 3 framework with FastAPI. This selection of Python architecture and libraries aligns with current Python REST API tooling.

In addition, there’s a specialized Web3 framework aimed at simplifying interactions with various Web3 concepts through an object-oriented design. This framework offers generalized methodologies for developing abstractions on Web3 protocols like Orbiter, Layer0, Uniswap, AAVE, GMX, and more. For example, the bridging module standardizes the interaction with different blockchain bridges by offering a uniform interface, mitigating challenges caused by diverse interfaces across different bridges, and facilitating developers in building multi-chain pipelines. In doing this, a developer can simply provide an invocation to bridge funds from one chain to another using the bridge with the lowest current fees, and if they have additional concerns or want to analyze more data on the current bridging solutions, we enable them to do so.

The SDK serves as an abstraction layer, not merely working on a REST API but also providing models like the token model, both at the back-end and within the SDK, each exposing functionalities for respective use cases. For instance, DEX-related functionalities (such as performing a swap on Uniswap on Ethereum) are abstracted in a manner that simplifies interaction through the SDK. In the same regard, users can easily query price, volume, and get individual trades for DEXs, or query transfer and holders for a specific ERC20 token. This is built on top of a custom indexer and decreases reliance on highly limiting APIs like Arbiscan or DEX Screener.

Last updated