submit here: https://github.com/filecoin-project/devgrants/issues/new?assignees=realChainLife&labels=Open+Grant%2C+open-grant&template=open-grant-application.md&title= # Open Grant Proposal: `Capyloon Mobile OS` **Name of Project: Capyloon Mobile OS** **Proposal Category:** `app-dev` **Proposer:** @fabricedesre **(Optional) Technical Sponsor:** @autonome **Do you agree to open source all work you do on behalf of this RFP and dual-license under MIT and APACHE2 licenses?:** No The license is AGPL for newer development, and that sits on an operating-system sized pile of open source code from thousands of other projects. Relicensing some parts may be possible in certain circumstances. # Project Description <!-- Please describe exactly what you are planning to build. Make sure to include the following: --> <!-- - Start with the need or problem you are trying to solve with this project. --> *Problem:* Decentralized and user-centric innovation and deployment on mobile is hindered, if not completely blocked, by Apple and Google on iOS and Android through control of application discovery, extractive payment models, and limitations on API capabilities. There is little indication that meaningful integration of web3 features on iOS or Android platforms, either in the core or for developers, will happen anytime soon. <!-- - Describe why your solution is going to adequately solve this problem. --> An open innovation channel that is not controlled by Apple or Google is necessary for unlocking web3 opportunities and growth on mobile. Capyloon is a mobile OS building on the work of KaiOS, now the #3 mobile platform globally, which uses the web platform as its application and rendering layer, with proven ability to ship millions of devices in many countries. KaiOS forked the open source code from Firefox OS, which Mozilla abandoned after closing that initiative down. Web3 already uses the web platform for content delivery and application development, with IPFS front-ends and wallet API injection as the primary pattern for dapps. Combining a common device platform with a web-based operating system that has web3 built-in is a cheatcode for leapfrogging entrenched mobile operating systems to achieve one or more of: 1) Create new categories in mobile, home and IoT connected device product areas 2) Take a couple percentage point wedge in existing mobile markets 3) Pressure entrenched market controllers to accelerate their web3 timelines This grant proposes to fund continued development of the core OS for one year, focusing on the integration of IPFS, Filecoin and web3 features in the OS, and to ship a series of OS images showcasing applications from across the ecosystem using those features. ## Value <!-- Please describe in more detail why this proposal is valuable for the Filecoin ecosystem. Answer the following questions: --> <!-- - What are the benefits to getting this right? --> **Target outcomes:** * Identifying and addressing technical issues for dapp development on mobile platforms - this effort is already shaking out some problems with IPFS gateway availability and bugs in services like web3.storage, and we'll use it as a testbed for mobile connectivity solutions for IPFS generally * Top Web3 projects and companies are galvanized around the vision of a mobile OS for their users and use-cases * Investors are interested in the platform core, and invest in the participant companies * Device manufacturers partner for core platform support - this often looks like early testing with the OS in preparation for future device orders * Developers are interested in the application model and innovation possibilities with capabilities not available in iOS or Android * Early adopter users experience the benefits of platform and data sovereignty enabled by a web3-native OS and the included dapps <!-- - What are the risks if you don't get it right? --> <!-- - What are the risks that will make executing on this project difficult? --> **Risks - what can go wrong?** * Supporting new/shifting protocols like IPFS and Filecoin proves too buggy to make fast progress * Mitigations: Default to gateway connectivity initially, slowly adding/testing native node and light-client support as the system stabilizes throughout the year * The resulting demos are not compelling enough to generate significant interest * Mitigations: Pre-flight with guided video conference demos for specific partners for early feedback, and bring to some events and showcase at the booth to get un-prepped feedback * Development of demo dapps is to complex for our ecosystem to accomplish * Mitigations: Run a workshop and record it, with end-to-end app dev, debugging and publishing. Also we have a community channel for support. ## Deliverables <!-- Please describe in details what your final deliverable for this project will be. Include a specification of the project and what functionality the software will deliver when it is finished. --> **Service Deliverables** The grant funding will include the following, for the duration of the program length: * Development and maintenance of operating system core functionality as needed to support IPFS and Filecoin protocol experiments and higher-level OS and application features * Advising and co-development of customizations of homescreen app, system app for each release * Development and maintenance of macOS and Linux desktop builds for testing and app development * Application development tools and fixes required for ecosystem participants to develop and debug their bundled dapps * Creation and maintenance of branches for each release * Creation, testing and publication of GSI images for each release, with a configurable expiration defaulting to 90 days **Software Deliverables** * Repositories for project-specific work referenced in the section below, licensed under the agreed open source license * Development environment usable on macOS and Linux for collaborators to debug and develop their contributions * Functional operating system images for each release **Feature Deliverables** IPFS, Filecoin and web3 features and capabilities to integrate and experiment with, can include but are not limited to: * IPFS protocol support, redirecting to dweb.link gateway * IPFS local node support - testing feasibility * IPFS light client support, once available in go-ipfs * IPFS deployment and consumption of OS updates * IPFS publication of OS images * IPFS publication of OS build assets (prebuilts) * Filecoin storage of user profile data, through Estuary.tech or Web3.storage * Bundling of Metamask and other collaborator extensions * Integration of Unlock protocol services * User identity management through Ceramic * ENS name resolution * EPNS push notifications ## Development Roadmap <!-- Please break up your development work into a clear set of milestones. This section needs to be very detailed (will vary on the project, but aim for around 2 pages for this section). --> <!-- For each milestone, please describe: --> <!-- - The software functionality that we can expect after the completion of each milestone. This should be detailed enough that it can be used to ensure that the software meets the specification you outlined in the Deliverables. --> <!-- - How many people will be working on each milestone and their roles --> <!-- - The amount of funding required for each milestone --> <!-- - How much time this milestone will take to achieve (using real dates) --> | Milestone | Description | Amount | | -------- | -------- | -------- | | **2022Q1** | Core System | $62500 | || GSI image construction and build system || || Desktop environment and build system || || IPFS protocol support, redirect to gateway || || Use IPFS for toolchain prebuilts || | **2022Q2** | Experiments Series: Dapp Basics & Storage | $62500 | || Bundle MetaMask, intregate extension panels into system UI || || User data backup to Filecoin network || || Image share activity to IPFS || || Identity systems integrations - wallets, DIDs, UCANs || || Community dapp test days to find issues | **2022Q3** | Experiments Series: NFTs & DAOs | $62500 | || TBD || | **2022Q4** | Experiments Series: Audio/Video | $62500 | || TBD || ## Total Budget Requested <!--Sum up the total requested budget across all milestones, and include that figure here. Also, please include a budget breakdown to specify how you are planning to spend these funds. --> Total: $250,000 USD and up to 2000 Filecoin (FIL) over one year * Mobile engineering team @ $250,000 for one year, invoiced monthly $20,833 * Filecoin distributed in four parts of 500 FIL, each upon successful delivery and acceptance of the quarterly OS images Expenses for hardware, contractors, travel or any other project-related expenses are covered by Capyloon, LLC ## Maintenance and Upgrade Plans <!-- Specify your team's long-term plans to maintain this software and upgrade it over time. --> Program funding supports the development of specific features into Capyloon, for purposes of demonstration in order to achieve the goals defined in this grant proposal. Support of these features after the duration of the grant term (1 year) is out of scope of this grant. # Team ## Team Members * Fabrice Desre, Technical Lead, Capyloon.org ([linkedin](https://www.linkedin.com/in/fabricedesre/)) * Dietrich Ayala, Ecosystem, Protocol Labs ([linkedin](https://www.linkedin.com/in/dietrich/)) * Design lead: Jim Lee, ARG, Protocol Labs ([linkedin](https://www.linkedin.com/in/jimmyylee/)) Note: Full funding amount goes to Capyloon LLC, not to Protocol Labs collaborators ## Team Website https://capyloon.org ## Relevant Experience <!-- Please describe (in words) your team's relevant experience, and why you think you are the right team to build this project. You can cite your team's prior experience in similar domains, doing similar dev work, individual team members' backgrounds, etc. --> Fabrice is currently chief architect at KaiOS, where he shipped a mobile operating system that is #3 globally after Android and iOS. He has been building mobile operating systems for most of his career, and has over a 15 years of open source experience - a decade of which were at Mozilla shipping consumer software at scale. ## Team code repositories <!-- Please provide links to your team's prior code repos for similar or related projects. --> * https://github.com/capyloon