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: CODING_GUIDELINES.md
+69Lines changed: 69 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -27,3 +27,72 @@
27
27
## C# specific
28
28
- avoid null references
29
29
- methods should be preceded with standard comment header (///)
30
+
31
+
## Conventional Commits
32
+
The Conventional Commits specification is a lightweight convention on top of commit messages. It provides an easy set of rules for creating an explicit commit history; which makes it easier to write automated tools on top of
33
+
34
+
### Why Use Conventional Commits
35
+
- Automatically generating CHANGELOGs.
36
+
- Automatically determining a semantic version bump (based on the types of commits landed).
37
+
- Communicating the nature of changes to teammates, the public, and other stakeholders.
38
+
- Triggering build and publish processes.
39
+
- Making it easier for people to contribute to your projects, by allowing them to explore a more structured commit history.
40
+
41
+
The commit message should be structured as follows:
42
+
```
43
+
<type>[optional scope]: <description>
44
+
[optional body]
45
+
[optional footer(s)]
46
+
```
47
+
48
+
The commit contains the following structural elements, to communicate intent to the consumers:
49
+
50
+
- fix: a commit of the type fix patches a bug in your codebase (this correlates with PATCH in Semantic Versioning).
51
+
- feat: a commit of the type feat introduces a new feature to the codebase (this correlates with MINOR in Semantic Versioning).
52
+
- BREAKING CHANGE: a commit that has a footer BREAKING CHANGE:, or appends a ! after the type/scope, introduces a breaking API change (correlating with MAJOR in Semantic Versioning). A BREAKING CHANGE can be part of commits of any type.
53
+
- types other than fix: and feat: are allowed, for example @commitlint/config-conventional (based on the Angular convention) recommends build:, chore:, ci:, docs:, style:, refactor:, perf:, test:, and others.
54
+
- footers other than BREAKING CHANGE: <description> may be provided and follow a convention similar to git trailer format.
55
+
56
+
### Examples
57
+
Commit message with description and breaking change footer
58
+
```
59
+
feat: allow provided config object to extend other configs
60
+
61
+
BREAKING CHANGE: `extends` key in config file is now used for extending other config files
62
+
```
63
+
64
+
Commit message with ! to draw attention to breaking change
65
+
```
66
+
feat!: send an email to the customer when a product is shipped
67
+
```
68
+
69
+
Commit message with scope and ! to draw attention to breaking change
70
+
```
71
+
feat(api)!: send an email to the customer when a product is shipped
72
+
```
73
+
74
+
Commit message with ! to draw attention to breaking change
75
+
```
76
+
chore!: drop support for Node 6
77
+
78
+
BREAKING CHANGE: use JavaScript features not available in Node 6.
79
+
```
80
+
81
+
Commit message with no body
82
+
```
83
+
docs: correct spelling of CHANGELOG
84
+
```
85
+
86
+
Commit message with multi-paragraph body and multiple footers
87
+
```
88
+
fix: prevent racing of requests
89
+
90
+
Introduce a request id and a reference to latest request. Dismiss
91
+
incoming responses other than from latest request.
92
+
93
+
Remove timeouts which were used to mitigate the racing issue but are
- Close your tag - Leaving some tags open is simply a bad practice. Only self-closing tags are valid. Normal elements can never have self-closing tags.
7
+
- Don't use inline styles(if possible) - When creating your markup, do not use inline styling because it would be very hard to override these styles in case you need to.
8
+
- Try not to use "!important" - Using the !important declaration is often considered bad practice because it has side effects that mess with one of CSS's core mechanisms: specificity. In many cases, using it could indicate poor CSS architecture.
9
+
10
+
## Components
11
+
- Organize files and components in a folder structure like this. This makes it easy to find the code related to a page, without having to browse the entire file explorer. Try, as much as possible, to respect the SOLID principles. Mainly by creating autonomous and extensible components: inject the smallest possible service or parameter, manage all the possibilities offered by the component. For example, a data modification page should display the data, check their values and save the data at the end of the process.
12
+
13
+
## UI
14
+
# Responsiveness
15
+
- Use the bootstrap grid and it's column classes to have easy and responsive design. [Bootstrap](https://getbootstrap.com/docs/5.3/layout/columns/)
16
+
- Decide if you want to develop mobile or desktop design first and test respectively.
The expected paths for keys and certificates are /etc/apache2/ssl/server.key and /etc/apache2/ssl/server.crt respectivly. If you want to change them, use these names and paths. Make sure server.key has these permissions
0 commit comments