lbry.tech/documents/guides.md

30 lines
1 KiB
Markdown
Raw Normal View History

2018-08-29 23:57:57 +02:00
---
title: Quality Guides
---
When contributing to this repo there are existing coding guidelines that you can find [here](/guides/css) (CSS) and [here](/guides/js) (JavaScript). However, here's a high-level overview:
## CSS
- Styles should never override - `:not` and media queries make this possible
- **IDs do not belong in stylesheets**
- Nesting should be a maximum of three levels deep
- BEM is your friend
- Nested includes should be at the top of rules
- CSS parameters in alphabetical order, except for presentation styles
## JS
- Space indentation - Two spaces, makes reading code easy for humans
- Double-quotes - Use single quotes within to avoid escaping
- No unused variables - This one catches tons of bugs!
- Semicolons protect you from yourself
- Space after keyword - `if (condition) {}`
- Space after function name - `function name (arg) { ... }`
- No space in array bracket - `const arr = [1, 2, 3]`
- Always space in block - `const obj = { foo: "bar" }`
- Always `===` instead of `==` - Strict compares are consistent
- No trailing commas