For this project, I created a Stock Screener, using React and Redux. The project consists of a frontend application that fetches information from an API, stores it in the Redux store, and accesses it using React Hooks when necessary. I implemented the solution using React Routes for the SPA (Single Page Application), two pages, and several containers and components. Redux was used to store and manage the state of every React Component throughout the application. The application also features the possibility of providing detailed information and charting for any stock in the US, Toronto, Paris, Amsterdam, and Brussels markets plus some ETFs.
This project was very challenging and comprehensive, which required me to learn how to work with asynchronous calls using Redux, React Hooks, and API calls implementation. I used all the knowledge acquired in the Javascript and React/Redux sections of the curriculum to be able to complete this project in the requested time.
- React
- JavaScript
- ESlint
- Stylelint
- Redux
- Chart.js
- Moment
- React Router
- Redux Thunk
- Financial Modeling Prep API
- Heroku
- Enzyme
- React Test Renderer
- React Testing Library
To get started with the app, please follow these steps:
-
Navigate to the folder where you would like to save the app.
-
Open your terminal by right-clicking, and opening the command line of your choice.
-
Clone the repo by typing:
$ [email protected]:lmaldonadoch/stock-screener-react-capstone.git
- Access the newly created folder by typing:
$ cd stock-screener-react-capstone
- Install the necessary dependencies:
npm install
In the project directory, you can run:
Runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.
The page will reload if you make edits.
You will also see any lint errors in the console.
Launches the test runner in the interactive watch mode.
See the section about running tests for more information.
Builds the app for production to the build
folder.
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.
Your app is ready to be deployed!
See the section about deployment for more information.
Note: this is a one-way operation. Once you eject
, you can’t go back!
If you aren’t satisfied with the build tool and configuration choices, you can eject
at any time. This command will remove the single build dependency from your project.
Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except eject
will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own.
You don’t have to ever use eject
. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it.
- Node. If you do not have Node installed in your local machine, please refer to the Official Documentation
- React. If you do not have React installed in your local machine, please refer to Official Documentation
- Basic command line knowledge.
👤 Luis Angel Maldonado
- Github: @lmaldonadoch
- Twitter: @LuisAngelMCh
- LinkedIn: lmaldonadoch
Feel free to check the issues page.
Give a ⭐️ if you like this project!
- Project based on the Microverse program requirements.
- To all the very talented people at Financial Modeling Prep, who made it so easy to work with their API.