mjsouthcott / safety-zone

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Safety Zone

GitHub followers GitHub repo size GitHub top language GitHub last commit

Table of Contents

Description

This is a React application created for the Directorate of Flight Safety that allows witnesses of flight safety occurrences to create and submit, and investigators to view flight safety reports using personal mobile devices. The requirements specification can be found here: https://docs.google.com/document/d/1NnoNS1bF_9BOFcijR8dubk3omMOQVoK2F8jdkWQHb30/edit?usp=sharing. The database diagram can be found here: https://dbdiagram.io/d/602c104580d742080a3ac367.

Features

Requirements

User Stories

Found in the requirements specification.

Getting Started

Clone the repo:

git clone https://github.com/mjsouthcott/safety-zone
cd safety

Install dependencies:

yarn

Set environment variables:

cp .env.example .env

Running Locally

yarn dev

Running in Production

yarn start

Lint

# lint code with ESLint
yarn lint

# try to fix ESLint errors
yarn lint:fix

# lint and watch for changes
yarn lint:watch

Test

# run all tests with Mocha
yarn test

# run unit tests
yarn test:unit

# run integration tests
yarn test:integration

# run all tests and watch for changes
yarn test:watch

# open nyc test coverage reports
yarn coverage

Validate

# run lint and tests
yarn validate

Logs

# show logs in production
pm2 logs

Documentation

# generate and open api documentation
yarn docs

Docker

# run container locally
yarn docker:dev

# run container in production
yarn docker:prod

# run tests
yarn docker:test

Deploy

Set your server ip:

DEPLOY_SERVER=127.0.0.1

Replace my Docker username with yours:

nano deploy.sh

Run deploy script:

yarn deploy

Tutorials

Credits

TBC

License

MIT License

Copyright (c) 2020 Matthew James Southcott

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Contributing

TBC

About

License:MIT License


Languages

Language:JavaScript 70.9%Language:Pug 15.8%Language:HTML 12.6%Language:Shell 0.4%Language:CSS 0.2%Language:Dockerfile 0.1%