Skip to content

❇️ A WebSocket JSON/RPC bridge for Cardano

License

Notifications You must be signed in to change notification settings

blockfrost/ogmios

 
 

Repository files navigation


Ogmios: gateway to Cardano

Ogmios is a lightweight bridge interface for cardano-node. It provides an HTTP / WebSocket API that enables applications to interact with a local cardano-node via JSON+RPC-2.0.

Compatibility

Ogmios Cardano-node
v5.6.0 1.35.4, 1.35.7
v6.0.0 8.1.2, 8.1.1, 8.1.0

QuickStart

See our Ogmios client starter kit or jump right into the user manual.

Features

Fast synchronization of blocks from the Cardano network(s)↗️
Transaction submission with enhanced error messages↗️
Evaluation of Plutus script execution units↗️
Local mempool monitoring↗️
State queries
Network
queryNetwork Information
blockHeight The chain's highest block number.
genesisConfiguration Get the genesis configuration of a specific era.
startTime The chain's start time (UTC).
tip The network's current tip.
Ledger
queryLedgerState Information
epoch The current epoch of the ledger.
eraStart The information regarding the beginning of the current ledger era.
eraSummaries Era bounds and slot parameters details, required for proper slotting arithmetic.
liveStakeDistribution Distribution of the stake across all known stake pools, relative to the total stake in the network.
projectedRewards The projected rewards of an account in a context where the top stake pools are fully saturated. This projection gives, in principle, a ranking of stake pools that maximizes delegator rewards.
protocolParameters The current protocol parameters.
proposedProtocolParameters The last update proposal w.r.t. protocol parameters, if any.
rewardAccountSummaries Current delegation settings and rewards of chosen reward accounts.
rewardsProvenance Get details about rewards calculation for the ongoing epoch.
stakePools The list of all pool identifiers currently registered and active.
tip The current tip the ledger is at. Said differently, the slot number and header hash of the last block that has been processed by the ledger.
utxo Current UTXO, possibly filtered by output reference.
↗️
Dual WebSocket/HTTP support↗️
Structured JSON logging↗️
Health monitoring, with runtime and application statistics↗️

Note

Test vectors that cover every part of the protocol are available here. Use them without moderation for a smooth integration!

Roadmap

Cutting-edge work

The project keeps a changelog 💾 in which all past changes and recent-but-not-yet-released changes can be seen. Changes in the changelog have been implemented and are available in latest builds from the master branch.

Planned work

The github issues & milestones 🎯 list planned tasks that haven't been implemented but have reached enough maturity to be well-defined and scoped. Milestones have end-dates to give a broad estimate of when it is expected.

Future work

Finally, discussions 💡 contains ongoing discussions regarding the future of Ogmios, with design decisions still under consideration.

Clients / SDKs

Ogmios provides a language-agnostic API which can be implemented using any WebSocket or HTTP client. If you prefer using a SDK in your favorite language, see below the available clients (maintained by the community):

Logo:TypeScript
TypeScript
Logo:Go
Go
Logo:Kotlin
Kotlin
Logo:Java
Java

Sponsors

A big thank to all our sponsors 💖.


📖 User Manual | 📐 Contributing | 💾 Changelog | DiscordDiscord (#ogmios) | Twitter Twitter (@_KtorZ_)

Need more information? Have a look at the Frequently Asked Questions.

license=MPL-2.0

About

❇️ A WebSocket JSON/RPC bridge for Cardano

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Haskell 59.8%
  • HTML 22.5%
  • TypeScript 16.9%
  • Shell 0.4%
  • JavaScript 0.3%
  • Dockerfile 0.1%