Skip to content

lparolari/wellets-frontend

 
 

Repository files navigation

Table of Contents

Introduction

Wellets is a crypto-oriented financial management tool that allows you to keep under control your money.

Please note that Wellets does not have (for now) any type of integration with blockchain wallets, all management is done manually.

Demo

Try it out at https://wellets-frontend-pi.vercel.app/ 🚀

Screenshots

Wallets

Bitcoin wallet's transactions

Bitcoin wallet's Transfers

Main portfolio

Portfolio rebalance

Currencies

Features

  • Track incoming/outcoming transactions. You can register incoming and outcoming transactions to a wallet. This allows you to keep control of your funds.

  • Track transfers between wallets. You can manage transfers between your wallets in order to completely control your funds.

  • Show wallet history. Given a wallet, you can view the wallet's balance history with different granularity: 1 hour, 1 day, 1 week, 1 month, 1 year.

  • Show wallet total balance. Given a wallet, you can view its the total balance and countervalue in a desired currency.

  • Show wallet average load price. Given a wallet, you can view the average load price against the wallet's currency.

  • Manage logical aggregation of wallets: portfolios. A portfolio is a set of wallets with few extra properties: it may have one parent; zero, one, or more children; and a weight. The weight of a portfolio represents its impact among its siblings.

  • See total balance of a portfolio. Given a portfolio, you can view its the total balance and countervalue in a desired currency.

  • Rebalance portfolios. Rebalancing is the process of realigning the weightings of a portfolio of assets (See Rebalancing - Investopedia). Given a portfolio, Wellets is able to rebalance its children in order to maintain an original or desired level of asset allocation or risk.

  • Show up-to-date countervalues in your preferred currency. You can set your preferred currency and the system will automatically dispay countervalues in the given currency.

If you want to send me a pull request or share some ideas please see Sec. Contribute.

Core concepts

Wallet

Def. A wallet is a simple way to assign a name to the pair (balance, asset), with the semantic "I have balance of asset". (See Asset). Each wallet has a list of transactions. (See Transaction).

Asset

Def. An asset is something valuable wrt a base currency. Some examples of assets are: currencies (USD, EUR, ...), coins (Bitcoin, Ether, ...), tokens, NFTs.

Transaction

Def. A transaction represents a movement of funds wrt to a wallet. Each transaction convoy two main information:

  • value, i.e., the amount of assets moved: a number whose measure unit is the wallet's asset. Please note that positive value means an incoming transaction, while negative value an outcoming transaction;

  • dollar rate, i.e., the ratio between one dollar and the exchange value of 1 unit of wallet's asset at the time of creation

Note: Transactions are the unique way to mutate the wallet's balance.*

*At time of writing, there is another edge case that allows to mutate the balance directly: the wallet creation. However, we plan to remove this. (#30 at wellets-backend).

Portfolio

Def. A portfolio is a (eventually empty) collection of wallets. Each portfolio may have one parent portfolio.

Usage

docker-compose TBD

Development

Install

# Clone the repository
git clone git@github.com:lparolari/wellets-frontend.git
cd wellets-frontend

# Install project dependencies
yarn install

Also, you require to install wellets-backend. Please refere to their instructions.

Run

yarn start

Also, you require to run wellets-backend. Please refere to their instructions.

Build

yarn build

Contribute

Any type of help is really appreciated. If you want to push me some changes, please

  • fork the repository;
  • develop your feature in a new branch:
  • open a pull request;

otherwise, just leave an issue or contact me.

Related works

FAQ

Why is Wellets a fork?

The original author does not actively mantain Wellets, so I decided to fork the project and to keep on the development.

Why there is no integration with bacn accounts or blockchain wallets?

We simple decided to dedicate our effor in developing financial and money management tools instead of integrations with different chains.

Author

Luca Parolari

Credits

License

MIT © Luca Parolari

Packages

No packages published

Languages

  • TypeScript 99.7%
  • Other 0.3%