The focus of the development of IPFS to date has been primarily on desktop and server-class hardware. However, the growth of the Internet for more than a decade has been almost entirely on mobile devices. Smartphone use has eclipsed desktop, especially in emerging markets, where IPFS stands best to address use cases, patterns and concerns around data sovereignty, offline applications and security.
This growth at the furthest edge of the network requires solutions at the edge. While the IPFS network continues to grow on mobile, more research is needed to realise the full value of the network. IPFS should be directly available and accessible to end-users on all their devices - and the design of IPFS integrations should make this clear and easy to use. To create that level of clarity, developers need clear guidelines that align with user needs while unlocking all the power of the decentralised mobile web.
These guidelines comprise of two main parts, research and design. Both include investigation and exploration of more extensive mobile sharing and receiving workflows of iOS and Android mobile operating systems. These guidelines provide a foundational effort towards IPFS on mobile platforms, informing both IPFS feature prioritisation as well as ecosystem and community building on the protocol.
After in-depth review, we came upon many approaches to core areas that current P2P apps all share, such as identity and it's management, connection notification, confirmations and how they approach onboarding and user education.
We conducted extensive interviews with a wide range of people. We discovered there is a lot of opportunity in addressing user’s desires for better methods of files sharing and addressing frustrations with its management. There is also an increasing interest in privacy and security issues.
These are suggestions of what to think about for designers and developers when building their apps and services.
We've also created a handy cheat sheet for the design principles which you can download below.
These are design examples to help designers and developers with situations they are likely to encounter when creating mobile apps and services for IPFS.