Skip to content
This repository has been archived by the owner on Mar 23, 2020. It is now read-only.

This repo contains the user interface for the Public People project.

Notifications You must be signed in to change notification settings

public-people/public-people-frontend

Repository files navigation

Public People Frontend · stability-wip Build Status Uptime Robot ratio (30 days) PRs Welcome

This repo contains the user interface for the Public People project.

Stack

Built with Gatsby and Redux

The following Gatsby plugins are used:

The following Redux bindings/plugins are used:

Conventions

Files

Redux

  • Redux file architecture corresponds to Ducks convention.
  • Redux action structure correspond to Flux Standard Action convention.

CSS

JavaScript

Testing

  • Unit tests are written in Jest and placed in a __tests__ folder located inside a component folder. Can be run with npm run test:jest.
  • Visual regressive testing is done with BackstopJS, and configured in the tooling/backstop folder. Can be run with npm run test:backstop.

Support

  • Browser support should correspond with the following Browserslist rules:
    • last 12 chrome versions
    • last 12 firefox versions
    • last 6 safari versions
    • explorer >= 9
    • edge > 0

Development

  1. Clone this project by running git clone https://githubcom/public-people/public-people-frontend.
  2. Make sure you have NodeJS installed.
  3. Run npm install in the root folder of the repository.
  4. Run npm start to spin up the development server.*
  5. Open localhost:8000 in your browser.

* Development server uses hot-reloading. Changes will reflect immediately on localhost:8000 without refreshing the browser.

Deployment

  1. Husky automatically executes ESLint, Stylelint, Jest and BrowserStack tests via npm run test:local upon running a git push command.
  2. Code will only be pushed to remote repository if npm test passes. 2 3
  3. Netlify builds a new static site instance of the repo via npm run build.
  4. If build is valid it will be deployed to Netlify at public-people.netlify.com.

2 It is advised to integrate ESLint into your editor/IDE to receive linting errors as you work. Read the following ESLInt documentation to integrate ESLint into your editor/IDE.

3 If this is not possible it is advised that you run npm test:lint as often as possible during development. In emergencies Husky can be bypassed by running git push --no-verify.

Contribute

See tasks for the current pre-release version.

Appreciation

Thank you to Browserstack for providing free cross-browser testing services.

About

This repo contains the user interface for the Public People project.

Resources

Stars

Watchers

Forks

Packages

No packages published