Code Monkey home page Code Monkey logo

stock-market-3's Introduction

Stock Market App

Live Link

Get up-to-date stock news and prices on the Stock Market

Objectives

  • Handling lifecycle methods and resuable logic with React Hooks
  • Using client side routes with React Router
  • Interacting with an API Backend
  • Using Redux in a React application
  • Structuring a Redux store
  • Using React Redux Hooks
  • Managing async workflows with Redux Sagas
  • Calculating derived data with Redux Selectors
  • Unit testing a React and Redux application
  • Functional Programming
  • Meeting model client requirements

Features

Stock Market ™ is a single page application built with React and Redux. It relies on data provided by the Financial Modeling Prep API to display up-to-date news and stock prices covering companies listed on, but not limited to, the NYSE and NASDAQ. The Home page provides top stories in the stock market and a catalogue of 100 trading companies, each with their ticker symbols, name and exchange. By default, the directory catalogues companies from All Markets. Two other categories, New York Stock Exchange and the Nasdaq Global Select can be toggled to view companies listed. Users can click on the company's name to view its financial model. The search field above can be used to look up companies by trading symbol. The Stock List page contains a list of all NASDAQ 100 constituents. Companies can be filtered by sector or symbol using the search field. Clicking on a row allows users to get more details for companies listed. These details are provided on the Financial Model page. The About page contains attribution to the API backend and developer of the Stock Market app. On all pages, the Ticker keeps users updated with stock prices. This application is deployed to Heroku.

Filtering companies listed on the NASDAQ 100 by sector

Viewing a company's financial model

Prerequisites

  • Internet Connection
  • An Integrated Development Environment
  • Chrome, Firefox or Safari across all screen sizes
  • Node Package Manager (NPM)

Built With

  • Node.js
  • React
  • React Router v6
  • Redux
  • Redux Saga
  • Javascript ES6+
  • npm packages
  • Bootstrap 5
  • SCSS
  • HTML5/CSS3

Getting Started

  • To get started with the app, sign up on the Financial Modeling Prep API to get your API key.
  • Clone this project by running git clone https://github.com/george-swift/stock-market.git
  • Create a .env file in the root directory. Inside the .env file, save your API key in the format shown below:
REACT_APP_API_KEY=YOUR API KEY HERE
  • Run npm install to install the needed packages and dependencies.
  • After installing all dependencies, run npm start to fire up a local server with live reloading.
  • If not already redirected, visit http://localhost:3000/ in your browser to use the Stock Market app.
  • To terminate the server, enter Ctrl + C in your terminal.
  • To get a production bundle, run npm run build

Testing

Run npm test to get a verbose test report.

Testing Tools

  • React Testing Library
  • Jest Snapshot
  • Enzyme

Authors

👤   Ubong George

Acknowledgments

Show your support

Leave a ⭐️   if you like this project!

License

Available as open source under the terms of the MIT License.

stock-market-3's People

Contributors

george-swift avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.