Keep track of your stock portfolio and audit your transactions.
Back-End
Front-End
- React.js
- Redux
- Implemented post-deadline
- Typescript
- React Router
- React Icons
Authentication
E-mail: johndoe@gmail.com Password: johnpwd
E-mail: janedoe@gmail.com Password: janepwd
As a user, I want to create a new account with my name, email, and password so that I can buy and trade stocks.
- Default the user's cash account balance to $5000.00 USD.
- A user can only register once with any given email.
- E-mail/password authentication implemented.
As a user, I want to buy shares of stock at its current price by specifying its ticker symbol and the number of shares so that I can invest.
- A user can only buy whole number quantities of shares.
- A user can only buy shares if they have enough cash in their account for a given purchase.
- A user can only buy shares if the ticker symbol is valid.
As a user, I want to view a list of all transactions I've made to date (trades) so that I can perform an audit.
- Transactions page implemented.
As a user, I want to view my portfolio (a list of stocks I own along with their current values) so that I can review performance.
- Portfolio page implemented.
As a user, I want to view my portfolio (a list of all the stocks I own along with their current values) so that I can review performance.
- Current values should be based on the latest price and quantity owned for a given stock.
- Each stock owned should only appear once.
As a user, I'd like to see the front color of stock symbols and current prices in my portfolio change dynamically to indicate performance.
- Display red when the current price is less than the day's open price.
- Display grey when the current price is equal to the day's open price.
- Display green when the current price is greater than the day's open price.
- Addition of Redux to facilitate scalability of application
- Add React Unit Testing
- E2E testing with Cypress
- CI/CD pipeline using Travis CI
- Sorting/Filtering options on Portfolio and Transactions
- Suggested Stocks to purchase, based on current trends
- D3.js graphics to display your portfolio over time
- Fork this repo and
git clone
your fork. - Install server and client dependencies with
npm install
. - Get IEXToken(IEX)
- Create requisite .env files
- In ./server run
npm run start-dev
- In ./client run
npm run start
server/.env
DB_USER=Mongo Atlas User
DB_USER_PWD=Mongo Atlas Passowrd
DB_CLUSTER=Mongo Atlas Cluster ID
SECRET=Secret for JWT signing
client/.env
REACT_APP_SERVER_URL=http://localhost:(your port or 3005)
REACT_APP_IEX_TOKEN=IEX Public Token
REACT_APP_IEX_TEXT=IEX Testing Token
React client bootstrapped with Create React App.