filecoin-project / devgrants

👟 Apply for a Filecoin devgrant. Help build the Filecoin ecosystem!

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Python Version of go-fil-commcid

Aviksaikat opened this issue · comments

1. What is your project, and what problem does it solve? (max 100 words)

Our project, named "Py-Fil-CommCID", aims to develop a Python library for converting commitment hashes used by Filecoin to Content IDs (CIDs) that meet the CIDv1 standard. This library will enable Python developers to easily interact with commitment hashes and CIDs in the Filecoin ecosystem, facilitating seamless integration of Filecoin-related functionality into Python applications.

2. Project links

  • Link to Github repo:
  • License: MIT License

3. a) How is IPFS, Filecoin, or related technology used in this project?

The project utilizes the core concepts of Filecoin, including commitment hashes and CIDs, to provide utility functions for converting between them. It leverages the Filecoin ecosystem's commitment hash generation methods to create CIDs compliant with the CIDv1 standard.

b) Is this project building with the current microgrants focus area (FVM)? (Yes or No)

Yes

4. How will you improve your project with this grant? What steps will you take to meet this objective?

Number Grant Deliverable Briefly describe how you will meet deliverable objectives Timeframe (within 3 months)
1. Development of Python library Implement conversion utilities for commitment hashes to CIDs and vice versa in Python, mirroring the functionality of the go-fil-commcid library. 1 month
2. Testing and Validation Conduct comprehensive testing to ensure the reliability and accuracy of conversion utilities. Validate compatibility with various Python environments and versions. 2 months
3. Documentation and Release Create comprehensive documentation covering usage, examples, and API reference. Prepare the Python library for release on Python Package Index (PyPI). 3 months

5. If accepted, do you agree to share monthly project updates in this Github issue for 3 months or until the project described here is complete?

Yes

6. Does your proposal comply with our Community Code of Conduct?

Yes

7. Links and submissions

  • If your project began at a hackathon, have you submitted it for the relevant Protocol Labs prizes? Include links here if available:

Additional questions:

@Aviksaikat [Smart Contract Auditor, Systems Security Engineer, Lead Python Developer]

Previous projects
https://github.com/alienrobotninja/bee-py ( Ethereum Swarm Foundation)
https://github.com/Aviksaikat/swarm-cid-py ( Ethereum Swarm Foundation)

@Aviksaikat
Developing a Python library to convert Filecoin commitment hashes to CIDs (CIDv1). This facilitates easier Filecoin integration into Python apps.

Highlights:

Utilizes Filecoin tech for hash-CID conversions.
Supports FVM-focused development.
Plan: Develop the library, ensure testing and validation, and release documentation within 3 months.
Commitments:

Monthly updates here post-acceptance.
Adheres to the Community Code of Conduct.
Recommendation: Check out Apidog for robust API testing and documentation, useful for projects like this.

I'm not sure about your role @habibur4340. If you're from the filecoin team then pardon me. If not then this is not the way to get GitHub profile badges. Don't follow stupid YouTube videos, do something proper and earn the badges.

commented

@Aviksaikat - Thanks for your proposal!

  1. Instead of porting the project to Python, you could also just create a Python wrapper around the Go version, which would take less time and likely easier to maintain.
  2. However we are not sure how many Python devs would use this and would be more interested in a use case that would use a Python wrapper or port. If you can update your proposal with an interesting use case that might have a better chance of being accepted.