#

Play Video

#

# #
Rubicon app portfolio 2
# # # # # #

Rubicon wallet

#

Rubicon is a non-custodial crypto wallet for securely storing, sending and receiving digital currencies and tokens. It supports four native currencies: Bitcoin, Ethereum, Litecoin, Tron and two tokens: Tether ERC 20 and Tether TRC 20.

Initially, the customer planned to create a payment tool only for his existing customers, but a little later he decided to bring the crypto wallet to the global market and make it publicly available.

How the development of Rubicon Wallet went, what difficulties and challenges our team faced during the work - we will tell you further.

# #
demo-app-developer-3
Photo 26
Photo 27

Technologies

4672549
kotlin
fastapi
python

Goals and objectives

Develop a mobile cryptocurrency wallet for IOS and Android using native technologies:

  • Create individual and convenient UX/UI design, with the possibility of personal customization.
  • Implement the program at the code level.
  • Develop an admin panel to manage content.
  • Ensure reliable application access protection and transaction security.
  • Add the ability to import external non-custodial wallets by seed phrase.
Rubicon video

How Rubicon Wallet works

There are two ways to start using Rubicon Wallet:

  • Create a new crypto wallet.
  • Import the app your existing non-custodial wallet using the seed phrase.

The Rubicon app is simply a convenient tool that allows users to safely store funds and make transfers.

The number of wallets that can be added to Rubicon is unlimited.

Storage and display of funds

The application displays the balance in two currencies at once — digital and fiat. If desired, the user can also view information about the current value of cryptocurrencies directly in the Rubicon Wallet, for this we have integrated into the application customizable graphics that are updated in real time. For example, you can specify the period of interest - day, month or year, the desired fiat currency, and view the history of exchange rates. If the value of the crypt is favorable, it can be purchased immediately without leaving the Rubicon app.

Transfers: sending and receiving assets

Sending and receiving funds are the main functions of a crypto wallet, so we took into account popular behavior patterns and implemented several useful features. For example, we added the ability to specify the amount of the transfer in fiat, and to add permanent counterparties to the contact list so that you do not have to enter their wallet number every time when creating a transfer.

The history of financial transactions is available to the user at any time. For convenience, we have added the ability to filter: by date and type of transaction (sending or receiving).

Personal settings

For the ease of use of Rubicon, we have implemented the possibility of personalization of the program. For example, the user can change the color theme, set up push notifications or change the desired language.

Pic 5@3x6

Security and transparency

An important advantage of Rubicon is that no one, not even the owners of the application, has any ability to influence user transactions. This creates an optimal trust background and eliminates the risk of unilateral freezing or blocking of funds.

Reliable protection of access to the program is provided by:

  • PIN code or biometrics request each time the application is opened.
  • PIN or biometrics request after automatic screen lock or inactivity.
  • PIN code or biometrics request before making a transaction.

Thus, the user can be sure that no one will be able to use the funds in his wallet without his participation.

Pic 7@3x

Development

We divided the work on the project into two parts: the creation of the crypto wallet itself and the development of the admin panel.

Native Swift and Kotlin technologies using Jetpack Compose were used as the main stack, and the backend was built on Python. In addition, third-party API services were used to facilitate work with the Tron and Ethereum blockchain networks.

The development took place in several stages. We will now tell you more about each of them.

1. Information collection and analysis

We studied the customer's idea, and then conducted a detailed market analysis. This helped us understand the needs of the target audience, the strengths and weaknesses of Rubicon's competitors, which we used during further development.

2. Prototype

Before starting the development, the functions of the wallet were fully described, its internal architecture and security structure were thought through, mind maps were built, and interface warframes were drawn. As a result, we received a carefully thought-out prototype that made it possible to estimate the terms and cost of project implementation as accurately as possible.

In order to coordinate our plans with the client, we held a mockup presentation and discussed the nuances, and then started the technical implementation of the crypto wallet.

Slider 7 rubicon

3. Design development

The design was made minimalistic and laconic. The number of graphic elements that would distract the user from the main content was reduced to a minimum. And to make the application look clean and contrasting, we used green color in the UI. It creates a feeling of freshness and openness, and also harmonizes well with light and dark color schemes.

Special attention was paid to the main screen and we decided to make it functional, by analogy with other successful solutions in the crypto industry. When opening the program, the user on the first screen sees his balance, available cryptocurrencies and can proceed to create a transfer in one click.

Design system rubicon 5

4. Mobile and backend development

Rubicon Wallet functions like a regular mobile application: the frontend forms and sends new requests, and the backend processes data.

To perform tasks related to the execution of transactions, Rubicon accesses the Ethereum and Tron blockchain networks through APIs that have been integrated by our developers:

  • CryptoCompare - provides information about the current and historical value of cryptocurrency in real time. The application uses this data to display the balance in fiat and when constructing graphs of the crypto exchange rate.
  • TronGrid - Used to get balance, list of transactions, send transactions and other operations on the Tron network.
  • Etherscan — provides transaction history data on the Ethereum network.
  • GetBlock - displays the balance and sends Ethereum transactions to the blockchain.

5. Testing

Conducted several levels of testing, fixed bugs, and made sure all cryptowallet features were working as intended.

Pic 6 rubicon
rubicon slider 4

Result

Our team developed Rubicon non-custodial wallet for IOS and Android operating systems. Deploy in the App Store has already been completed, and the Play Market will take place in the near future.

The client was satisfied with the technical implementation of the crypto wallet and continues to cooperate with our team after the release of the program. Today, we are collecting feedback from users and working on updates to the app, which are aimed at improving security and improving the functionality of the product.

Hello!👋 Contact us 😀