FGP implementation for the Unicity Network as defined in the Yellowpaper. https://github.com/unicitynetwork/unicity-yellowpaper-tex
The FGP is a partition under Unicity BFT. It is a headers-only partition (with no units or transactions, and no state or block data other than the hash of the PoW block being finalized).
See Sec 6.3 Finality Gadget of the YP for more details.
- Go: 1.24 or higher
- Make: (Optional, for using the Makefile)
- Docker: (Optional)
The easiest way to build the project is using the provided Makefile.
To build the fgp binary locally:
make buildThis will create the executable in the build/ directory: ./build/fgp.
To build a containerized version of the application:
make build-dockerThis creates a Docker image tagged as unicity-fgp:local.
To run all tests in the project recursively:
make testTo remove the build/ directory and any generated binaries:
make cleanOnce built, you can run the node using the CLI. For a list of available commands and flags:
./build/fgp --helpOr via Docker:
docker run unicity-fgp:local --help