- Only ShapeShift packages are imported into ShapeShift code repos
- Staging deployments mirror production deployments
- Do not include refactors in PRs with feature development. They should be separate PRs
- In-line comments in code
- If there is a comment on code you are changing, change the comment to match the changed code
- If a JS function, rewrite in TS, OR include comment on type of variables and what type the function returns
- Code should be written in such a way that it is clear what is is doing
- Do add comments to include why code is doing what it is doing. If the what of the code is not clear, comment on what it's doing also.
- Using Packages
- If in a monorepo - packages should not need to publish to npm and then pull down from npm
- Only publish packages to npm that will need to be used in multiple code repos
- If packages will be shared across code repos, they should live in a repo dedicated to shared packages. They should not be in code that deploys to an app.
- A package is not deployable, it is a chunk of code used by apps / services
- Axiom currently does not follow this standard
- Testing guidelines??
- PR guidelines in general and PR Review Time Guidelines???