AD
Boost Your Brand on BlueSky—Exclusive banner space to amplify your reach within the BlueSky community.
BSkyInfo LogoBskyInfo
All ToolsCategoriesCollectionsFeed DirectoryLabeler DirectoryArticlesGuidesGlossaryBluesky SDKsSponsor
Submit
All ToolsCategoriesCollectionsFeed DirectoryLabeler DirectoryGuidesGlossaryArticlesBluesky SDKsSponsorSubmit
  1. SDKs
  2. /Python
  3. /python-libipld
MarshalX

python-libipld

A Python SDK for Bluesky and AT Protocol by MarshalX

🏎️ Fast Python library to work with IPLD: DAG-CBOR, CID, CAR, multibase

GitHub Stats

25stars
6forks
6contributors
1open issues

Dates

Created:September 3, 2023
Last updated:February 1, 2026

README

The following content is from python-libipld's GitHub repository. All rights reserved by the original author.

Python IPLD

This project aims to speed up The AT Protocol SDK by using Rust for the heavy lifting. Only atproto related parts are implemented first.

Code snippet:

import libipld

# CID
print(libipld.decode_cid('bafyreig7jbijxpn4lfhvnvyuwf5u5jyhd7begxwyiqe7ingwxycjdqjjoa'))
# Output: {'hash': {'size': 32, 'code': 18, 'digest': b'\xdfHP\x9b\xbd\xbcYOV\xd7\x14\xb1{N\xa7\x07\x1f\xc2C^\xd8D\t\xf44\xd6\xbe\x04\x91\xc1)p'}, 'version': 1, 'codec': 113}
print(libipld.encode_cid(b'\x01q\x12 \xb6\x81\x1a\x1d\x7f\x8c\x17\x91\xdam\x1bO\x13m\xc0\xe2&y\xea\xfe\xaaX\xd6M~/\xaa\xd5\x89\x0e\x9d\x9c'))
# Output: bafyreifwqenb274mc6i5u3i3j4jw3qhcez46v7vkldle27rpvlkysdu5tq

# DAG-CBOR
print(libipld.decode_dag_cbor(b'\xa2aa\x0cabfhello!'))
# Output: {'a': 12, 'b': 'hello!'}
print(libipld.encode_dag_cbor({'a': 12, 'b': 'hello!'}))
# Output: b'\xa2aa\x0cabfhello!'

# multibase
print(libipld.decode_multibase('ueWVzIG1hbmkgIQ'))
# Output: ('u', b'yes mani !')
print(libipld.encode_multibase('u', b'yes mani !'))
# Output: ueWVzIG1hbmkgIQ

Features

🔗 CID (Content Identifier) Operations
  • decode_cid(data: str | bytes) -> dict - Decode CIDs from string representation (e.g., 'bafy...') or raw bytes into structured data containing version, codec, and hash information
  • encode_cid(data: str | bytes) -> str - Encode CID raw bytes to string representation, or return string CIDs as-is
📦 DAG-CBOR (Directed Acyclic Graph CBOR) Operations
  • decode_dag_cbor(data: bytes) -> Any - Decode DAG-CBOR binary data into Python objects (dicts, lists, primitives)
  • decode_dag_cbor_multi(data: bytes) -> list[Any] - Decode multiple concatenated DAG-CBOR objects from a single byte stream
  • encode_dag_cbor(data: Any) -> bytes - Encode Python objects into DAG-CBOR binary format
🌐 Multibase Operations
  • decode_multibase(data: str) -> tuple[str, bytes] - Decode multibase-encoded strings, returning the base identifier and decoded data
  • encode_multibase(code: str, data: str | bytes) -> str - Encode data using specified multibase encoding (e.g., base58btc with code 'u')
🚗 CAR (Content Addressable Archives) Operations
  • decode_car(data: bytes) -> tuple[dict, dict[bytes, dict]] - Decode CAR files into header metadata and a mapping of CID bytes to block data

Requirements

  • Python 3.8 or higher.

Installing

You can install or upgrade libipld via

pip install -U libipld

Contributing

Contributions of all sizes are welcome.

License

MIT

Topics

atprotociddag-cbordecodingencodingipldmultibase

Related SDKs

snarfedbridgy-fed

🌉 A bridge between decentralized social networks

1147•Python
snarfedlexrpc

Python client and server for Bluesky/AT Protocol's XRPC + Lexicon

46•Python
snarfedgranary

💬 The social web translator

507•Python
Linus2punkt0bluesky-crossposter

An app for crossposting your posts from bluesky to twitter and mastodon

269•Python
MarshalXatproto

The AT Protocol (🦋 Bluesky) SDK for Python 🐍

637•Python
jaseemabidbluesky-sync

🔄 Sync a list of users in accounts.txt to a Bluesky starter pack

4•Python

Resources

GitHub RepositoryProject Website

License

MIT

Author

MarshalX
MarshalX

Activity

Last commit: February 1, 2026
Commit frequency: Unknown

Our Sponsors

Your Brand Here!

50K+ engaged viewers every month

Limited spots available!

📧 Contact us via email🦋 Contact us on Bluesky
BSkyInfo LogoBskyInfo

The Most Comprehensive Bluesky Tools Directory

Stay updated with the latest Bluesky tools and ecosystem news 🦋

Bluesky butterfly logo
Quick LinksSubmit a ToolSponsorAboutLegal Information
ToolsFeed DirectoryLabeler DirectorySchedulingAnalyticsAll ToolsCategoriesCollectionsTags
ResourcesArticlesBluesky GuidesBluesky GlossaryBluesky SDKsBluesky ResourcesSkyRaffleMeida Coverage
Our ProductsRaffleBlueAiTeach ToolsLaiewAI affiliate listFirstoCoast Fire CalculatorAsphalt CalculatorDog Names World

This website may contain affiliate links

© 2026 BskyInfo. All rights reserved.