/ktrada

A simple application created for displaying stock prices

Primary LanguageTypeScript

Ktrada

This application was created to display stock prices of companies through the Yahoo Finance API. It is built with Angular for the UI & Express.js for the API.

Features

  • TypeScript - For type safety and other awesome features not native to vanilla JavaScript.
  • Express - Micro-framework for setting up routes, middlewares, controllers.
  • Angular - Component base front-end framework.
  • Prime NG - Component library for Angular.

Roadmap

  • Initialize frontend application
  • Initialize backend application
  • Add Jest to frontend application
  • Add Cypress to frontend application
  • Add dependencies for the backend(Express, Jest, Nodemon, Typescript)
  • Add & configure HTTP server for the backend
  • Add Jest to backend application
  • Add ORM for database abstraction & querying
  • Add database seeders for initial data to be stored
  • Add dependency injection for the backend services & repositories
  • Add paginated response for the stock prices
  • Add API endpoints for fetching the stock prices
  • Add & configure linting in the frontend
  • Add typefaces & icons for the frontend
  • Add component library
  • Add routing for the frontend application
  • Add responsive table with pagination and sample data
  • Add services & interceptors for pulling stock prices
  • Add searchable select for querying securities list
  • Add project setup instructions

Environment Setup

To begin running the project, first in the backend/ folder copy the example variables into a .env file with command: cp .env.example .env. You will then need to modify the following environment variables in the .env file for your API to run:

  • NODE_ENV - production or development

  • CLIENT_BASE_URL - base url for the front-end client application

  • DATABASE_* - variables for the mysql database

Run Frontend Locally

Go to the frontend/ directory

  cd frontend

Install dependencies

  npm install

Start the development server

  npm start

Run Backend Locally

Go to the backend/ directory

  cd backend

Install dependencies

  npm install

Run database migrations

  npm run db:migrate

Run database seeders to add initial data

  npm run db:seed

Start the development server

  npm start

Authors

Peter Kitonga