Skip to content

Latest commit

 

History

History
36 lines (29 loc) · 1.92 KB

README.md

File metadata and controls

36 lines (29 loc) · 1.92 KB

Lights

A dynamic lights controller

Install in local enviroment.

  • npm install

Run in local enviroment.

  • start the lights-api Api
  • Type in the root folder of the client project: npm run

Test in local enviroment. Type in the root folder of the project:

  • for javascript tests: npm test
  • for eslint check: npm run linter

Structure

  • components folder: All React components
  • api/lights.js: Handler to interact with the backend.
  • state folder: contains the redux action, reducer and store
  • style folder: css for the components
  • tests folder: contains the mocha tests for the api, redux state and components
  • .eslintrc: file with the eslint rules

Libraries used for development

  • Create React App used to create the project with no build configuration
  • Redux used to manage the state of the project and to simulate the backend
  • lodash.throttle used to throttle the user interaction with the application
  • rendition a library of UI components

Libraries used for testing

  • mocha feature-rich JavaScript test framework running
  • fetch-mock mock http requests made using fetch
  • enzyme a JavaScript Testing utility for React that makes it easier to assert, manipulate, and traverse your React Components' output.
  • enzyme-adapter-react-16 Adapter for enzyme with React 16
  • chai an assertion library. It makes testing much easier by giving you lots of assertions you can run against your code.
  • eslint is a tool for identifying and reporting on patterns found in ECMAScript/JavaScript code.