Bootstrap
Prompts for a name, writes bs-nodes, and stays up as the discovery anchor.
This is the fastest way to get a real node running. The current codebase lives in Network/ and builds three entrypoints: bootstrap, peer, and gui.
Check your Go install:
go versiongit clone https://github.com/connor12858-site/P2PNetwork.gitcd P2PNetwork/NetworkBuild the current binaries:
go build -o bootstrap ./cmd/bootstrapgo build -o peer ./cmd/peergo build -o gui ./cmd/guiThe repo also includes a Makefile and build.ps1 for repeatable builds.
./bootstrapThe bootstrap node prompts for a name, starts on port 52837, prints its peer ID and multiaddrs, and writes the first multiaddr to a file called bs-nodes in the working directory.
If you are on Windows, use the built .exe file from bin/ or Releases/.
Open a second terminal in the same directory and run:
./peerThe peer node reads bs-nodes if it exists, prompts for a name, connects to the bootstrap node, and starts discovery.
The peer CLI accepts these commands:
connect <multiaddr>peersdiscoveredexitUseful things to know:
peers shows currently connected peersdiscovered shows peers returned by discoveryconnect uses a full multiaddr like /ip4/192.168.1.10/tcp/52837/p2p/<peer-id>exit shuts the node down cleanlyRun the desktop client in a third terminal:
./guiThe Fyne app uses the same node package. It shows the current name, running state, and connected peers.
Bootstrap
Prompts for a name, writes bs-nodes, and stays up as the discovery anchor.
Peer
Connects to bootstrap, advertises on fgov-network, and keeps searching for peers.
GUI
Starts the same node package behind a desktop window.
bs-nodes file in the same working directory as the peerNetwork/go mod download-bootstrap appended automatically/fgov stream protocolArchitecture
Read Architecture to understand how the node package is organized.
How to Use
Continue with How to Use for the exact runtime behavior.
Downloads
See Downloads for the current release binaries.