Skip to main content

Central catalogue of (crypto-)assets, platforms and networks.

Project description

tribulnation-catalogue

PyPI Python License: MIT

Python client for the Tribulnation Catalogue — a typed, open catalogue of crypto assets, trading platforms, and instrument mappings.

Install

pip install tribulnation-catalogue

Usage

from tribulnation.catalogue import Catalogue

catalogue = Catalogue.load()

btc     = catalogue.assets["bitcoin"]
binance = catalogue.platforms["binance"]

On first call, load() downloads the catalogue and caches it at ~/.cache/tribulnation/catalogue. Subsequent calls load from cache.

Loading options

# Use cache, download if not present (default)
catalogue = Catalogue.load()

# Force a fresh download
catalogue = Catalogue.load(refresh=True)

# Load from an explicit local folder
catalogue = Catalogue.load("data")

# Custom source URL or cache directory
catalogue = Catalogue.load(
    url="https://my-mirror.example.com/data.zip",
    cache_dir=".cache/catalogue",
)

# Suppress the download message
catalogue = Catalogue.load(silent=True)

What's available

catalogue.assets           # dict[str, Asset]
catalogue.platforms        # dict[str, Platform]
catalogue.blockchains      # filtered view: kind == 'blockchain'
catalogue.cexs             # filtered view: kind == 'cex'
catalogue.dexs             # filtered view: kind == 'dex'

catalogue.spot_instruments        # dict[platform, dict[id, Spot]]
catalogue.perpetual_instruments   # dict[platform, dict[id, Perpetual]]
catalogue.debt_instruments        # dict[platform, dict[id, Debt]]
catalogue.collateral_instruments  # dict[platform, dict[id, Collateral]]
catalogue.pools                   # dict[platform, dict[id, Pool]]

catalogue.asset_translations      # dict[platform, dict[exchange_id, asset_id]]
catalogue.network_translations    # dict[platform, dict[exchange_id, network_id]]

catalogue.spam                    # dict[platform, dict[address, SpamAddress]]

Types

All types are available from the package root:

from tribulnation.catalogue import (
    Asset, AssetPeg, ExternalIds,
    Platform, Blockchain, CexPlatform, DexPlatform,
    Spot, Perpetual, Debt, Collateral, Pool,
    SpamAddress,
)

Links

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

tribulnation_catalogue-0.1.7.tar.gz (12.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tribulnation_catalogue-0.1.7-py3-none-any.whl (16.6 kB view details)

Uploaded Python 3

File details

Details for the file tribulnation_catalogue-0.1.7.tar.gz.

File metadata

  • Download URL: tribulnation_catalogue-0.1.7.tar.gz
  • Upload date:
  • Size: 12.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.15

File hashes

Hashes for tribulnation_catalogue-0.1.7.tar.gz
Algorithm Hash digest
SHA256 fa9762ecbdd37ce26d47b5b71daf19ada048b60e83f0906927f0b671fb1955dd
MD5 b4806a511a179600cb66372361b89028
BLAKE2b-256 87fdc81e74a36d797b534e39c41c5cb2084fc020cbe62c2ccc899d244d223efe

See more details on using hashes here.

File details

Details for the file tribulnation_catalogue-0.1.7-py3-none-any.whl.

File metadata

File hashes

Hashes for tribulnation_catalogue-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 8d0fe95d6ee9e5bf69fb881d84ea73c5a6e845ffa684055ff6cbbed77937add4
MD5 6f72c5d6a3d23f69ee05fa73cd108f3d
BLAKE2b-256 83e63ba554d731f3b660c9c3ff902bc91ce58efc44ef34f91d8c0b3b149bd78a

See more details on using hashes here.

Supported by

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