#puzzle #condition #coin

chia-puzzles

Chia primitives needed for building wallets

17 releases (8 breaking)

0.20.1 Jan 8, 2025
0.19.4 Jan 2, 2025
0.19.3 Dec 23, 2024
0.15.0 Oct 11, 2024
0.9.0 May 23, 2024

#7 in #coin

Download history 220/week @ 2024-12-08 658/week @ 2024-12-15 871/week @ 2024-12-22 522/week @ 2024-12-29 618/week @ 2025-01-05 645/week @ 2025-01-12 4485/week @ 2025-01-19 2931/week @ 2025-01-26 4134/week @ 2025-02-02 2615/week @ 2025-02-09 3820/week @ 2025-02-16 6044/week @ 2025-02-23 5426/week @ 2025-03-02 4200/week @ 2025-03-09 3823/week @ 2025-03-16 1286/week @ 2025-03-23

15,102 downloads per month
Used in 16 crates (8 directly)

Apache-2.0

375KB
960 lines

Chia Puzzles

This is a collection of the standard Chia puzzles. These are the puzzles which are deployed on chain and therefore cannot change.

This repository tracks the source code, the compiled hex, and a hash of the compiled hex to ensure continuity.

All puzzles are kept in the puzzles folder as both a .clsp and .clsp.hex file.

The Python and Rust bindings are created by running generate_chialisp_constants.py

Adding Bindings for a New Puzzle

  1. Add the .clsp and .clsp.hex files into the programs folder.
  2. Add the puzzle name, path, and shatree hash into the list in generate_chialisp_constants.py.
  3. Run generate_chialisp_constants.py.
  4. Commit your changes, including to the outputted programs.py and programs.rs.

Testing

This project is managed with poetry for Python and cargo for Rust.

To run the Python tests:

python -m venv venv

pip install poetry
. ./venv/bin/activate
poetry install
pytest chia_puzzles_py/tests

If you're on Windows activate the venv with . venv\Scripts\activate instead

To run the Rust tests:

cargo test --all

Dependencies