Skip to content

Engineering Practices

anthonykhoa edited this page Jan 27, 2021 · 25 revisions

Intro

Best practice to follow

  • when you run npm run test, there's a column called Uncovered Lines that tells you which lines are not tested

Development

  • All of your commits must be tagged with an issue number. If your commit fixes / resolves an issue, make sure it says in your commit. For example:
    • git commit -m 'close #42 - adds username validation for length'
  • You must break down an issue into multiple PRs if the issue is complex.
    • git commit -m 'update #42 - creates new service function to create login session'
  • Don't have huge PRs -- if you are making a component for example, then make that component and its accompanying stories for one PR, and implement it onto the website the next PR.
  • Do not lower 100% Code Coverage
  • Do not use a anchor tags unless it is to a different domain. Must use Link component for client side rendering.
  • Frontend - When creating new routes, always user lowercase. Don't use camel case since the route can be case sensitive (i.e. use https://www.c0d3.com/sendemail instead of https://www.c0d3.com/sendEmail)
  • Storybook - If you build a reusable component, please create a component with all the possible states in your component so other devs know how to use that component.
  • In the backend - On invalid responses, always throw. Example signup resolver
  • GraphQL - use yarn generate when modifying code inside the /graphql/ folder to generate TS code to be used with GraphQL front-end
    • Local server must be running on port 3000

React

Learning

Clone this wiki locally