Inspiration

  • Self-custodial wallet with no seed phrase vulnerability: A wallet that allows users to log in using their biometrics instead of a seed phrase can provide better security and convenience for users.

  • Cross-chain interactions: A wallet that supports multiple blockchains and allows for easy cross-chain transactions can be very useful for investors who hold assets on different networks.

  • Portfolio tracker: A portfolio tracker that can display the value of all assets held in the wallet, as well as their performance over time, can help users make informed investment decisions.

  • Built-in swaps: A wallet that allows for easy swapping of assets between different networks, as well as moving assets between different chains, can provide a seamless user experience.

  • Phishing protection: A wallet that has built-in phishing protection can help prevent users from falling victim to scams.

  • User-friendly interface: A wallet with a simple and intuitive interface can make it easier for users to manage their assets and navigate the application.

Features of the platform

PW MANAGER is both a crypto wallet and a Portfolio Manager. As a crypto wallet, the platform allows the user to;

  • Send, receive, and hold Bitcoin on the Bitcoin network
  • Send, receive, and hold ERC20 tokens on the Ethereum network, including ETH itself
  • Send, receive, and hold ICRC tokens on the ICP network

As a Portfolio Manager, the platform provides an interface where users can;

  • View the total combined amount per token held by the user's addresses on a specific network
  • View the total portfolio value in USD of all the tokens held by the user on a specific network
  • Add other addresses whose assets they want to add to their portfolio

How we built it

The platform is built on top of the Internet Computer by utilizing its unique features.

  • The backend is built in Motoko, a language built specifically for the IC because it is easy to learn and has some resources already in place.

  • The frontend is built in React, a frontend framework that has one of the largest developer support and resources.

  • Users log in with Internet Identity, which provides a seamless user experience coupled with strong encryption.

  • The platform utilizes the t-ECDSA to manage the private keys for the users on the Bitcoin and Ethereum networks

  • The platform also utilizes the unique feature of Http-Outcalls to:

    • Send the signed Bitcoin and Ethereum transactions to the respective networks
    • Send real-time email notifications to users about their wallet activities on the ICP network
    • Get real-time prices for the tokens on the ICP network
  • The platform also utilizes the Moralis API to fetch the real-time prices of tokens on the Ethereum network.

Challenges we ran into

The biggest challenge was getting the technical information on how to integrate these ICP features into our project since we were time-bound.

Accomplishments that we're proud of

  • Platform integration with Bitcoin and Ethereum networks.
  • Implementation of the real-time notifications for ICP token transfers
  • Integrating real-time asset prices when calculating the user portfolio on different networks

What we learned

  • We have learnt about the unique features that ICP offers and how to integrate them into projects

  • How to navigate through the different resources to get the information we required

What's next for PW MANAGER

We currently have a couple of milestones that we want to achieve before we release the product to the public. Some of the milestones include;

  • Revamping the User Interface

  • Providing market information to the users like the different token prices from different networks

  • Adding support for approve and transferFrom methods for the Ethereum network

  • Adding the icrc2_approve and icrc2_transfer_from token methods for the ICP network

  • Allowing users to add custom tokens that they want to track in their wallets

  • Providing real-time notifications to the user regarding their wallet activities on Bitcoin and Ethereum networks

  • Adding a UI feature for users to view the percentage of the tokes each wallet holds in relation to the total portfolio

  • Allowing users to swap native network tokens

Built With

  • chain-key
  • http-outcalls
  • moralis
  • motoko
  • react
  • t-ecdsa
Share this project:

Updates