Chia blockchain python implementation (full node, farmer, harvester, timelord, and wallet)
Go to file
Juraj Oršulić 05f9667018
Allow CAT autodiscovery, refactor CAT default naming (#10308)
* Allow CAT autodiscovery

* Add wallet autodiscovery test

* Use dict get for automatically_add_unknown_cats with default false

* Refactor name generation for new CATs into one place

* Remove hardcoded default cat wallet name from wallet rpc test

* initial-config.yaml comment nit
2022-03-04 08:27:15 -08:00
.github move build and twine to be dev deps rather than workflow installs (#10291) 2022-02-24 20:58:28 -08:00
benchmarks benchmarks: Implement benchmarks for streamable (#10388) 2022-02-24 10:19:57 -08:00
build_scripts Update URL for direct download of windows whl for upnp (#10540) 2022-03-03 10:28:02 -08:00
chia Allow CAT autodiscovery, refactor CAT default naming (#10308) 2022-03-04 08:27:15 -08:00
chia-blockchain-gui@672cf2a74a updated gui to 672cf2a74a 2022-03-01 14:14:29 -08:00
mozilla-ca@20338a0075 adding ca updates (#10095) 2022-02-03 18:05:37 -08:00
tests Allow CAT autodiscovery, refactor CAT default naming (#10308) 2022-03-04 08:27:15 -08:00
tools pre-commit: Add a new hook to run isort (#8827) 2022-02-15 07:28:53 -08:00
.flake8 move all linter config to the root (#9830) 2022-01-19 11:38:11 -08:00
.gitignore Update to handle the NodeJS 16 dependency (#9921) 2022-02-11 18:30:19 -08:00
.gitmodules Pools mainnet (#7047) 2021-06-29 14:21:25 -07:00
.isort.cfg Split full node tests directory for parallelism (#10108) 2022-02-18 07:51:52 -08:00
.markdown-lint.yml move all linter config to the root (#9830) 2022-01-19 11:38:11 -08:00
.pre-commit-config.yaml Add pytest to mypy pre-commit environment (#10397) 2022-02-23 18:20:52 -08:00
BUILD_TIMELORD.md update permissions (#6061) 2021-05-26 11:33:26 -07:00
CHANGELOG.md Fix the year from 2021 to 2022 (#10462) 2022-02-27 10:08:38 -08: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 pre-commit: Add a new hook to run isort (#8827) 2022-02-15 07:28:53 -08:00
Install-gui.ps1 replaced npm install => npm ci (#9717) 2022-01-19 16:52:20 -08:00
install-gui.sh Update to handle the NodeJS 16 dependency (#9921) 2022-02-11 18:30:19 -08:00
install-timelord.sh Improve style consistency in root directory docs files (#4493) 2021-05-12 13:12:30 -07:00
INSTALL.md Improve style consistency in root directory docs files (#4493) 2021-05-12 13:12:30 -07:00
Install.ps1 Revert "pip==21.3.1 for now (#10035)" (#10055) 2022-02-01 10:26:08 -08:00
install.sh Improve SQLite version string (#10387) 2022-02-23 00:39:31 -08:00
installhelper.py Update version prop in package.json of gui (#10192) 2022-02-11 13:04:45 -08:00
lgtm.yml Fixed an issue where LGTM on chia-blockchain-gui did not work (#9750) 2022-01-10 20:56:46 -08:00
LICENSE 2021 year -> 2022 (#9829) 2022-01-15 19:41:56 -08:00
mypy.ini Ms.unused code (#10453) 2022-02-27 23:34:37 -05:00
pylintrc move all linter config to the root (#9830) 2022-01-19 11:38:11 -08:00
pyproject.toml Move black from SuperLinter to upload workflow, use 21.12b0 in pre-commit (#10103) 2022-02-20 21:33:09 -08:00
README.md Chia Seeder (#8991) 2021-11-27 18:30:25 -08:00
run-py-tests.sh Mypy issues on python 3.9.7 (#8554) 2021-09-22 10:44:03 -07:00
setup.py move build and twine to be dev deps rather than workflow installs (#10291) 2022-02-24 20:58:28 -08:00
start-gui.sh Update to handle the NodeJS 16 dependency (#9921) 2022-02-11 18:30:19 -08: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.