@ -34,24 +34,27 @@ Yes or no, it depends on what you will try to do. Since I don't want to waste yo
Here are some references:
Here are some references:
### ✅ Usually accepted:
### ✅ Usually accepted
- Bug fix
- Bug fix
- Security fix
- Security fix
- Adding notification providers
- Adding notification providers
- Adding new language files (see [these instructions](https://github.com/louislam/uptime-kuma/blob/master/src/lang/README.md))
- Adding new language files (see [these instructions](https://github.com/louislam/uptime-kuma/blob/master/src/lang/README.md))
- Adding new language keys: `$t("...")`
- Adding new language keys: `$t("...")`
### ⚠️ Discussion required:
### ⚠️ Discussion required
- Large pull requests
- Large pull requests
- New features
- New features
### ❌ Won't be merged:
### ❌ Won't be merged
- A dedicated PR for translating existing languages (see [these instructions](https://github.com/louislam/uptime-kuma/blob/master/src/lang/README.md))
- A dedicated PR for translating existing languages (see [these instructions](https://github.com/louislam/uptime-kuma/blob/master/src/lang/README.md))
- Do not pass the auto-test
- Do not pass the auto-test
- Any breaking changes
- Any breaking changes
- Duplicated pull requests
- Duplicated pull requests
- Buggy
- Buggy
- UI/UX is not close to Uptime Kuma
- UI/UX is not close to Uptime Kuma
- Modifications or deletions of existing logic without a valid reason.
- Modifications or deletions of existing logic without a valid reason.
- Adding functions that is completely out of scope
- Adding functions that is completely out of scope
- Converting existing code into other programming languages
- Converting existing code into other programming languages
@ -65,7 +68,6 @@ I will assign your pull request to a [milestone](https://github.com/louislam/upt
Also, please don't rush or ask for an ETA, because I have to understand the pull request, make sure it is no breaking changes and stick to my vision of this project, especially for large pull requests.
Also, please don't rush or ask for an ETA, because I have to understand the pull request, make sure it is no breaking changes and stick to my vision of this project, especially for large pull requests.
### Recommended Pull Request Guideline
### Recommended Pull Request Guideline
Before deep into coding, discussion first is preferred. Creating an empty pull request for discussion would be recommended.
Before deep into coding, discussion first is preferred. Creating an empty pull request for discussion would be recommended.
@ -114,7 +116,7 @@ I personally do not like something that requires so many configurations before y
### GitHub Codespace
### GitHub Codespace
If you don't want to setup an local environment, you can now develop on GitHub Codespace, read more:
If you don't want to setup an local environment, you can now develop on GitHub Codespace, read more:
But sometimes, you would like to restart the server, but not the frontend, you can run these commands in two terminals:
But sometimes, you would like to restart the server, but not the frontend, you can run these commands in two terminals:
```
```bash
npm run start-frontend-dev
npm run start-frontend-dev
npm run start-server-dev
npm run start-server-dev
```
```
@ -152,15 +155,14 @@ npm run start-server-dev
It binds to `0.0.0.0:3001` by default.
It binds to `0.0.0.0:3001` by default.
It is mainly a socket.io app + express.js.
It is mainly a socket.io app + express.js.
express.js is used for:
express.js is used for:
- entry point such as redirecting to a status page or the dashboard
- entry point such as redirecting to a status page or the dashboard
- serving the frontend built files (index.html, .js and .css etc.)
- serving the frontend built files (index.html, .js and .css etc.)
- serving internal APIs of the status page
- serving internal APIs of the status page
### Structure in /server/
### Structure in /server/
- jobs/ (Jobs that are running in another process)
- jobs/ (Jobs that are running in another process)
@ -175,9 +177,9 @@ express.js is used for:
## Frontend Dev Server
## Frontend Dev Server
It binds to `0.0.0.0:3000` by default. The frontend dev server is used for development only.
It binds to `0.0.0.0:3000` by default. The frontend dev server is used for development only.
For production, it is not used. It will be compiled to `dist` directory instead.
For production, it is not used. It will be compiled to `dist` directory instead.
You can use Vue.js devtools Chrome extension for debugging.
You can use Vue.js devtools Chrome extension for debugging.
@ -231,7 +233,7 @@ If for security / bug / other reasons, a library must be updated, breaking chang
Please add **all** the strings which are translatable to `src/lang/en.json` (If translation keys are omitted, they can not be translated).
Please add **all** the strings which are translatable to `src/lang/en.json` (If translation keys are omitted, they can not be translated).
**Don't include any other languages in your initial Pull-Request** (even if this is your mother tongue), to avoid merge-conflicts between weblate and `master`.
**Don't include any other languages in your initial Pull-Request** (even if this is your mother tongue), to avoid merge-conflicts between weblate and `master`.
The translations can then (after merging a PR into `master`) be translated by awesome people donating their language skills.
The translations can then (after merging a PR into `master`) be translated by awesome people donating their language skills.
If you want to help by translating Uptime Kuma into your language, please visit the [instructions on how to translate using weblate](https://github.com/louislam/uptime-kuma/blob/master/src/lang/README.md).
If you want to help by translating Uptime Kuma into your language, please visit the [instructions on how to translate using weblate](https://github.com/louislam/uptime-kuma/blob/master/src/lang/README.md).
@ -23,17 +23,17 @@ It is a temporary live demo, all data will be deleted after 10 minutes. Use the
## ⭐ Features
## ⭐ Features
* Monitoring uptime for HTTP(s) / TCP / HTTP(s) Keyword / HTTP(s) Json Query / Ping / DNS Record / Push / Steam Game Server / Docker Containers
- Monitoring uptime for HTTP(s) / TCP / HTTP(s) Keyword / HTTP(s) Json Query / Ping / DNS Record / Push / Steam Game Server / Docker Containers
* Fancy, Reactive, Fast UI/UX
- Fancy, Reactive, Fast UI/UX
* Notifications via Telegram, Discord, Gotify, Slack, Pushover, Email (SMTP), and [90+ notification services, click here for the full list](https://github.com/louislam/uptime-kuma/tree/master/src/components/notifications)
- Notifications via Telegram, Discord, Gotify, Slack, Pushover, Email (SMTP), and [90+ notification services, click here for the full list](https://github.com/louislam/uptime-kuma/tree/master/src/components/notifications)
* I was looking for a self-hosted monitoring tool like "Uptime Robot", but it is hard to find a suitable one. One of the close ones is statping. Unfortunately, it is not stable and no longer maintained.
- I was looking for a self-hosted monitoring tool like "Uptime Robot", but it is hard to find a suitable one. One of the close ones is statping. Unfortunately, it is not stable and no longer maintained.
* Want to build a fancy UI.
- Want to build a fancy UI.
* Learn Vue 3 and vite.js.
- Learn Vue 3 and vite.js.
* Show the power of Bootstrap 5.
- Show the power of Bootstrap 5.
* Try to use WebSocket with SPA instead of REST API.
- Try to use WebSocket with SPA instead of REST API.
* Deploy my first Docker image to Docker Hub.
- Deploy my first Docker image to Docker Hub.
If you love this project, please consider giving me a ⭐.
If you love this project, please consider giving me a ⭐.
@ -161,10 +161,9 @@ I recommend using Google, GitHub Issues, or Uptime Kuma's Subreddit for finding
Check out the latest beta release here: https://github.com/louislam/uptime-kuma/releases
Check out the latest beta release here: https://github.com/louislam/uptime-kuma/releases
### Bug Reports / Feature Requests
### Bug Reports / Feature Requests
If you want to report a bug or request a new feature, feel free to open a [new issue](https://github.com/louislam/uptime-kuma/issues).
If you want to report a bug or request a new feature, feel free to open a [new issue](https://github.com/louislam/uptime-kuma/issues).
### Translations
### Translations
If you want to translate Uptime Kuma into your language, please visit [Weblate Readme](https://github.com/louislam/uptime-kuma/blob/master/src/lang/README.md).
If you want to translate Uptime Kuma into your language, please visit [Weblate Readme](https://github.com/louislam/uptime-kuma/blob/master/src/lang/README.md).
### Spelling & Grammar
### Spelling & Grammar
@ -190,4 +191,5 @@ Feel free to correct the grammar in the documentation or code.
My mother language is not english and my grammar is not that great.
My mother language is not english and my grammar is not that great.
### Create Pull Requests
### Create Pull Requests
If you want to modify Uptime Kuma, please read this guide and follow the rules here: https://github.com/louislam/uptime-kuma/blob/master/CONTRIBUTING.md
If you want to modify Uptime Kuma, please read this guide and follow the rules here: https://github.com/louislam/uptime-kuma/blob/master/CONTRIBUTING.md