I have a few peer-observer / monitoring project ideas for the upcoming hackathon. With peer-observer, we have a real-time feed of Bitcoin Core events. A event is for example a P2P message arriving, a connection bening opened, us periodically fetching an RPC, ...
I run a tool that transforms events from this feed into a websocket with JSON messages for them to be used in the browser. Then, I have a few HTML pages that act as tools consuiming and displaying some of the events. See https://demo.peer.observer/websocket/
For the hackathon, you can use one (or even two) websockets of wss://demo.peer.observer/websocket/hal/ or wss://demo.peer.observer/websocket/len/ for building a nice demo or Proof of Concept of a browser visualization.
A few ideas are (but feel free to be creative and experiment!):
Build a real time Bitcoin Core debug log viewer: On the wss://demo.peer.observer/websocket/hal/ websocket (not on len) we are sending Bitcoin Core debug logs as JSON messages. Displaying this in the browser in real-time could be cool. Addtionally, filtering (i.e. grep) or highligthing certain messages would be cool. I think building this should be fairly simple.
A Bitcoin Core orphanage visualization: Bitcoin Core keeps something called an oprhange for transactions we don't know a parent for. There's a bit more information on it in https://github.com/bitcoin-core/bitcoin-devwiki/wiki/%5BP2P%5D-known-TxOrphanage-problems with a few links and context. Having a visualization of the orphanage in real-time in the browser would be nice. peer-observer fetches the getorphantxn RPC every 10s and sends it as JSON message via websocket. I've started working on a PoC in the past, but the orphanage has changed a bit since then: https://github.com/bitcoin/bitcoin/pull/30793#issuecomment-2379684081 - so you probably need to adapt this a bit. This is a bit harder than 1., since you need to learn about Bitcoin Core internals.
Be creative and explore the websockets and come of with something new and cool!
If you need help, feel free to come up to me and ask for help!
Also, have a look at the existing tools and their source code:
Good ideas, will get this infront of the hackathon team. We'll also have hackathon submissions posted on this territory, looking forward to seeing what everyone builds!
I have a few peer-observer / monitoring project ideas for the upcoming hackathon. With peer-observer, we have a real-time feed of Bitcoin Core events. A event is for example a P2P message arriving, a connection bening opened, us periodically fetching an RPC, ...
I run a tool that transforms events from this feed into a websocket with JSON messages for them to be used in the browser. Then, I have a few HTML pages that act as tools consuiming and displaying some of the events. See https://demo.peer.observer/websocket/
For the hackathon, you can use one (or even two) websockets of
wss://demo.peer.observer/websocket/hal/orwss://demo.peer.observer/websocket/len/for building a nice demo or Proof of Concept of a browser visualization.A few ideas are (but feel free to be creative and experiment!):
wss://demo.peer.observer/websocket/hal/websocket (not onlen) we are sending Bitcoin Core debug logs as JSON messages. Displaying this in the browser in real-time could be cool. Addtionally, filtering (i.e. grep) or highligthing certain messages would be cool. I think building this should be fairly simple.getorphantxnRPC every 10s and sends it as JSON message via websocket. I've started working on a PoC in the past, but the orphanage has changed a bit since then: https://github.com/bitcoin/bitcoin/pull/30793#issuecomment-2379684081 - so you probably need to adapt this a bit. This is a bit harder than 1., since you need to learn about Bitcoin Core internals.If you need help, feel free to come up to me and ask for help!
Also, have a look at the existing tools and their source code: