Skip to main content

Open-Rarity library is an open standard that provides an easy, explanable and reproducible computation for NFT rarity

Project description

OpenRarity

Version Test CI License

OpenRarity

We’re excited to announce OpenRarity, a new rarity protocol we’re building for the NFT community. Our objective is to provide a transparent rarity calculation that is entirely open-source, objective, and reproducible.

With the explosion of new collections, marketplaces and tooling in the NFT ecosystem, we realized that rarity ranks often differed across platforms which could lead to confusion for buyers, sellers and creators. We believe it’s important to find a way to provide a unified and consistent set of rarity rankings across all platforms to help build more trust and transparency in the industry.

We are releasing the OpenRarity library in a Beta preview to crowdsource feedback from the community and incorporate it into the library evolution.

See the full announcement in the blog post.

Developer documentation

Read developer documentation on how to integrate with OpenRarity.

Setup and run tests locally

poetry install # install dependencies locally
poetry run pytest # run tests

Some tests are skipped by default due to it being more integration/slow tests. To run resolver tests:

poetry run pytest -k test_testset_resolver --run-resolvers

Library usage

You can install open rarity as a python package to use OpenRarity in your project:

pip install open-rarity

Please refer to the scripts/ folder for an example of how to use the library.

If you have downloaded the repo, you can use OpenRarity shell tool to generate json or csv outputs of OpenRarity scoring and ranks for any collections:

python -m scripts.score_real_collections boredapeyachtclub proof-moonbirds

Read developer documentation for advanced library usage

Contributions guide and governance

OpenRarity is a community effort to improve rarity computation for NFTs (Non-Fungible Tokens). The core collaboration group consists of four primary contributors: Curio, icy.tools, OpenSea and Proof

OpenRarity is an open-source project and all contributions are welcome. Consider following steps when you request/propose contribution:

  • Have a question? Submit it on OpenRarity GitHub discussions page
  • Create GitHub issue/bug with description of the problem link
  • Submit Pull Request with proposed changes
  • To merge the change in the main branch you required to get at least 2 approvals from the project maintainer list
  • Always add a unit test with your changes

We use git-precommit hooks in OpenRarity repo. Install it with the following command

poetry run pre-commit install

Project Setup and Core technologies

We used the following core technologies in OpenRarity:

  • Python ≥ 3.10.x
  • Poetry for dependency management
  • Numpy ≥1.23.1
  • PyTest for unit tests

License

Apache 2.0 , OpenSea, ICY, Curio, PROOF

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

open_rarity-0.7.5.tar.gz (37.9 kB view details)

Uploaded Source

Built Distribution

open_rarity-0.7.5-py3-none-any.whl (51.7 kB view details)

Uploaded Python 3

File details

Details for the file open_rarity-0.7.5.tar.gz.

File metadata

  • Download URL: open_rarity-0.7.5.tar.gz
  • Upload date:
  • Size: 37.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for open_rarity-0.7.5.tar.gz
Algorithm Hash digest
SHA256 63d475d03f841e2c69187fa3c8b7a8ea20cc7ac276b6f48c2c65214b07a99b0f
MD5 aa8e192d4f835debccb9657f84722046
BLAKE2b-256 349bf23709a023ff183a90d9fc66c814ff665b8ce98788c47016c45b7974dfb3

See more details on using hashes here.

File details

Details for the file open_rarity-0.7.5-py3-none-any.whl.

File metadata

  • Download URL: open_rarity-0.7.5-py3-none-any.whl
  • Upload date:
  • Size: 51.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for open_rarity-0.7.5-py3-none-any.whl
Algorithm Hash digest
SHA256 b522cd230bac7a58d69f731a64efc8c4e571fa6b75a494f01ba2594eebdabb4c
MD5 e2e00407cf1641f5d91941093e328587
BLAKE2b-256 1c73fe4a10d3bd1d376ef8c3089b1ff16dc42f1b6126f5973aca220de54c6265

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page