slinky

module
v0.0.0-beta.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 30, 2023 License: Apache-2.0

README

slinky

GoDoc Go Report Card Version Lines Of Code

A general purpose price oracle leveraging ABCI++

Install

$ go install github.com/skip-mev/slinky

Status

Current, slinkly contains the following structure:

.
├── config        <- Configuration that instructs the Oracle
├── oracle        <- The oracle implementation along with providers and types
│   ├── provider
│   └── types
└── pkg           <- Package types and utilities
    └── sync

The following components have been implemented:

  • oracle.go: The main oracle implementation that is responsible for fetching prices from providers given a set of assets and a set of providers.
  • provider.go: The provider interface that is used to fetch prices from a given provider along with a mock implementation.
  • client/local.go: A local client that is used to communicate with an ABCI++ application.
  • client/grpc.go: A gRPC client that is used to communicate with an ABCI++ application.
  • abci/vote_ext.go: A vote extension handler implementation.

The following components are still in progress or need to be implemented completely:

  • gRPC server & corresponding CLI command to launch it
  • x/oracle module
  • various providers in oracle/provider/ such Kraken, Binance, etc...
  • config type definition in config/
  • tests!!!

Directories

Path Synopsis
abci
ve
api
slinky/abci/v1
Code generated by protoc-gen-go-pulsar.
Code generated by protoc-gen-go-pulsar.
slinky/alerts/module/v1
Code generated by protoc-gen-go-pulsar.
Code generated by protoc-gen-go-pulsar.
slinky/alerts/v1
Code generated by protoc-gen-go-pulsar.
Code generated by protoc-gen-go-pulsar.
slinky/incentives/module/v1
Code generated by protoc-gen-go-pulsar.
Code generated by protoc-gen-go-pulsar.
slinky/incentives/v1
Code generated by protoc-gen-go-pulsar.
Code generated by protoc-gen-go-pulsar.
slinky/oracle/module/v1
Code generated by protoc-gen-go-pulsar.
Code generated by protoc-gen-go-pulsar.
slinky/oracle/v1
Code generated by protoc-gen-go-pulsar.
Code generated by protoc-gen-go-pulsar.
slinky/service/v1
Code generated by protoc-gen-go-pulsar.
Code generated by protoc-gen-go-pulsar.
slinky/sla/module/v1
Code generated by protoc-gen-go-pulsar.
Code generated by protoc-gen-go-pulsar.
slinky/sla/v1
Code generated by protoc-gen-go-pulsar.
Code generated by protoc-gen-go-pulsar.
cmd
oracle command
pkg
evm
Package service is a reverse proxy.
Package service is a reverse proxy.
tests
simapp/slinkyd command
integration module
petri module
x
alerts/testutil
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
alerts/types
Package types is a reverse proxy.
Package types is a reverse proxy.
incentives/types
Package types is a reverse proxy.
Package types is a reverse proxy.
oracle/types
Package types is a reverse proxy.
Package types is a reverse proxy.
sla
sla/types
Package types is a reverse proxy.
Package types is a reverse proxy.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL