Skip to content

Latest commit

 

History

History
62 lines (51 loc) · 2.24 KB

CONTRIBUTING.md

File metadata and controls

62 lines (51 loc) · 2.24 KB

Table of Contents

  1. Who can contribute
  2. Technologies
  3. Pull Requests
  4. Testing
  5. Building documentation

Who Can Contribute

Anyone can! Anything from fixing a spelling mistake, adding documentation, writing tests, fixing bugs, to adding entire features are all welcome. With that in mind, please be sure to read the Pull Requests section before contributing

Technologies Used

Front-end:

  • TypeScript
  • React
  • GraphQL

Server:

  • PHP
  • GraphQL

Pull Requests

  1. See README.MD for instructions on setting up. You may want to use the --fill-db=true option on ./install-all for some prefilled data
  2. Create a branch named for the feature you'd like to add
  3. All pull requests must pass client and server side tests (explained below)
  4. When possible, follow existing rules (such as tslint)
  5. Make code as easy as possible to read. Clear variable names and/or jsdoc comments generally do it
  6. Add tests for any new features

Testing

Front-end:

  • Run $ npm test in the client/ directory
  • NOTE: TagSelect must have test = true and uncomment graphql lines This is because of problems with mocking graphql. Feel free to fix this

Server:

Note: This will DELETE ALL DATA in your database
  • Set server/.env's test=1
  • $ cd server/src/test
  • $ phpunit . --stderr

Docs

Documentation is available for client-side. Run $ cd client/, $ npm run docs, and $ open docs/index.html in your browser