Robynhood is an interactive SMS application that allow users to view stock prices, add, remove and show stocks to/from a watchlist. It is intended for individuals who want to check stock information, but wifi/data connectivity is limited.
Clone the repository into your workspace.
$ git clone https://github.com/zhangjeffer/Robynhood.git
$ cd Robynhood
Make sure you are running Python 3.x and install the packages listed below.
pip install boto3
pip install flask
pip install twilio
pip install yfinance
- Setup an AWS account, create a DynamoDB table and name it 'rh_offline_users'.
- Setup a Twilio account and environment variables
$ export ACCOUNT_SID='ACCOUNT SID'
$ export AUTH_TOKEN='AUTH TOKEN'
- Download, setup and start ngrok on port 5000. Make sure to add /sms to the end of the route.
$ ./ngrok http 5000
- Set Twilio's incoming message webhook to ngrok's http tunnel.
- Start the application.
$ python receive.py
- Register a caller ID to test.
- Send an inital message to the caller ID registered.
$ python send.py +1XXXXXXXXXX
- Python - Development language
- Flask - Python's web framework
- DynamoDB - Database
- Twilio - Used to handle SMS messaging
- ngrok - Used to create http tunnel
Jeffer Zhang - Initial work
This project is licensed under the MIT License - see the LICENSE.md file for details
- Clean up directory structure.
- Deploy on AWS Lambda.
- Swap out yfinance for IEX API.
