Metadata-Version: 2.1
Name: forge.pb
Version: 1.0.5
Summary: Node manager for the Provenance Blockchain
Home-page: https://github.com/provenance-io/forge.pb
Author: Wyatt Baker
Author-email: wbaker@figure.com
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: arrow ==1.2.3
Requires-Dist: certifi ==2023.7.22
Requires-Dist: charset-normalizer ==3.2.0
Requires-Dist: click ==8.1.7
Requires-Dist: decorator ==4.4.2
Requires-Dist: futures ==2.2.0
Requires-Dist: gitdb ==4.0.10
Requires-Dist: GitPython ==3.1.32
Requires-Dist: idna ==3.3
Requires-Dist: importlib-metadata ==4.13.0
Requires-Dist: networkx ==2.8.8
Requires-Dist: psutil ==5.9.5
Requires-Dist: python-dateutil ==2.8.2
Requires-Dist: requests ==2.31.0
Requires-Dist: six ==1.16.0
Requires-Dist: smmap ==5.0.0
Requires-Dist: tornado ==6.3.3
Requires-Dist: typing-extensions ==4.7.1
Requires-Dist: urllib3 ==1.26.16
Requires-Dist: zipp ==3.16.2

# Forge.pb - Provenance Blockchain Process Manager

## Description
The Provenance Blockchain Manager is an application for automated startup of nodes on the [Provenance Blockchain](https://docs.provenance.io/) testnet, mainnet, or localnet which can be used for testing.

## Getting Started
Forge is available on [Pypi](https://pypi.org/project/forge.pb/) and the repo is on [GitHub](https://github.com/FigureTechnologies/forge.pb) and can be installed using pip.
```
pip install forge.pb
```
or
```
pip install forge.pb==1.0.2
```
if you want to install a specific version

## Usage
Once installed, you can execute wizard, by running: 
```sh
forge interactive
```
* You will be prompted on what you want Forge to do. Selecting to bootstrap a node will allow you to select mainnet, testnet, or localnet.

* Selecting any of the listed 3 would clone the [Provenance Repository](https://github.com/provenance-io/provenance) if it doesn't already exist, then the version information would be gathered either from the user in the case of localnet, or from mainnet/testnet information on github. 

* The repo would then checkout to the release version and the binaries would be built, genesis file downloaded/constructed, and a command to run the node would be output to the console.

### Optional

Forge uses the GitHub Api to pull information about the provenance repo for you to use when spinning up a node. If you use forge a lot in a short time, you could hit the 60 calls per hour limit. You can add a GitHub Api Token to your environment in order to increase this to 5000 calls per hour.

You can follow the instructions [Here](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token) to setup a personal access token.
Once that is complete, add the token generated to your environment:
```sh
GITHUB_API_TOKEN=token_value
```

### Forge comes with command line tools that can speed up the process.

To get you started with a couple commands:

Initialize and start a localnet node with default values:
```sh
forge node start
```
For a list of all commands:
```sh
forge --help
```
You can also drill into the individual commands for more help and additional commands:
```sh
forge node --help
```

## Version Info
* Python 3.7
