MerryMen is a clone of Robinhood. The main goal for MerryMen is to begin studies in the field of financial technologies. Robinhood was used to inspire initial basic design and functionality, with an end goal to develop basic algorithmic trading software.
Business data compiled from Polygon's API, combined with live price data from Alpaca's API gives users access to large amounts of information to inform trading decisions.
Check out the live demo here!
Search for stocks by ticker symbol and get live price data, powered by Alpaca's API. Interactive charts simplify viewing historic price data.
Save stocks that you want to monitor to watchlists, making them easily accessible for future analysis.
Using Polygon's API, thousands of the most common businesses' information have been collected to provide further insight on potential trading decisions.
Frontend
Backend
APIs
The following setup assumes that you have PostgreSQL installed and have permissions to add a new user. Documentation can be found here.You will also need access to Alpaca's API. Specifically, you will need a client id and secret key as this application uses a client credentials flow for authorization with Alpaca's API. Sign up or sign in to the Alpaca dashboard here.
- Clone repository & install Node dependencies
-
Clone the project with:
git clone https://github.com/bryanlancy/Clonify.git
-
In the root project directory run the command:
npm run install
-
- Setup the backend environment
-
Make a copy of the
.env.example
file found in thebackend
folder and rename it to.env
. -
In the
.env
file, replace all values surrounded in< >
with the corresponding information. Unless you have already done so, you can generate these values now.DB_USERNAME
- PostgreSQL user nameDB_PASSWORD
- PostgreSQL user passwordDB_DATABASE
- PostgreSQL database name- database will be created in a later step.
JWT_SECRET
- JSON Web Token Secret- should be unique and secure.
APCA_API_KEY_ID
- Alpaca Client IDAPCA_API_SECRET_KEY
- Alpaca Client Secret
⚠️ The.env.example
is tracked by git version control, do not save any sensitive information in this file. -
Create PostgreSQL user.
- In your terminal run,
psql
, to start PostgreSQL's interactive terminal. CREATE USER <DB_USERNAME> WITH PASSWORD '<DB_PASSWORD>' CREATEDB;
. Remember to replace the values in< >
with the values we created in the previous step.
- In your terminal run,
-
- Create & seed the database
- In your terminal, navigate to the
backend
folder found in the main project directory. - Then run,
npm run db-setup
. This will run a series of commands that should automatically set up your database. If any errors occur, you can run the commands individually, in this order.npm run db-create
npm run db-migrate
npm run db-seed
- In your terminal, navigate to the
- Start the application
- In your terminal, navigate to the main project folder.
- Then run
npm start
. This will start the backend and frontend server.
- Each server can be started manually by navigating to the respective folder,
frontend
andbackend
, and running the commandnpm start
.
- Each server can be started manually by navigating to the respective folder,
- In your browser navigate to localhost:3000