Closed justmert closed 1 year ago
Hi @justmert, thank you for your proposal! We will not be moving forward with an open grant at this time, but would encourage you to submit a microgrant application for one focused functionality of this work. We would also be interested to learn about this project's initial target audience.
Hi @ErinOCon, thank you for your response. I have moved the proposal to the Microgrants section. You can find the new proposal #1203, thanks again.
PEER-CLI: Swiss Army Knife for the IPFS
Proposal Category:
app-dev
Proposer:
justmert
(Optional) Technical Sponsor:
No
Do you agree to open source all work you do on behalf of this RFP and dual-license under MIT, APACHE2, or GPL licenses?:
Yes, MIT
Project Description
Applications built on the IPFS protocol generally tends to be Web applications built with a centralized client-server architecture with some price modeling and payment system. With these applications, interacting IPFS can be very cumbersome and time-consuming process.
If a simple user wants to save contents of a directory in IPFS to the local file system or navigate in the IPFS Mutable File System without the web applications, which is a very common use case, he/she has to interact with IPFS node directly with
ipfs-cli
. This is not a very user-friendly experience. A simple IPFS user should be able to interact with IPFS without any technical knowledge.Also, there is no easy way to chat, or share files with other users through encrypted channels. Let's say that our simple user wants to share a file or a text with his/her friend, he/she has to use a centralized service like Telegram, or WhatsApp, etc. These services are not decentralized, and they are not built on the IPFS protocol.
PEER-CLI is a command-line tool that is the swiss army knife for the IPFS. It combines solutions to the problems mentioned above in one single CLI tool. It is a simple, easy-to-use, and user-friendly tool that lets you interact with IPFS without any technical knowledge with simple menu-based user interface. It can be used, to:
It is built with Node.js and uses the
ipfs-core
andlibp2p
libraries.Project Github Page
Value
PEER-CLI is a necessary tool for the IPFS ecosystem. It brings the simple user together with the great technical infrastructure of IPFS. Besides, developers or advanced users can use it to interact with IPFS quickly without any intermediate apps. PEER-CLI directly uses the IPFS node that is built in the application itself, so it is very fast and efficient. Uploading a directory to the IPFS with PEER-CLI or saving a directory from the IPFS to the local file system takes less than 8 seconds (download or upload time is not included).
It is built with Node.js and uses the
ipfs-core
for interacting IPFS and useslibp2p
for interacting other users (peers). It is a very lightweight tool that is easy to install and use. It is also very easy to extend and add new features to it.Using it wrong does not pose any risk to the IPFS ecosystem or for the user. Because there is no payment system or price modeling in the application (since it is free), it is not possible to lose any money. Also, it is not possible to lose any data because it is not possible to delete any data from the IPFS with this tool. All IPFS functionalities can be replicated with ipfs-cli tool, and all peer functionalities can be replicated with other peer-to-peer applications (with more compelling way, of course).
Deliverables
cd
,ls
,cat
,mkdir
etc.)cd /ipfs/Qm...
orcd my_dir
)libp2p-webrtc-star
protocol.libp2p-noise
protocol.libp2p-webrtc-star
protocol.libp2p-pubsub
functionality.Development Roadmap
Milestone 1
Budget: $20,000 Estimated Time: 1-2 weeks
libp2p-webrtc-star
protocol.libp2p-webrtc-star
protocol.libp2p-noise
protocol.Milestone 2
Budget: $20,000 Estimated Time: 6-8 weeks
libp2p-webrtc-star
protocol.libp2p-pubsub
functionality.Total Budget Requested
$40,000
Maintenance and Upgrade Plans
I will maintain the project and publish version updates to the NPM registry as soon as possible. I will also provide support for the users who have problems with the application in issues section of the GitHub repository.
The PEER-CLI will stay as open source and free to use so, anyone can contribute to the project and make it better by fixing bugs or adding new features to it. In milestone 2, the upgrade plan explained in detail but, if someone wants to contribute other than these features, they can freely do it and make a pull request. I will review the pull requests and merge it if it is good enough.
After the project milestones are finished, the project will observe the
libp2p
oripfs-core
changes and update the project accordingly.libp2p
will change its infrastructure in near future, so the project will be updated to support the new infrastructure as well.Team
Team Members
Mert Köklü LinkedIn: https://www.linkedin.com/in/mertkoklu/ Github: https://github.com/justmert Stack Overflow: https://stackoverflow.com/users/10515117/mert-köklü
Relevant Experience
I am the founding vice-chair of ACM Student Chapter, Ambassador for many organizations like Microsoft and Certified Instructor of NVIDIA. In Web3 ecosystem, I am a Graph Advocate of The Graph and Aave Turkey Community Co-Manager. Interested in Web3 ecosystem projects with strong technical infrastructures like IPFS and FVM (Filecoin Virtual Machine). I have developed many projects under the Web3 ecosystem such as Aave API Telegram Bot and Kadena Chainweb Python Bindings with 3 years of work of professional experience in my career.
Team code repositories
https://github.com/justmert/peer-cli
Additional Information
I have learned about the Open Grants Program from the Filecoin Dev Grants page.
Email: kklumert@gmail.com Telegram: @mertkklu Discord: MertK#2634