Application of the Week

This week’s featured application is Stellar Beat’s node crawler, developed by pieterjan84. Congratulations!

If you are not familiar with Stellar Beat, I recommend checking it out! Stellar Beat is the best overview of the Stellar network, with wonderful, interactive visuals of:

all nodes on the network

quorum set overlap (consensus)

organizations (node clusters representing a single entity)

quorum set explorer and simulator

A vital component of this tool is discovering every alive node on the network and querying each node’s quorum set. This is accomplished by crawling the network. The basic idea is to:

1. Start with a "known" list of nodes

2. For every known node:

a. Connect to the node (hello & handshake)

b. Ask for the node's peers

c. If the peer has not been seen yet, add to known list

3. Repeat 2 until all known nodes visited

Basically this, but with computers and stellar-core…

An open-sourced tool for direct node communication is really cool because other fun projects can utilize this to do some interesting things. As an example, I spent a weekend last year playing with a different open sourced crawler, written in Ruby and Go. By modifying this implementation to simply listen for incoming transaction messages, I could get a full list of trades to be applied (valid and invalid) before they were executed. The idea was to front-run Stellar 😈 … yet this is not quite possible because front-running really requires market orders, not limit orders.

Interested in promoting your own project, or another exciting project in the ecosystem? If so, please make a submission here.