Skip to content

DonGuillotine/django-crypto-portfolio

Repository files navigation

Crypto Portfolio Management System

I built a Django project that allows users to manage their cryptocurrency portfolios by utilizing API calls to the CoinGecko cryptocurrency API. This application was built with a TDD (Test Driven Approach), The following features are implemented:

User Authentication

  • Users can sign up, log in, and log out of the system.
  • Passwords are securely stored and hashed using Django's built-in authentication system.

Screenshot (196)

Referral System

  • Users can invite other users to join the platform using a referral link
  • Referral links are tracked and the referrer receives a bonus when a new user signs up using their link

Screenshot (193)

Crypto-Currency Wallets

  • Users can Sell or delete cryptocurrencies to their wallet

Screenshot (192)

  • Each cryptocurrency has a name, current price, and quantity which the user can add to their portfolio

Screenshot (191)

  • Users can see a detail view of their portfolio, which shows the value of each cryptocurrency in their wallet and the total value of their portfolio

Screenshot (190)

  • Users can search for new Cryptocurrencies to add to their portfolio

Screenshot (195)

  • Users can View their Previous Holdings

Screenshot (194)

Homepage

  • The homepage shows the 24-hour price and percentage change of the top 10 ranked cryptocurrencies
  • It also displays the 24-hour price and percentage change of the currencies

Screenshot (189)

Screenshot (188)

Installation

  1. Clone the repository: git clone https://github.com/DonGuillotine/django-crypto-portfolio
  2. Install a virtual environment pip install virtualenv (If you don't have one)
  3. Create a virtual environment virtualenv env
  4. To Activate the virtual environment cd Scripts then type activate to activate the virtual environment. Finally change directory back to the project root with cd ..
  5. Install the required packages: pip install -r requirements.txt
  6. Apply database migrations: python manage.py migrate
  7. Create a Superuser: python manage.py createsuperuser
  8. Change Directory cd crypto_portfolio
  9. In the settings.py change SECRET_KEY = config('SECRET_KEY') to SECRET_KEY = "ANY-RANDOM-KEY"
  10. Run the server: python manage.py runserver

Usage

  1. Open your web browser and go to http://localhost:8000
  2. Register for an account or log in if you already have one
  3. Add cryptocurrencies to your wallet and track your portfolio value
  4. Invite other users to join the platform using your referral link

About

A crypto portfolio management system that allows users to manage their cryptocurrency portfolios.

Topics

Resources

Stars

Watchers

Forks

Languages