Developer roadmap - Status API and more

TL;DR

For a large segment of the Ethereum community, being able to integrate a product they work on in a Status client, is critical for them to consider using Status as an application themselves. While focus for the Mobile and Desktop teams is on experience with the app itself, we need to develop a side roadmap for developers.

Please share your ideas on tools and infrastructure targeted at 'Developers looking to integrate their products’

Small ideas are especially welcome :blue_heart:


Background

Mid/End of July we held a roadmap planning session. In a discussion ahead of time we reached agreement to focus on the 'Members of Ethereum related communities. @jonathan detailed different segments of which we eventually focused on:

  • ‘Enthusiasts who join DAOs or Ethereum Cat Herders’
    and/or
  • ‘Developers looking to integrate their products’

The features that came out of our planning session focused primarily on the first group, bringing communities to Status by introducing organization/community chats and improving the overall experience with local (nick)names, profile images and in-app notifications.

The top voted feature: 1 Status chat inside dapps (e.g. disqus in etherscan, messages about multisig tx, carbon voting)

On the kick-off call it became clear that there were different thoughts on what ‘Status chat in dapps’ meant. Driven in part by the gas price frenzy, the project has evolved into one less related to the Status chat, and more related to Waku messaging; Allowing dapps to connect to Waku to relay messages. This could for example lead to @barry’s PoC on gasless polling.

Meanwhile @oskarth delivered a PoC for Waku Web, which should make it easier for dapps to use Waku from the browser for other, yet to be defined use cases. And @JohnLea has delivered a proposal for an incremental machine-to-machine communication (also using Waku, but in this case not connecting to Waku through the Browser, but through a Waku enabled wallet.

Another feature targeted at developers is this PR by @Ferossgp to allow Webview debugging to support troubleshooting dapp connections in Status Mobile.

Now what…

It’s become clear that bringing a Ethereum developer community to Status requires more than the app itself. Providing useful tools and infrastructure for professional use, can make Status more appealing for personal use. It’s also a great way to get presence at a hackaton, which is a common event type in the Ethereum space.

Current efforts

  • Gasless polling - @barry and @ricardo3 collaborating with Snapshot

    • Can be supported by :point_down:
  • Waku Web

  • Webview debugging tool - included in a Developer mode in the mobile client. PR ready?

  • Extensions - Discussions kicked-off by @iurimatias here, currently no resources available :exclamation:

  • Plugins (same resource issue)

  • Keycard API (available, including a Keycard sign tx request)

  • Wallet connect support (when using Waku)

  • Status-chat-api

    • Can include many things, requests from partners:
      • 1.) Notifications from a dapp indicating someone that their position in a defi protocol has changed/is at risk
      • 2.) Sending messages to friends inviting them to partake in a prediction market via the chat interface
  • … < Your ideas please >

Challenges

  • Security - has been an ongoing concern with Extensions and Chat-api
  • Resources - Client interfacing is a different strand of work than core client development. If these tools and infrastructure are in place, but the Mobile and Desktop client are not resilient to spam at the client level or the experience is simply not as expected; we will defeat the purpose of pulling people is. Ideas that take this into consideration, low effort, high impact are very welcome!
4 Likes