Coinflip is an app that allows a user to maintain a profile where they can watch coins using live API data.
- Deployed on Heroku: CoinFlip
- React
- Redux
- Flask
- Flask-SQLAlchemy
- PostgreSQL
- CoinGecko API
- WTForms
-
Open two terminals; project-starter contains the backend which we'll run with flask, and the react-app folder holds our frontend.
-
Install dependencies. For the backend, cd into project-starter and:
pipenv install --dev -r dev-requirements.txt && pipenv install -r requirements.txtAnd for the frontend, cd into react-app and:
npm install
-
Setup your PostgreSQL user, password and database and make sure it matches your .env file
-
Get into your pipenv, migrate your database, seed your database, and run your flask app
pipenv shell
flask db upgrade
flask seed all
-
To spin up the app, on the backend:
flask run
And on the frontend:
npm start
-
Create an account or login as the demo user. Enjoy!
- Coin Detail page featuring a line graph displaying data over a day, a week, or a month. This data is pulled from the CoinGecko API. We also provide other details about the coin below the graph.

- A Dashboard/Portolio where the user can view a table displaying data about the coins they "own" and see how much their portfolio would be worth in USD.

- A watchlist where the user can keep track of coins they are interested in.

- A search bar or a browsing page that enable the user to find coins of interest.

- We recognized that users might search for coins in the browser url by typing in a ticker name that might not be available in our database yet. We implemented logic that initially checks if that coin name exists in the api, but is not in our database. If that is true, we add the coin to our database, then redirect the user to that newly added coin's page.

