An app is a set of instructions that consists of off-chain logic paired with an on-chain vault or contract. These apps are then coverted into bundles that are uploaded to the Steer Protocol. Apps can be written in any of the many popular languages which can be compiled into WASM, such as Typescript (AssemblyScript), Python, Rust, etc. These Apps are then executed by the Keeper nodes, which are the moderators for the steer network.
You can view all 40+ possible languages and their levels of support here: Steer Protocol Language Support
Fews apps in Apps Store -
What can I build?
Apps can range from complex concentrated liquidity market makers to simple oracles. The Steer Protocol is designed to be a flexible and extensible platform for building new types of applications through its off-chain infrastructure.
The Steer Protocol also provides an open data connector marketplace which provides developers with the ability to build their own data connectors and integrate them with the Apps on Steer Protocol itself.
The possibilities are endless... We are excited to see what the community builds!
Can I use on-chain data?
Yes. Apps can also query TheGraph as well as access on-chain view functions to retrieve data. This enables developers to pass messages from on-chain to the app execution process. This enables more dynamic app parameters and also potentially gives governance (or other sources) control over the parameters of a given app.
How are apps executed?
Apps are executed by a Steer network which is composed of node runners in an isolated sandboxed environment.
When executed, apps do not have access to the internet. All external data is managed through a sub-process within the network and provided to the app prior to execution.
All apps also have an imposed minimum threshold for votes. Thus, if there are bad actors within the network, built-in anomaly detection will discard their data. The output of each app is then passed to a special node called a keeper to find consensus and do on-chain execution.
Lastly, all nodes must bond a certain amount of Steer tokens to ensure that the network isn't prone to Sybil attacks.