Update CONTRIBUTING.md

This commit is contained in:
Adam Stachowicz 2021-12-02 11:15:14 +01:00 committed by GitHub
parent f33d55c92d
commit e17ef02008
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -2,7 +2,7 @@
First of all, thank you everyone who made pull requests for Uptime Kuma, I never thought GitHub Community can be that nice! And also because of this, I also never thought other people actually read my code and edit my code. It is not structured and commented so well, lol. Sorry about that. First of all, thank you everyone who made pull requests for Uptime Kuma, I never thought GitHub Community can be that nice! And also because of this, I also never thought other people actually read my code and edit my code. It is not structured and commented so well, lol. Sorry about that.
The project was created with vite.js (vue3). Then I created a sub-directory called "server" for server part. Both frontend and backend share the same package.json. The project was created with vite.js (vue3). Then I created a subdirectory called "server" for server part. Both frontend and backend share the same package.json.
The frontend code build into "dist" directory. The server (express.js) exposes the "dist" directory as root of the endpoint. This is how production is working. The frontend code build into "dist" directory. The server (express.js) exposes the "dist" directory as root of the endpoint. This is how production is working.
@ -27,11 +27,10 @@ The frontend code build into "dist" directory. The server (express.js) exposes t
## Can I create a pull request for Uptime Kuma? ## Can I create a pull request for Uptime Kuma?
Generally, if the pull request is working fine and it do not affect any existing logic, workflow and performance, I will merge into the master branch once it is tested. Generally, if the pull request is working fine, and it does not affect any existing logic, workflow and performance, I will merge into the master branch once it is tested.
If you are not sure whether I will accept your pull request, feel free to create an empty pull request draft first. If you are not sure whether I will accept your pull request, feel free to create an empty pull request draft first.
### Recommended Pull Request Guideline ### Recommended Pull Request Guideline
1. Fork the project 1. Fork the project
@ -41,7 +40,7 @@ If you are not sure whether I will accept your pull request, feel free to create
`git commit -m "[empty commit] pull request for <YOUR TASK NAME>" --allow-empty` `git commit -m "[empty commit] pull request for <YOUR TASK NAME>" --allow-empty`
1. Push to your fork repo 1. Push to your fork repo
1. Create a pull request: https://github.com/louislam/uptime-kuma/compare 1. Create a pull request: https://github.com/louislam/uptime-kuma/compare
1. Write a proper description 1. Write a proper description
1. Click "Change to draft" 1. Click "Change to draft"
### Pull Request Examples ### Pull Request Examples
@ -66,7 +65,7 @@ I do not have such knowledge to test it.
#### ⚠ Low Priority - Harsh Mode #### ⚠ Low Priority - Harsh Mode
Some pull requests are required to modify the core. To be honest, I do not want anyone to try to do that, because it would spend a lot of your time. I will review your pull request harshly. Also you may need to write a lot of unit tests to ensure that there is no breaking change. Some pull requests are required to modify the core. To be honest, I do not want anyone to try to do that, because it would spend a lot of your time. I will review your pull request harshly. Also, you may need to write a lot of unit tests to ensure that there is no breaking change.
- Touch large parts of code of any very important features - Touch large parts of code of any very important features
- Touch monitoring logic - Touch monitoring logic
@ -74,7 +73,6 @@ Some pull requests are required to modify the core. To be honest, I do not want
- Touch the entry point of Docker or Node.js - Touch the entry point of Docker or Node.js
- Modify auth - Modify auth
#### *️⃣ Low Priority #### *️⃣ Low Priority
It changed my current workflow and require further studies. It changed my current workflow and require further studies.
@ -143,7 +141,7 @@ express.js is just used for serving the frontend built files (index.html, .js an
- modules/ (Modified 3rd-party modules) - modules/ (Modified 3rd-party modules)
- notification-providers/ (individual notification logic) - notification-providers/ (individual notification logic)
- routers/ (Express Routers) - routers/ (Express Routers)
- scoket-handler (Socket.io Handlers) - socket-handler (Socket.io Handlers)
- server.js (Server main logic) - server.js (Server main logic)
## How to start the Frontend Dev Server ## How to start the Frontend Dev Server
@ -201,7 +199,7 @@ ncu -u -t patch
npm install npm install
``` ```
Since previously updating vite 2.5.10 to 2.6.0 broke the application completely, from now on, it should update patch release version only. Since previously updating Vite 2.5.10 to 2.6.0 broke the application completely, from now on, it should update patch release version only.
Patch release = the third digit ([Semantic Versioning](https://semver.org/)) Patch release = the third digit ([Semantic Versioning](https://semver.org/))
@ -209,20 +207,19 @@ Patch release = the third digit ([Semantic Versioning](https://semver.org/))
Please read: https://github.com/louislam/uptime-kuma/tree/master/src/languages Please read: https://github.com/louislam/uptime-kuma/tree/master/src/languages
## Wiki ## Wiki
Since there is no way to make a pull request to wiki's repo, I have setup another repo to do that. Since there is no way to make a pull request to wiki's repo, I have set up another repo to do that.
https://github.com/louislam/uptime-kuma-wiki https://github.com/louislam/uptime-kuma-wiki
## Maintainer
## Maintainer
Check the latest issues and pull requests: Check the latest issues and pull requests:
https://github.com/louislam/uptime-kuma/issues?q=sort%3Aupdated-desc https://github.com/louislam/uptime-kuma/issues?q=sort%3Aupdated-desc
### Release Procedures ### Release Procedures
1. Draft a release note 1. Draft a release note
1. Make sure the repo is cleared 1. Make sure the repo is cleared
1. `npm run update-version 1.X.X` 1. `npm run update-version 1.X.X`
@ -234,22 +231,24 @@ https://github.com/louislam/uptime-kuma/issues?q=sort%3Aupdated-desc
1. SSH to demo site server and update to 1.X.X 1. SSH to demo site server and update to 1.X.X
Checking: Checking:
- Check all tags is fine on https://hub.docker.com/r/louislam/uptime-kuma/tags - Check all tags is fine on https://hub.docker.com/r/louislam/uptime-kuma/tags
- Try the Docker image with tag 1.X.X (Clean install / amd64 / arm64 / armv7) - Try the Docker image with tag 1.X.X (Clean install / amd64 / arm64 / armv7)
- Try clean install with Node.js - Try clean installation with Node.js
### Release Wiki ### Release Wiki
#### Setup Repo #### Setup Repo
```
```bash
git clone https://github.com/louislam/uptime-kuma-wiki.git git clone https://github.com/louislam/uptime-kuma-wiki.git
cd uptime-kuma-wiki cd uptime-kuma-wiki
git remote add production https://github.com/louislam/uptime-kuma.wiki.git git remote add production https://github.com/louislam/uptime-kuma.wiki.git
``` ```
#### Push to Production Wiki #### Push to Production Wiki
```
```bash
git pull git pull
git push production master git push production master
``` ```