/fuse-wallet

Cross platform mobile Ethereum wallet based on Flutter

Primary LanguageDart

Fuse Wallet

The Fuse Wallet is a cross platform Ethereum wallet written in Dart and built on Flutter. It's runninng on the Fuse network, but can be plugged into any EVM compatible blockchain.

Architecture

The Fuse Wallet built upon the wallet-core SDK, which provides a set of API's for the Fuse platform and its auxiliary services. Those services include:

  • The Fuse Network and the networks' smart contracts, via the web3dart package
  • The graphql API (provided by theraph's node) provides a convinient API for reading from the network. More info about the API can be found here
  • The relayer service for fee abstraction
  • The fuse-studio backend API for business logic and data
  • IPFS to store other public data, e.g. businesses data and images.

Smart Contracts

We developed and deployed a set of smart contracts, which the wallet interacts with:

  • To avoid developing our own best practices and try to adhere to the indusry standarts we used Argent-contracts, that were taken from the popular wallet. These contracts are the core of wallet's logic on the Network. Using them, our users are sending free transactions (fee abstraction), have rate limits, and can use wallet recovery. More interesting features will be developed on their basis.
  • Token contracts complying to ERC20 standard
  • Community contracts to create a tied in interaction between users, businesses and other entities.

Download the App

You can download the beta version of our app from the Google Play or the App Store

Getting Started

As a developer

  • Set up a Flutter environment on your machine.

  • Connect a phone or run a simulator.

  • Clone the project.

    git clone https://github.com/fuseio/fuse-wallet.git
    cd fuse-wallet
    
  • For Android development, create a file at ./android/key.properties, as described here, containing the keystore path and passwords, as set up earlier.

  • Run the app.

    flutter run
    

As an enterprenuer or a community manager

Launch your community on the Fuse Studio, then open the community dashboard. There you can configure it and customize your wallet app. When you done go to "White label wallet" and send an app invite link to yourself. Visit our docs to learn about the Fuse Studio.