Getting Started
Build the project and run your first nodes in Getting Started.
P2PNetwork is a Go module named fgov/network. It uses libp2p and a Kademlia DHT to let nodes discover each other, connect directly, and exchange a display name over a small /fgov stream protocol.
The current codebase ships three entrypoints:
cmd/bootstrap - starts the bootstrap node on port 52837cmd/peer - starts a peer node, reads bs-nodes if present, and discovers peerscmd/gui - starts a Fyne desktop app that wraps the same node packageGetting Started
Build the project and run your first nodes in Getting Started.
How to Use
Learn the exact CLI flow for bootstrap and peer nodes in How to Use.
GUI
See how the desktop app uses the same node package in GUI.
Architecture
Understand the runtime layout, node data model, and how peers are tracked in Architecture.
Services
Review discovery, connection, and name-sync behavior in Services.
Network Protocol
See the actual topics, stream handlers, and address formats in Network Protocol.
Downloads
Check the release artifacts and build options in Downloads.
Release Notes
Track current binary releases in Release Notes.
Bootstrap node
Prompts for a name, starts on 52837, prints its multiaddr, and writes the first address to bs-nodes.
Peer node
Prompts for a name, reads bs-nodes if available, advertises on fgov-network, and discovers peers in the DHT.
Peer naming
Uses the /fgov stream protocol to exchange names and keep a readable peer list.
Desktop GUI
The Fyne app shows running state, connected peers, and the current node name.
The repository already includes Windows release binaries under Releases/:
bootstrap-v1.0.exepeer-node-v1.0.exebootstrap-v1.1.exepeer-v1.1.exegui-v1.1.exeUse Downloads for build commands and Release Notes for the current release inventory.
Loading live data from GitHub...
Name: -
Description: -
Stars: -
Language: -
Last push: -
Tag: -
Published: -
Assets: -
Count: -
Count: -
Read Getting Started first, then How to Use. That is the fastest path to a working network.