Chia blockchain python implementation (full node, farmer, harvester, timelord, and wallet)
Go to file
dustinface 7c9fb654a3
server|tests: Delay the harvester -> farmer connection in some tests (#12862)
* Introduce `Service.add_peer`

* Delay the harvester/farmer connection in some tests to avoid flakiness
2022-08-10 04:57:34 -05:00
.github Adding required-reviewers as CODEOWNERS (#12812) 2022-08-09 18:27:32 -05:00
benchmarks add benchmark for MempoolManager.add_spendbundle (#12780) 2022-08-09 18:29:00 -05:00
build_scripts Swap intel installer to 10.14 runners (#12735) 2022-08-09 13:10:22 -05:00
chia server|tests: Delay the harvester -> farmer connection in some tests (#12862) 2022-08-10 04:57:34 -05:00
chia-blockchain-gui@3c5edb88e3 Bump chia-blockchain-gui submodule to 3c5edb88e3 (#12834) 2022-08-08 16:27:56 -05:00
mozilla-ca@20aab1c28b adding ca updates (#12503) 2022-07-20 23:57:48 -05:00
tests server|tests: Delay the harvester -> farmer connection in some tests (#12862) 2022-08-10 04:57:34 -05:00
tools uncurry the puzzle once instead of 3 times (#12781) 2022-08-04 23:16:04 -05:00
.coveragerc run tests in CI via coverage (#9704) 2022-03-28 13:22:23 -07:00
.flake8 black the generated protocol messages code (#11786) 2022-06-08 10:21:03 -05:00
.gitignore Use get latest release endpoint for plotters, so that we ignore any pre-releases that could be returned by listReleases (#11165) 2022-04-13 18:06:50 -05:00
.gitmodules catchup: into main from long_lived/post_1.5.0 @ 916ccee549 (#12629) 2022-07-29 16:58:21 -05:00
.isort.cfg util: Enable isort and more mypy in file_keyring.py (#12531) 2022-07-28 14:07:27 -05:00
.markdown-lint.yml move all linter config to the root (#9830) 2022-01-19 11:38:11 -08:00
.pre-commit-config.yaml pre-commit: Reorder hooks by runtime (#12775) 2022-08-09 18:23:52 -05:00
activated.ps1 run pre-commit across platforms in ci (#12287) 2022-07-15 21:08:07 -05:00
activated.py pre-commit: Fix a venv activation issue on linux (#12822) 2022-08-09 18:27:11 -05:00
activated.sh pre-commit: Fix a venv activation issue on linux (#12822) 2022-08-09 18:27:11 -05:00
BUILD_TIMELORD.md update permissions (#6061) 2021-05-26 11:33:26 -07:00
CHANGELOG.md catchup: into main from long_lived/post_1.5.0 @ 916ccee549 (#12629) 2022-07-29 16:58:21 -05:00
CODE_OF_CONDUCT.md Bram's edit to code_of_conduct and start new dev branch 2020-09-15 12:26:16 -07:00
CONTRIBUTING.md run pylint directly (#12100) 2022-06-27 10:53:04 -05:00
Install-gui.ps1 replaced npm install => npm ci (#9717) 2022-01-19 16:52:20 -08:00
install-gui.sh more set -o errexit (#10468) 2022-03-17 09:13:27 -07:00
install-timelord.sh Add dependencies macos rhel chiavdf (#11142) 2022-04-12 10:51:29 -07:00
INSTALL.md Improve style consistency in root directory docs files (#4493) 2021-05-12 13:12:30 -07:00
Install.ps1 add install action (#12075) 2022-07-07 19:56:33 -05:00
install.sh Write python version error to stderr (#11239) 2022-05-14 02:04:18 -07:00
installhelper.py more isort (#11401) 2022-05-05 08:17:38 -07:00
lgtm.yml flag lgtm issues in test code and benchmark code as well (#11445) 2022-05-05 14:22:56 -07:00
LICENSE 2021 year -> 2022 (#9829) 2022-01-15 19:41:56 -08:00
mypy.ini Fix no keys loaded error by making KeychainProxy automatically reconnect when a connection is lost (#12782) 2022-08-04 20:28:58 -05:00
pylintrc run pylint directly (#12100) 2022-06-27 10:53:04 -05:00
pyproject.toml black the generated protocol messages code (#11786) 2022-06-08 10:21:03 -05:00
pytest.ini Add Windows CI (#10681) 2022-05-31 14:04:45 -05:00
README.md Chia Seeder (#8991) 2021-11-27 18:30:25 -08:00
run-py-tests.sh more set -o errexit (#10468) 2022-03-17 09:13:27 -07:00
setup.py util: Unify lockfile handling (#12541) 2022-08-04 12:59:39 -05:00
start-gui.sh more set -o errexit (#10468) 2022-03-17 09:13:27 -07:00

chia-blockchain

Alt text

Current Release/main Development Branch/dev
Ubuntu Core Tests MacOS Core Tests Windows Installer on Windows 10 and Python 3.7 Ubuntu Core Tests MacOS Core Tests Windows Installer on Windows 10 and Python 3.7

GitHub contributors

Chia is a modern cryptocurrency built from scratch, designed to be efficient, decentralized, and secure. Here are some of the features and benefits:

  • Proof of space and time based consensus which allows anyone to farm with commodity hardware
  • Very easy to use full node and farmer GUI and cli (thousands of nodes active on mainnet)
  • Chia seeder, which maintains a list of reliable nodes within the Chia network via a built-in DNS server.
  • Simplified UTXO based transaction model, with small on-chain state
  • Lisp-style Turing-complete functional programming language for money related use cases
  • BLS keys and aggregate signatures (only one signature per block)
  • Pooling protocol that allows farmers to have control of making blocks
  • Support for light clients with fast, objective syncing
  • A growing community of farmers and developers around the world

Please check out the wiki and FAQ for information on this project.

Python 3.7+ is required. Make sure your default python version is >=3.7 by typing python3.

If you are behind a NAT, it can be difficult for peers outside your subnet to reach you when they start up. You can enable UPnP on your router or add a NAT (for IPv4 but not IPv6) and firewall rules to allow TCP port 8444 access to your peer. These methods tend to be router make/model specific.

Most users should only install harvesters, farmers, plotter, full nodes, and wallets. Setting up a seeder is best left to more advanced users. Building Timelords and VDFs is for sophisticated users, in most environments. Chia Network and additional volunteers are running sufficient Timelords for consensus.

Installing

Install instructions are available in the INSTALL section of the chia-blockchain repository wiki.

Running

Once installed, a Quick Start Guide is available from the repository wiki.