solana-program-library/account-compression
Noah Gundotra bf14dc39f6
Add more depth size pairs (#3972)
2023-01-11 10:08:46 -06:00
..
programs Add more depth size pairs (#3972) 2023-01-11 10:08:46 -06:00
sdk Add more depth size pairs (#3972) 2023-01-11 10:08:46 -06:00
Anchor.toml Account Compression: Version ChangeLog + Test (#3632) 2022-09-22 15:05:24 -04:00
Cargo.lock Add more depth size pairs (#3972) 2023-01-11 10:08:46 -06:00
Cargo.toml account-compression: Rename packages, prep for release (#3600) 2022-09-13 17:44:18 +02:00
README.md Account Compression: 0.1.2 release (#3672) 2022-10-06 11:58:16 -05:00

README.md

Account Compression (Beta)

This on-chain program provides an interface for composing smart-contracts to create and use SPL ConcurrentMerkleTrees. The primary application of using SPL ConcurrentMerkleTrees is to make edits to off-chain data with on-chain verification.

This program is targeted towards supporting Metaplex Compressed NFTs and may be subject to change.

Note: Using this program requires an indexer to parse transaction information and write relevant information to an off-chain database.

A rough draft of the whitepaper for SPL ConcurrentMerkleTree's can be found here.

Rust Packages

  • spl-account-compression: SDK for interacting with account compression program
  • spl-noop: SDK for interacting with no op program, primarily for circumventing log truncation
  • spl-concurrent-merkle-tree: SDK for creating SPL ConcurrentMerkleTrees

Typescript SDK

@solana/spl-account-compression is generated using Metaplex Foundation's Solita.

Testing and Development

Testing contracts locally requires the SDK to be built.

With a built local SDK, the test suite can be ran with:

  1. yarn link @solana/spl-account-compression
  2. yarn
  3. yarn test