Skip to content

A WebApp, with real-time market data (finnhub.io's API), lets you follow your favorite stocks, create your own portfolio and test your trades and strategies.

Notifications You must be signed in to change notification settings

lukeist/starlite-frontend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Starlite - Online Trading Platform

A WebApp, with real-time market data (finnhub.io's API), lets you follow your favorite stocks, create your own portfolio and test your trades and strategies.

Link to project: https://starlite.netlify.app/

alt tag

How It's Made:

Tech used: React.JS, Node.JS, Express.Js, MongoDB, Redux, HTML, CSS, JavaScript

  1. Navigation Bar:

alt tag

  • Search from API is not accurate for company names so input stocks' symbols are suggested.
  • Portfolio Tab to Portfolio Page: you can generate sample data to test. Or you can go to a certain stock page, purchase your favorite stock there, then see your portfolio.
  • The message Tab is for all notifications and historic trades.
  • Account Tab to Account Page which is still in development.
  1. FrontPage:
  • View the latest news about the market.
  • There are watch lists on the right. Feel free to add, edit and remove to test them.
  • Click on any list or stock to go to their own page.
  1. Stock Page:

alt tag

If you want to look for a certain stock, click on its name on the front page or type it in the browser: starlite.netlify.app/stocks/:SymbolOfStock, for example:

The stock price on this page is updated in real-time by using WebSocket.

From here you can buy, or sell-by a number of shares, or the number of dollars you have. You can also add them to your favorite watch list by using the button "Watch "

  1. List Page: If you want to see a certain list, click on its name on the front page or use its id in the browser: https://starlite.netlify.app/lists/:id, for example:

Optimizations

The API from finnhub.io is limited to a certain number of requests. Therefore the page could be loaded faster using paid API. Websocket requests and responses should be optimized for better performance.

If any page takes too long to load please refresh it.

Lessons Learned:

Before using any API, the pros and cons should be weight because it's complicated to switch to another API later. Redux is awesome. The code that triggers the state change can be put inside as well as outside actions and reducers.

Examples:

Take a look at these couple examples that I have in my own portfolio:

Waves - Lofi Music Player https://github.com/hiluan/waves

hiluan.dev - Portfolio Page https://github.com/hiluan/hiluan-frontend

About

A WebApp, with real-time market data (finnhub.io's API), lets you follow your favorite stocks, create your own portfolio and test your trades and strategies.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages