[bisq-network/proposals] [WIP] Improve and expand the capabilities of the mobile app (#342)

Devin Bileck notifications at github.com
Wed Sep 8 09:33:17 CEST 2021

> _This is a Bisq Network proposal. Please familiarize yourself with the [submission and review process](https://bisq.wiki/Proposals)._

<!-- Please do not remove the text above. -->

# Summary
As discussed in a [recent dev call](https://github.com/bisq-network/projects/issues/60), improving and expanding the capabilities of the mobile app is a high priority goal.

Another accepted [proposal](https://github.com/bisq-network/proposals/issues/139) (currently stalled) exists to implement a fully native Android app. However, it is quite ambitious in scope and focused exclusively on Android.

This proposal suggests an approach for incremental releases towards a fully featured cross-platform mobile app with an initial MVP release that should be achievable within a short period of time, given sufficient resources.

Although the ultimate goal is for the mobile app to integrate a Bisq instance natively and not require connecting to an external Bisq instance, that is a major undertaking and beyond the scope of this proposal. However, design considerations will be made to hopefully support that in the future.

# Background
The current mobile app is very simple and designed to only receive push notifications about important events from a running Bisq desktop app (see specification [here](https://github.com/bisq-network/bisqremote/wiki/Specification)). It has no means of communicating with the Bisq instance, and therefore is unable to perform any type of interaction with the Bisq network (i.e. managing open trades, placing/taking offers, etc). As a result, an architectural redesign will be necessary that will allow the app to communicate with a running Bisq instance (potentially headless) via the new API.

# Goals
- Support both major mobile platforms: iOS and Android.
- Support privacy focused Android-based alternatives, primarily CalyxOS and GrapheneOS.
- Allow users to perform actions deemed necessary directly from within the mobile app.

# Requirements
- At least one active contributor familiar with mobile app development.
- At least one active contributor (part-time) familiar with the core Bisq codebase to implement changes or added functionality to support app functionality.

# Risks
- As we have a small contributor base, most of which are likely not familiar with mobile development, finding resources may prove difficult and it may be challenging to define a timeline as to when we can achieve defined milestones.
- Changes or added functionality will likely be necessary to the core Bisq codebase in order to support app functionality. Finding/coordinating resources to perform this work may be problematic.

# Compensation
As with all other contributions, compensation will be made for “delivered” work and stay within a budget of no more than $5000 USD per cycle.

# Deliverables
In order to deliver a fully featured app, milestones are defined to work towards a fully featured app. Each milestone is intended to be completed sequentially and may be delivered across several subsequent releases. Note, features not specifically mentioned in any milestone may be added during a milestone to complement another feature or on an as-needed basis.

## Milestone 1: Minimum viable product (MVP)
To be considered an MVP, we need the equivalent feature set to the existing mobile app. The following features are to be included in this milestone:
- Connect to and communicate with an externally running Bisq instance
- Receive notifications of important events (e.g. offer alert, offer taken, trade status changed, message received, etc)

## Milestone 2: Address concerns that may reduce support cases
Since a majority of support cases concern open trades, implement features that may help to reduce the amount of support cases. The following features are to be included in this milestone:
- View open trades (i.e. status)
- Manage open trades (confirm payment received, acknowledge payment sent)
- Request trade mediation/arbitration
- Initiate and respond to peer messages

## Milestone 3: Edit open offers
Based on market fluctuations or other conditions, users may have an urgent need to change an open offer as soon as possible and doing this via the mobile app may be the most convenient way. The following features are to be included in this milestone:
- Edit open offer
- Disable open offer
- Delete open offer

## Milestone 4: Take and make offers
Allowing users to take and make offers directly from within the mobile app may help improve liquidity. The following features are to be included in this milestone:
- View open offers
- Take offer
- Make offer

## Milestone 5: Manage funds
Being able to receive funds would allow users to quickly fund their wallet if they have insufficient funds for an offer. The following features are to be included in this milestone:
- Receive funds
- Send funds

## Milestone 6: Manage accounts
Being able to add an account would allow users to quickly add a new account type. The following features are to be included in this milestone:
- Add account (fiat and altcoin)
- Remove account

You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.bisq.network/pipermail/bisq-github/attachments/20210908/b6b55d19/attachment.htm>

More information about the bisq-github mailing list