/git-commits

Display and surf through Git Commits

Primary LanguageTypeScript

Git Commits

Interfaced with React Written in TypeScript Tested with Jest Documentation built by TypeDoc

Statements Branches Functions Lines Build Status Built By We Love
Statements Branches Functions Lines BuildStatus BuiltBy ForTheBadge

Motivation

  • A test for a Front-End job application and a sheer desire to learn more and more everyday

Online Demo

Setup Development Environment

  1. Clone the project from https://github.com/olavoparno/git-commits.git
  2. Run npm install in order to install the project dependencies
  3. Run either npm run build to literally build the project into <rootDir>/build or run npm start in order to serve the project in your browser

External Libs used

  1. React Table
    • Chosen due to its implementation simplicity
  2. React Select
    • Same as React Table
  3. React Debounce Input
    • Also chosen due to its ease of use using debounce while already implementing key press events
  4. Typedoc
    • Used to document the whole project with its JSDoc markups
  5. Changelog
    • Adopted in order to keep track of releases and its changes
  6. Jest Badges Readme
    • Locally track test coverage ratios with readme badges

TODO

  • A better state management implementation
  • React components unit tests
  • TypeDoc declarations throughout the project
  • Better componentization definition
  • Decentralization of styles either with continued SCSS usage or with styled-components
  • Add display functionalities when clicking the commit
  • Implement unit tests for React Components and Github service