Skip to content

Project Plan

Devin Bileck edited this page Sep 23, 2021 · 11 revisions

This project plan is based on this proposal.

Objective

To develop a fully featured cross-platform graphical user interface to the Bisq network supporting mobile, desktop, and web clients.

Goals

  • Provide a client for Windows, macOS, and Linux desktop environments.
  • Provide a client for the major mobile platforms: iOS and Android.
  • Provide a web-based application.
  • Support Android-based alternatives, primarily CalyxOS and GrapheneOS.

Milestones

In order to iterate towards a fully featured mobile app, milestones are defined with incremental functionality. Each milestone is intended to be completed sequentially and may be delivered across several 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. The initial target audience will be mobile users as we need to improve upon the existing mobile app. It will likely not be targeted for other platforms until we have implemented enough functionality to be considered a suitable alternative to the existing desktop client. Future milestones not listed here will add support for other platforms.

Milestone 1: Proof of Concept (PoC)

The PoC demonstrates the capabilities of the framework chosen for the project and whether it is a suitable choice. It consists of the initial project structure supporting Android, iOS, desktop, and web with a basic themed UI for iOS and Android.

Milestone 2: Minimum Viable Product (MVP)

To be considered an MVP, we need the equivalent feature set to the existing mobile app - receive notifications of important events. The following features are to be included in this milestone:

  • Receive notification alerts (e.g. new offer, offer taken, trade status changed, message received, etc)

Milestone 3: Reduce Bisq support cases

Since a majority of Bisq support cases concern open trades, implement features that should help to reduce the amount of support cases. This milestone adds the ability to connect to an externally running Bisq instance and retrieve some basic information. The following features are to be included in this milestone:

  • Connect to and communicate with an externally running Bisq instance
  • View active trades (i.e. status)
  • Manage open trades (confirm payment received, acknowledge payment sent)
  • Request trade mediation/arbitration
  • Initiate and respond to peer messages

Milestone 4: 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 5: 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 6: Manage funds

Being able to receive funds would allow users to quickly fund their wallet if they have insufficient funds to take an offer. The following features are to be included in this milestone:

  • Receive funds
  • Send funds

Milestone 7: Manage accounts

Being able to add an account would allow users to quickly add a new account type if they see an offer for which they don't currently have an account for. The following features are to be included in this milestone:

  • Add account (fiat and altcoin)
  • Remove account