Chia blockchain python implementation (full node, farmer, harvester, timelord, and wallet)
Go to file
Amine Khaldi 67039ca648
Extract get_trade_and_status to be reused instead of reimplemented (#17115)
Extract get_trade_and_status to be reused instead of reimplemented.
2023-12-20 20:50:01 -06:00
.github move electron build config to build_scripts/electron-builder.json (#17007) 2023-12-18 11:12:04 -06:00
benchmarks add benchmark for loading test chains (#16775) 2023-11-27 10:20:57 -06:00
build_scripts move electron build config to build_scripts/electron-builder.json (#17007) 2023-12-18 11:12:04 -06:00
chia Allow construct_cat_puzzle to take either inner puzzle or hash and document the use cases (#17112) 2023-12-20 20:48:50 -06:00
chia-blockchain-gui@aeabe3315b Merge commit 'fc5a550d065deb811b6c51583a44ca56764e8dee' into checkpoint/main_from_release_2.1.2_fc5a550d065deb811b6c51583a44ca56764e8dee 2023-12-08 20:17:46 -05:00
mozilla-ca@efc15699d9 CA Cert updates (#16129) 2023-08-23 22:56:08 -05:00
tests Extract get_trade_and_status to be reused instead of reimplemented (#17115) 2023-12-20 20:50:01 -06:00
tools Optional atom fixes (#17040) 2023-12-12 13:07:08 -06:00
.coveragerc coverage ignore benchmark tests (#17064) 2023-12-14 11:15:53 -06:00
.flake8 Address and remove DAO related files from flake8's exclusion list (#17109) 2023-12-20 20:38:02 -06:00
.git_archival.txt include information for setuptools_scm in git archives (#17026) 2023-12-11 09:44:05 -06:00
.gitattributes include information for setuptools_scm in git archives (#17026) 2023-12-11 09:44:05 -06:00
.gitignore mypy: Build mypy.ini config with exclusions dynamically (#15158) 2023-05-22 16:50:13 -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 isort: Remove the remaining exceptions and sort the related files (#14124) 2022-12-13 17:10:55 -06:00
.markdown-lint.yml move all linter config to the root (#9830) 2022-01-19 11:38:11 -08:00
.pre-commit-config.yaml apply pyupgrade --py38-plus --keep-runtime-typing (#14646) 2023-10-24 12:01:23 -05:00
activated.ps1 Add .clvm.hex pre-commit check (#12050) 2022-09-12 16:08:55 -05:00
activated.py configure isort to add the future annotations import (#13327) 2022-09-30 03:40:22 -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 Update CHANGELOG.md (#17082) 2023-12-18 13:06:32 -06: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 Adding signed commit requirment info (#15313) 2023-05-17 10:47:58 -05:00
Install-gui.ps1 Adding submodule branch override to Install-gui.ps1 (#13752) 2022-10-31 11:23:53 -05:00
install-gui.sh Update install-gui.sh to use check Node 18 and npm 9 (#16424) 2023-09-26 17:30:43 -05:00
Install-plotter.ps1 Updated default bladebit version to v3.1.0 (#16531) 2023-10-05 11:15:38 -05:00
install-plotter.sh Updated default bladebit version to v3.1.0 (#16531) 2023-10-05 11:15:38 -05:00
install-timelord.sh Fix timelord-install.sh for CentOS\RHEL (#15992) 2023-08-15 12:53:39 -05:00
INSTALL.md Improve style consistency in root directory docs files (#4493) 2021-05-12 13:12:30 -07:00
Install.ps1 Use bls from chia rs (#16715) 2023-11-07 09:06:52 -08:00
install.sh Use bls from chia rs (#16715) 2023-11-07 09:06:52 -08:00
installhelper.py apply pyupgrade --py38-plus --keep-runtime-typing (#14646) 2023-10-24 12:01:23 -05:00
LEGACY-SUPPORT-POLICY.md Improve clarity of legacy support policy language (#15784) 2023-10-10 13:44:25 -05:00
LICENSE update copyright year to 2023 (#14358) 2023-01-17 15:37:50 -07:00
manage-mypy.py mypy: Build mypy.ini config with exclusions dynamically (#15158) 2023-05-22 16:50:13 -05:00
mypy-exclusions.txt make spend_prefarm.py checked by mypy (#17031) 2023-12-11 11:57:17 -06:00
mypy.ini.template build(deps-dev): bump mypy from 1.5.1 to 1.7.0 (#16788) 2023-11-14 12:20:56 -06:00
PRETTY_GOOD_PRACTICES.md Fix a typo in code style documentation (#15877) 2023-07-27 16:17:28 -05:00
pylintrc Use bls from chia rs (#16715) 2023-11-07 09:06:52 -08:00
pyproject.toml Add support for Python 3.11 (#11407) 2023-01-27 17:16:03 -06:00
pytest.ini initiate phasing out of the coin_solutions name in JSON structs (#17089) 2023-12-19 10:58:43 -06:00
README.md Update README badges (#14877) 2023-08-03 00:40:01 -05:00
SECURITY.md Update SECURITY.md (#16992) 2023-12-04 11:34:15 -06:00
setup.py build(deps): bump boto3 from 1.33.13 to 1.34.0 (#17066) 2023-12-19 12:07:31 -06:00
start-gui.sh Update install-gui.sh to use check Node 18 and npm 9 (#16424) 2023-09-26 17:30:43 -05:00

chia-blockchain

Chia Network logo

Dynamic JSON Badge
Dynamic JSON Badge
Dynamic JSON Badge

Coveralls
GitHub all releases
GitHub commit activity
GitHub contributors

Chia Discord
YouTube Channel Subscribers
Subreddit subscribers
Twitter Follow

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 Chia website, the wiki, and FAQ for information on this project.

Python 3.8.1+ is required. Make sure your default python version is >=3.8.1 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.