You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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:
Simplified development and deployment of filesystems
Much improved integration with local systems
Potential adoption of filesystems in various (namely, but not exclusive to, distributed storage) projects
The risks of not getting this right include:
Continued fragmentation of filesystem development
Limited adoption of filesystems in various (namely, but not exclusive to, distributed storage) projects
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:
Files and folders appear locally on the user's computer, visible in their file browser of choice (e.g., Windows Explorer, macOS Finder, Linux file managers), giving users a seamless and intuitive experience.
Users can interact with the filesystem using standard file system operations, such as drag-and-drop, copy-paste, and file system navigation, without needing to learn new commands or interfaces.
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:
Outreach: Relevant projects and organizations will be contacted directly to inform them about the API and its benefits.
Blog posts: Articles will be written and published on the project's website to showcase the API's capabilities, provide tutorials, and share success stories.
News articles: Efforts will be made to get the API featured in news articles and publications that cater to the target audience.
Conference talks: A talk could potentially be given at a future IPFS or Filecoin event to showcase the API and its potential, and to network with potential adopters.
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
Tasks: Design and implementation of Windows-specific backend for the FUSE API
Estimated duration: 1.5 months
Resources: Myself, with expertise in Windows development
Dependencies: None
Milestone 2: Linux Backend Implementation
Tasks: Design and implementation of Linux-specific backend for the FUSE API
Estimated duration: 1.5 months
Resources: Myself, with expertise in Linux development
Dependencies: None
Milestone 3: macOS Backend Implementation
Tasks: Design and implementation of macOS-specific backend for the FUSE API
Estimated duration: 1.5 months
Resources: Myself, with expertise in macOS development
Dependencies: Availability of alternative filesystem implementation for macOS (due to Apple's deprecation of kernel drivers)
Milestone 4: FUSE API Development
Tasks: Design and implementation of the cross-platform FUSE API
Estimated duration: 1 month
Resources: Myself, with expertise in API design and development
Dependencies: Completion of at least two backend implementations
Milestone 5: Proof of Concept and Documentation
Tasks: Implementation of a working proof of concept that demonstrates the FUSE API's functionality on at least two platforms without code changes, along with comprehensive documentation of the API and its usage
Estimated duration: 1.5 months
Resources: Myself, with expertise in API testing and documentation
Dependencies: None
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.
Milestone #
Description
Deliverables
Completion Date
Funding
1
Windows Backend Implementation
Functional Windows backend for FUSE API
-
-
2
Linux Backend Implementation
Functional Linux backend for FUSE API
-
-
3
macOS Backend Implementation
Functional macOS backend for FUSE API
-
-
4
FUSE API Development
Cross-platform FUSE API
-
-
5
Proof of Concept and Documentation
Working proof of concept and comprehensive documentation
-
-
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.
Community-driven maintenance: I hope that developers who implement the API will take an active role in reporting bugs, submitting patches, and contributing to the project's maintenance.
Personal investment: As the project's creator, I will continue to be personally invested in the project's success and will contribute to bug fixes and releases to the best of my abilities.
Commercial support: For organizations that require priority support or custom development, I will be available for hire to work on fixes and features.
Community building: I aim to attract a small community of developers who can contribute to the project's maintenance and future development. By hosting the project on GitHub, I hope to foster a collaborative environment that encourages contributions and feedback.
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.
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.
Please contact me at [email protected] 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.
The text was updated successfully, but these errors were encountered:
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:
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 [email protected] 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.
The text was updated successfully, but these errors were encountered: