Open markg85 opened 1 week ago
I updated the following sections:
Adoption, Reach, and Growth Strategies
(specifically the onboarding
part is new). I'm in the process of collecting feedback from relevant parties (besides IPFS/Filecoin) to quote them in the same section. I'll update that section once i have collected their feedback.Development Roadmap
specifically the User Engagement
bullet in each of the milestones is new.In terms of budget/time (given that this is quite a bit higher then the 50k max). This is a huge project where 7 months is the bare minimum. It cannot be easily split up in smaller scoped grants because of inter-dependencies. The API development is dependent on at least windows and linux. Mac is a bit of a weird one here because it has just (in sequoia) introduced a new API for writing user space filesystems but it's not fully documented yet. My focus will be on Windows+Linux initially regardless, mac will be done last anyhow.
Open Grant Proposal: Cross-Platform FUSE API
Project Name: Cross-Platform FUSE API
Proposal Category: Developer and data tooling
Individual or Entity Name: Individual
Proposer: @markg85
Project Repo(s) https://github.com/crazyfuse (This project will be called Crazyfuse and will live in these repositories)
(Optional) Filecoin ecosystem affiliations: None
(Optional) Technical Sponsor: None
Do you agree to open source all work you do on behalf of this RFP under the MIT/Apache-2 dual-license?: Yes (I intent to use the MIT-0 license)
Project Summary
The goal of this project is to create a cross-platform FUSE (Filesystem in Userspace) API that enables developers to create filesystems that work seamlessly across multiple platforms, including Windows, macOS, and Linux. This API will provide a unified interface for interacting with local filesystems, allowing projects to integrate with these systems more easily.
Currently, developing a filesystem that works across multiple platforms is a challenging task, requiring a significant amount of time and effort to implement and maintain platform-specific code. The lack of a standardized, cross-platform FUSE API hinders the adoption of filesystems in various projects, limiting their ability to provide a seamless user experience.
This project aims to create a foundational infrastructural component that extends beyond the scope of Filecoin/IPFS, but rather addresses a widespread need in filesystem development. By providing a cross-platform FUSE API, we can simplify the process of developing and deploying filesystems, making it easier for projects to integrate with local systems.
Impact
The proposed project will have a significant impact on the Filecoin and IPFS ecosystems by providing a standardized, cross-platform FUSE API that enables developers to create filesystems that work seamlessly across multiple platforms. This will simplify the process of developing and deploying filesystems, making it easier for projects to integrate with local systems.
The benefits of this project include:
The risks of not getting this right include:
Success for this project can be measured by the adoption of the cross-platform FUSE API in various projects and the simplicity of developing and deploying filesystems.
Outcomes
The final outcome of this project is a new, well-documented, cross-platform FUSE API that enables developers to create filesystems that work seamlessly across multiple platforms. To demonstrate the effectiveness of the API, a proof-of-concept example implementation will be provided, which will work on at least Linux and Windows. This implementation will be a fully functional filesystem, featuring:
The API will be thoroughly documented on a website, providing clear instructions and guidelines for developers to create their own filesystems using the API. This will enable developers to build a wide range of applications and services that can leverage the power of filesystems, without requiring users to have extensive technical knowledge or experience.
By providing a low-barrier-to-entry solution for users to interact with filesystems, we can increase adoption and usage of decentralized storage solutions, and enable a wider range of use cases and applications that can benefit from the power of filesystems.
Adoption, Reach, and Growth Strategies
The target audience for the cross-platform FUSE API are projects that manage user data in various forms. The primary goal is to enable these projects to make their data accessible to users on their local file browser.
To promote the adoption of the API, I will employ the following strategies:
Note: The projects mentioned above are just a few examples of the many potential candidates that could benefit from this API. However, it is essential to contact and engage with relevant persons in each of these projects to gauge their interest, gather feedback, and ensure that the API meets their specific needs and requirements.
Development Roadmap
The development process will be broken down into 5 milestones, with estimated timelines and resources required for each milestone.
Milestone 1: Windows Backend Implementation
Milestone 2: Linux Backend Implementation
Milestone 3: macOS Backend Implementation
Milestone 4: FUSE API Development
Milestone 5: Proof of Concept and Documentation
Assuming all milestones can be completed as planned, the total project duration is estimated to be approximately 7 months.
Total Budget Requested
I request funding on a month-by-month basis for the duration of the project, which is currently estimated to be approximately 7 months. Each month, an automatic transfer of €20,000 will be required to ensure the project's continued progress. The total amount of money requested for the entire 7-month period is €140,000.
To ensure the project's success, I propose that we schedule a monthly call to monitor progress, discuss any challenges or risks, and make adjustments to the project plan as needed. If there is a risk of the project taking longer than estimated, we can decide together whether it makes sense to continue with the project and allocate additional funding.
Maintenance and Upgrade Plans
To ensure the long-term sustainability of the FUSE API, I plan to leverage the open-source nature of the project to encourage community involvement and contributions.
By relying on a combination of community-driven maintenance, personal investment, and commercial support, I believe that the FUSE API can continue to evolve and improve over time, even after the initial development phase is complete.
Team
Team Members
Team Member LinkedIn Profiles
Team Website
Relevant Experience
I have experience working on projects that aim to make decentralized technologies more accessible to the average user. In the past, I have worked on integrating IPFS protocols into existing tools, such as ffmpeg and curl. I am confident that I can bring this project to a successful end.
Team code repositories
Additional Information
Please contact me at markg85@gmail.com for discussing the grant agreement and general next steps.
Although the project will be developed under the terms of the MIT/Apache-2 dual-license, I personally prefer to release my work under the MIT-0 license.
Throughout the development of this project, I intend to attend all relevant Filecoin and IPFS conferences to share the project's progress and engage with the community. I would greatly appreciate sponsorship for attending these events, covering travel costs, accommodation, and event registration fees. Please note that the time spent attending these events will not be included in the project's milestones and duration.
By supporting this project, you will not only be contributing to the development of a vital piece of infrastructure but also enabling me to share this work with the broader community, fostering collaboration and growth in the ecosystem.