Skip to content

Watchmarket is an aggregation and caching service for blockchain market information

Notifications You must be signed in to change notification settings

lamontef/watchmarket

Repository files navigation

Watchmarket

CI codecov Go Report Card Dependabot Status

Watchmarket is a Blockchain explorer API aggregator and caching layer. It's your one-stop-shop to get information for (almost) any coin in a common format

Watchmarket comes with three apps:

  • API: RESTful API to retrieve coin info, charts, and tickers
  • Worker: fetch and parse data from market APIs and store it at DB
  • Swagger: API explorer

Supported Market APIs

Getting started

Setup

make install
make start-docker-services
make seed-db

Start the app:

make start

# Alternative
cd cmd/api && go run main.go
cd cmd/worker && go run main.go

Using API:

A. Get coin details about Ehtereum (coin 60 according to SLIPs)

curl -v "http://localhost:8421/v1/market/info?coin=60" | jq .

B. Get current ticker price of Ethereum in USD:

curl -v -X POST 'http://localhost:8421/v1/market/ticker' -H 'Content-Type: application/json' -d '{"currency":"USD","assets":[{"type":"coin","coin":60}]}'

C. Get price interval of Ethereum to build chart starting from 1574483028 (UNIX time)

curl -v "http://localhost:8421/v1/market/charts?coin=60&time_start=1574483028" | jq .

Use make stop to stop the services

Run make to see a list of all available build directives.

About

Watchmarket is an aggregation and caching service for blockchain market information

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 98.6%
  • Makefile 1.3%
  • Dockerfile 0.1%