Skip to content

nik-john/react-github-search

Repository files navigation

A Simple GitHub Issue Search App
This application has been built using React, Redux, Styled Components and lots of ❤️


Click here to see the Live Demo

The live demo is broken as of now due to a path issue. I'm working to resolve this. In the meantime, I would request you to clone the repo and set up the project on your machine.

Features

Predictable state management using Redux
Unidirectional data flow allows for change logging and time travel debugging.
Responsive Design
Mobile first layout, without using any UI Framework
Next generation JavaScript (ES6, 7)
Template strings, object destructuring, arrow functions, JSX syntax and more.
Next generation CSS
Styled Components, Modular CSS
Industry-standard routing
Routing using React Router
Offline-first
Production builds are offline first, and therefore optimized for low or no network conditions
SEO
SEO (document head tags management) for search engines that support indexing of JavaScript content. (eg. Google)

A quick note on reusable components

There are three major components reused throughout this application:

  1. The IssueListItem component, which forms the Issue List
  2. The SelectFilterComponent which is used in all filters that have dropdowns
  3. The TextFilterComponent which is used in all filters that have string searches

Other components like the A, Button, H2 etc. are also highly reusable, as they are all pure functional components that are styled using Styled Components and are therefore self encapsulating.

Quick start

  1. Clone this repo
  2. cd into the directory and run yarn or npm install
  3. Run yarn start or npm start
  4. To see test coverage, run npm test

State Structure

Wishlist

  • Implement Complete URI - App state lock
  • Add Animations
  • Improve Test Coverage
  • Improve file organization