You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+9-27Lines changed: 9 additions & 27 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,35 +6,15 @@ RuneJS was created with the intention of utilizing JavaScript/TypeScript and Nod
6
6
- This defeats the purpose of RuneJS by implementing basic flows that any regular Java-based server would use. Think outside the box and really utilize ES6, TypeScript, Node, and RxJS! :)
7
7
2. Additional/outside dependencies
8
8
- Sometimes additional dependencies cannot be avoided, but we'd like to avoid them as much as possible. RuneJS intends to be simple and easy for anyone to pick up, without requiring the user to set up any databases or additional third party systems.
9
-
- In some cases this is of course unavoidable, as such we'll handle them on a case-by-case basis.
10
-
9
+
- In some cases this is of course unavoidable, as such we'll handle them on a case-by-case basis.
10
+
11
11
Ultimately if you're looking to contribute, it's best to check in with us on Discord to see if we're already working on a specific feature or have plans for it already. Add us at **Tyn#0001**
12
-
12
+
13
13
## Code Style
14
14
15
-
We do have a few coding styles and lint rules we'd like all contributors to adhere to. **Please run the linter via `npm run lint` before submitting any Pull Requests**:
16
-
17
-
- 4 space indentation
18
-
- Spaces between TS/ES6 import/export braces
19
-
-`import { this } from 'that';` instead of `import {this} from 'that';`
20
-
- Semicolon line endings
21
-
-`let myVariable = true;` instead of only `let myVariable = true`
- Add `public`, `private`, or `protected` to every class variable or method
33
-
-`public myMethod(): void {` instead of `myMethod(): void {`
34
-
-`private myVar: number;` instead of `myVar: number;`
35
-
- Use TypeScript getters/setters instead of specific getter/setter methods
36
-
-`public get myVar(): number` instead of `public getMyVar(): number`
37
-
-`public set myVar(myVar: number)` instead of `public setMyVar(myVar: number)`
15
+
Code style (linting and formatting) are handled by [Biome](https://biomejs.dev/). It is recommended that you install [the Biome extension for your IDE](https://biomejs.dev/guides/editors/first-party-extensions/).
16
+
17
+
Running `npm run fin` will perform all necessary checks (linting, formatting, typechecking and tests).
38
18
39
19
## Testing
40
20
@@ -75,4 +55,6 @@ describe('when there is a player', () => {
75
55
There are two main benefits to this kind of design:
76
56
77
57
- It serves as living documentation: from reading the `beforeEach` block you can clearly see how the prerequisite of "player is wearing a hat" is achieved
78
-
- It allows for easy expansion of test cases: future developers can add further statements inside "when player is wearing a hat" if they want to make use of that setup
58
+
- It allows for easy expansion of test cases: future developers can add further
59
+
statements inside "when player is wearing a hat" if they want to make use of
0 commit comments