- websocket endpoint of an own ethereum node (e.g. geth, ...) or at least one to that you can make as many calls as you want. Node providers ( e.g. Infura/Alchemy/whatever) also work, but as we make a lot of calls to the node, you will hit the limits very fast or you will have to pay a lot of money for it.
- a redis(-stack) instance. you can use the redis docker image for this or install redis on a local machine. it is used as a cache for collection & ENS names. it saves a lot of (limited) calls to a node and is also faster than calls to a node.
# get link to latest linux amd64 binary
GBL=$(curl -L -s -H 'Accept: application/json' https://github.com/benleb/gloomberg/releases/latest | sed -e 's/.*"tag_name":"\([^"]*\)".*/\1/')
# download binary and extract it to /usr/local/bin
wget -qO- https://github.com/benleb/gloomberg/releases/download/${GBL}/gloomberg_${GBL/v/}_linux_amd64.tar.gz | sudo tar -C /usr/local/bin -vzx gloomberg
# run
gloomberg live -e "wss://mainnet.infura.io/ws/v3/32e9..." -w "yourDegenWallet.eth"
docker run --rm -it \
--env "GLOOMBERG_ENDPOINTS=wss://mainnet.infura.io/ws/v3/32e9..."
--env "GLOOMBERG_WALLETS=yourDegenWallet.eth"
ghcr.io/benleb/gloomberg:latest live
The name is a homage to the famous gloomberg professional artwork created by OSF
Thanks also to all the other testers and contributors not shown in the git history! 💰 ❌ 💤
see the (development) docs for further information
issues closed, PRs open (ping me if you want to contribute)
- create a new release tag and push it to github
export rel_tag="v0.1.2"; git tag -a ${rel_tag} -m "${rel_tag}" && git push origin ${rel_tag}
we use pre-commit to run some checks before committing. install like described in the docs
see the pre-commit config for the checks. you can also run them manually on your machine
with pre-commit run --all-files
. for more information see the docs
we use similar checks to the pre-commit ones in the golangci-lint workflow to
also check this on the "server side" and do it for pull requests. you can also run them manually on your machine
with golangci-lint run
. for more information see
the docs
todo
todo