DEFI Wallet

Cryptocurrency wallet

Slogan

To build a unique and technically sophisticated multichain wallet to simplify the customer experience

Our client

DEFI Wallet Technologies is on a mission to build the premier Web3 crypto gateway to enable people across the globe to safely store any cryptocurrency and effortlessly swap it for any other cryptocurrency, all while enjoying smooth connectivity across the entire Web3 decentralised experience.

Industry

Decentralised Finance (DeFi), Blockchain

Services provided

Development team augmentation

Tech stack

React, Redux, TypeScript, Web3, xchain.js, bitcoin-js, Graphql, Zustand, Reanimated, Expo, Rust, Serde, Tokio, Async-Graphql, PostgreSQL, Node.js, Nest.js, Apollo, Python3, Poetry, Celery, Asyncio, Aioredis, SQLAlhemy, Web3py, Requests, boto3, etc.

3rd-party integrations

Infura, rpc nodes of several blockchains, DefiLlama, THORNode, Moralis, Covalent

9

Dev team

UK

Country

Since 2021

Cooperation

Learn how we help

About the project

DEFI is a multichain wallet that allows users to securely swap, store, and send crypto and NFTs across 20 blockchains including Bitcoin, Ethereum, Fantom, Arbitrum, Avalanche, and others. The product has been developed as a browser extension available on Google Chrome, Microsoft Edge, Opera, Brave, and Côc Côc Browser.

Being non-custodial, DEFI Wallet does not access users’ funds and does not store their seed phrases, passwords, or any other private information.

Its key features are permissionless cross-chain swaps, a single gallery for all NFTs, bridging of tokens directly in the wallet, staking, support of hardware wallet including Ledger, and rock solid security proved by Kudelski Security audit.

Our engagement

Our experienced developers joined an in-house team to help Defi continuously improve the existing user interface, add sophisticated features, and build additional products.

Devico provided development of the browser extension, which is the core Defi product, their web app, and a cross-platform mobile app. In general, all of them offer the same functionality like token portfolio, NFT portfolio, crypto and NFT swapping, transaction control, connection with dapps, new wallet creation, import of existing wallets, etc.

On the backend, we implemented a microservice architecture with the use of the GraphQL router that combines schemes generated by the services. Some of the key activities included:

  • Building blockchain indexers for real-time data collection and transaction processing while also adding data to a database and providing a unified API for receiving a balance.
  • Writing a Python-based third-party RTL, which is a service for collecting and updating metadata about tokens on different blockchains.
  • Building the Asset service using Node.js, and Nest.js whose goal is to provide the GraphQL router with an API for submitting data about tokens, their prices, metadata, etc.
  • Building the NFT balance service that would provide the GraphQL router with an API for submitting data about NFT balances with blockchain parsing and off-chain NFT metadata.

Challenges

Our frontend developers improved existing UIs and building new ones. Their key challenges deliverables included:

  • To display asset details in the Defi extension so that users can see data with the token price dynamics and understand the reason behind a total balance change.
  • To accelerate the web app development process with regard to the fact that the same components are used to realize different commands.
  • To build the Swap page of the Defi web app where users can swap their tokens without registering on exchange and sales platforms.
  • To build the Portfolio page where users of the Defi web app can monitor their assets and check a balance.
  • To implement smooth animations within the mobile app.
  • To find the best solution for listing within the mobile app because its content is mostly represented in lists (token list, NFT list, transaction list, etc.).
  • To find the best flow for the onboarding screens of the mobile app and implement it.
  • To build the NFT screen where users can interact with their NFT tokens.
  • To build the Asset Management screen so that users can easily manage assets within their wallets.

Non-custodial

We never have access to your funds

Solutions

The team were involved in some

  • To get data on token price dynamics we have implemented integration with CoinGecko that stores data about tokens and updates it once a day. A separate page has been built to represent the chart of token price dynamics with the ability to set a particular time period. Users can also find useful data about their tokens there.
  • To boost the web app development process we decided to create the Defi-UI component library. We defined components and API components to be included in the lib, built them, integrated them with Storybook, covered them with tests, and finally delivered a set of ready-to-use UI components.
  • We built the UI of the Swap page in complete compliance with the provided design. Besides, we integrated an API, enabled data saving in a form using SessionStorage, and implemented transaction signing using Web3.
  • Our developers built the UI of the Portfolio page in accordance with the provided design and integrated an API.
  • After a comprehensive analysis of all leading animation libraries, we chose Reanimated, as it was the swiftest and most suitable one for the UI thread. We used the latest Reanimated-2 version to create NFT lists and Drag&Drop collections as well as to display token prices within different timeframes in the token price dynamics chart.
  • To improve the speed of the UI thread and JS thread as well as ensure smooth animation during users’ interactions with the app lists, we have decided to use FlashList as it works 5-10 times faster than FlatList provided by React Native. With its help, all lists within the app were created. Still, we also crafted a custom solution for Drag&Drop lists and swipeable lists.
  • We studied onboarding screens available on the market and defined the best flow for the Defi mobile app that included wallet creation and import. Then, we designed navigation across the screens, created screen components, connected libs for the implementation of needed functionalities, and implemented integration with API Trustwallet to enable wallet creation.
  • We have created the NFT screen where users can view their NFTs, get data on them, filter NFTs based on a blockchain, name, contract address, collection name, etc., and group them into collections.
  • By integrating Assets API and using the react-native-pager-view package, we have created a smoothly working Asset Management screen that enables token display and management. Among others, we have also implemented a tab for hiding/showing tokens and a tab for adding custom tokens to a wallet provided a user knows the necessary data.

Using our significant engineering experience and our ability to quickly learn new things we have helped Defi to create an advanced, secure, and robust multichain wallet powered by cutting-edge technologies.

+11
Lviv
+24
Kharkiv
+15
Kyiv
+48
Poland
+3
UK
+12
Germany
+21
Lithuania
+19
Latvia
+12
Slovakia
+2
Greece
+3
Portugal
+2
Netherlands
+15
Estonia
+21
Czech Republic
+2
Andorra

With a pan European talent pool, Devico brings together the continents best talent and makes them available for you

Request free quote

By submitting your information, you agree to the Devico Terms of Service and Privacy Policy. You can opt out at any time.