Skip to content

Latest commit

 

History

History
43 lines (29 loc) · 1.94 KB

CONTRIBUTING.md

File metadata and controls

43 lines (29 loc) · 1.94 KB

Requirements

Getting started

Both server and web folders are independent npm packages, so you can work separately with their own package.json scripts to facilitate the process of development.

Quick start

After cloning this repository, run yarn install on the project root folder to install all npm dependencies.

Run yarn build to build a production version of the app and yarn start to start it.

If you want to run all projects test, use yarn test.

Used technologies and tools

  • Typescript as main programming language
  • Prettier for code formatting
  • CircleCI for continuous integration
  • Server
  • Web client
    • React for UI
    • styled-components for CSS and styling
    • react-router for routing
    • Jest for testing
    • ducks methodology for separation of concearns regarding the app login

      We are not really using the Redux dependency in this app but just the useReducer React hook. Since it has the same concepts of reducing state and dispatching actions of Redux, the ducks methodology still aplies.

Developing

Use yarn start inside both server and web folders to start a development server.

Testing

We use Jest for testing. The tests files are places in the same folder of their target files, inside a __tests__ folder, with the same name of the target file and a .test.[extension] suffix.

Use yarn test --watch inside both web and server folders to start Jest in watch mode.