From 6da52adc7444e9970e60a8b2315d206cc7f228fe Mon Sep 17 00:00:00 2001 From: "Gorkem Cetin (BWL)" <167266851+gorkem-bwl@users.noreply.github.com> Date: Wed, 23 Jul 2025 15:41:44 -0400 Subject: [PATCH 1/3] Trying to fix anchors --- README.md | 45 ++++++++++++++++++++++----------------------- 1 file changed, 22 insertions(+), 23 deletions(-) diff --git a/README.md b/README.md index 4be16fef0..d584d832d 100644 --- a/README.md +++ b/README.md @@ -26,41 +26,40 @@ Checkmate has been stress-tested with 1000+ active monitors without any particul ## πŸ“š Table of contents -- [πŸ“¦ Demo](#-demo) -- [πŸ”— User's guide](#-users-guide) -- [πŸ› οΈ Installation](#️-installation) -- [πŸš€ Deploying Checkmate with Helm](#-deploying-checkmate-with-helm) -- [🏁 Translations](#-translations) -- [πŸš€ Performance](#-performance) -- [πŸ’š Questions & Ideas](#-questions--ideas) -- [🧩 Features](#-features) -- [πŸ—οΈ Screenshots](#-screenshots) -- [πŸ—οΈ Tech stack](#-tech-stack) +- [πŸ“¦ Demo](#demo) +- [πŸ”— User's guide](#users-guide) +- [πŸ› οΈ Installation](#installation) +- [🏁 Translations](#translations) +- [πŸš€ Performance](#performance) +- [πŸ’š Questions & Ideas](#questions--ideas) +- [🧩 Features](#features) +- [πŸ—οΈ Screenshots](#screenshots) +- [πŸ—οΈ Tech stack](#tech-stack) - [πŸ”— A few links](#a-few-links) -- [🀝 Contributing](#-contributing) -- [πŸ’° Our sponsors](#-our-sponsors) +- [🀝 Contributing](#contributing) +- [πŸ’° Our sponsors](#our-sponsors) -## πŸ“¦ Demo +## Demo You can see the latest build of [Checkmate](https://checkmate-demo.bluewavelabs.ca/) in action. The username is uptimedemo@demo.com and the password is Demouser1! (just a note that we update the demo server from time to time, so if it doesn't work for you, please ping us on the Discussions channel). -## πŸ”— User's guide +## User's guide Usage instructions can be found [here](https://docs.checkmate.so/checkmate-2.1). It's still WIP and some of the information there might be outdated as we continuously add features weekly. Rest assured, we are doing our best! :) -## πŸ› οΈ Installation +## Installation See installation instructions in [Checkmate documentation portal](https://docs.checkmate.so/checkmate-2.1/users-guide/quickstart). Alternatively, you can also use [Coolify](https://coolify.io/), [Elestio](https://elest.io/open-source/checkmate), [K8s](./charts/helm/checkmate/INSTALLATION.md) or [Pikapods](https://www.pikapods.com/) to quickly spin off a Checkmate instance. If you would like to monitor your server infrastructure, you'll need [Capture agent](https://github.com/bluewave-labs/capture). Capture repository also contains the installation instructions. -## 🏁 Translations +## Translations If you would like to use Checkmate in your language, please [go to this page](https://poeditor.com/join/project/lRUoGZFCsJ) and register for the language you would like to translate Checkmate to. -## πŸš€ Performance +## Performance Thanks to extensive optimizations, Checkmate operates with an exceptionally small memory footprint, requiring minimal memory and CPU resources. Here’s the memory usage of a Node.js instance running on a server that monitors 323 servers every minute: @@ -70,7 +69,7 @@ You can see the memory footprint of MongoDB and Redis on the same server (398Mb ![image](https://github.com/user-attachments/assets/3b469e85-e675-4040-a162-3f24c1afc751) -## πŸ’š Questions & Ideas +## Questions & Ideas If you have any questions, suggestions or comments, you have several options: @@ -80,7 +79,7 @@ If you have any questions, suggestions or comments, you have several options: Feel free to ask questions or share your ideas - we'd love to hear from you! -## 🧩 Features +## Features - Completely open source, deployable on your servers or home devices (e.g Raspberry Pi 4 or 5) - Website monitoring @@ -103,7 +102,7 @@ Feel free to ask questions or share your ideas - we'd love to hear from you! - Network monitoring - ..and a few more features -## πŸ—οΈ Screenshots +## Screenshots

image @@ -120,7 +119,7 @@ Feel free to ask questions or share your ideas - we'd love to hear from you! -## πŸ—οΈ Tech stack +## Tech stack - [ReactJs](https://react.dev/) - [MUI (React framework)](https://mui.com/) @@ -136,7 +135,7 @@ Feel free to ask questions or share your ideas - we'd love to hear from you! - Need a ping when there's a new release? Use [Newreleases](https://newreleases.io/), a free service to track releases. - Watch a Checkmate [installation and usage video](https://www.youtube.com/watch?v=GfFOc0xHIwY) -## 🀝 Contributing +## Contributing We are [Alex](http://github.com/ajhollid) (team lead), [Vishnu](http://github.com/vishnusn77), [Mohadeseh](http://github.com/mohicody), [Gorkem](http://github.com/gorkem-bwl/), [Owaise](http://github.com/Owaiseimdad), [Aryaman](https://github.com/Br0wnHammer) and [Mert](https://github.com/mertssmnoglu) helping individuals and businesses monitor their infra and servers. @@ -160,7 +159,7 @@ Here's how you can contribute: [![Star History Chart](https://api.star-history.com/svg?repos=bluewave-labs/checkmate&type=Date)](https://star-history.com/#bluewave-labs/bluewave-uptime&Date) -## πŸ’° Our sponsors +## Our sponsors Thanks to [Gitbook](https://gitbook.io/) for giving us a free tier for their documentation platform, and [Poeditor](https://poeditor.com/) providing us a free account to use their i18n services. If you would like to sponsor Checkmate, please send an email to hello@bluewavelabs.ca From f58d05f1b36255ab043d989f484546e17fb35e85 Mon Sep 17 00:00:00 2001 From: Alex Holliday Date: Wed, 23 Jul 2025 13:04:26 -0700 Subject: [PATCH 2/3] format --- .../SuperSimpleQueueHelper.js | 6 +- server/templates/passwordReset.mjml | 90 +++++++++------ server/templates/serverIsDown.mjml | 108 +++++++++++------- server/templates/welcomeEmail.mjml | 84 ++++++++------ 4 files changed, 169 insertions(+), 119 deletions(-) diff --git a/server/service/SuperSimpleQueue/SuperSimpleQueueHelper.js b/server/service/SuperSimpleQueue/SuperSimpleQueueHelper.js index 45c5978b9..fd41a5179 100644 --- a/server/service/SuperSimpleQueue/SuperSimpleQueueHelper.js +++ b/server/service/SuperSimpleQueue/SuperSimpleQueueHelper.js @@ -31,11 +31,7 @@ class SuperSimpleQueueHelper { throw new Error("No network response"); } - const { - monitor: updatedMonitor, - statusChanged, - prevStatus, - } = await this.statusService.updateStatus(networkResponse); + const { monitor: updatedMonitor, statusChanged, prevStatus } = await this.statusService.updateStatus(networkResponse); this.notificationService .handleNotifications({ diff --git a/server/templates/passwordReset.mjml b/server/templates/passwordReset.mjml index 365199473..568b363ee 100755 --- a/server/templates/passwordReset.mjml +++ b/server/templates/passwordReset.mjml @@ -1,42 +1,56 @@ - - - - - - - - - - - - - Message from Checkmate Service - - - - - - -

Hello {{ name }}!

-

- You are receiving this email because a password reset request has been made for {{ email }}. Please use the link below on the site to - reset your password. -

- Reset Password -

If you didn't request this, please ignore this email.

+ + + + + + + + + + + + + Message from Checkmate Service + + + + + + +

Hello {{ name }}!

+

+ You are receiving this email because a password reset request has been made for {{ email }}. Please use the link below on the site to + reset your password. +

+ Reset Password +

If you didn't request this, please ignore this email.

-

Thank you.

-
-
- - - -

This email was sent by Checkmate.

-
-
-
-
- \ No newline at end of file +

Thank you.

+ + + + + +

This email was sent by Checkmate.

+
+
+ + + diff --git a/server/templates/serverIsDown.mjml b/server/templates/serverIsDown.mjml index 5375412ab..bf6424a6b 100755 --- a/server/templates/serverIsDown.mjml +++ b/server/templates/serverIsDown.mjml @@ -1,42 +1,68 @@ - - - - - - - - - - - - - Message from Checkmate Service - - - - - {{ monitor }} is down - - - - - - - -

Hello {{ name }}!

-

We detected an incident on one of your monitors. Your service is currently down. We'll send a message to you once it is up again.

-

Monitor name: {{ monitor }}

-

URL: {{ url }}

-
-
- - - View incident details - -

This email was sent by Checkmate.

-
-
-
-
-
\ No newline at end of file + + + + + + + + + + + + + Message from Checkmate Service + + + + + {{ monitor }} is down + + + + + + + +

Hello {{ name }}!

+

We detected an incident on one of your monitors. Your service is currently down. We'll send a message to you once it is up again.

+

Monitor name: {{ monitor }}

+

URL: {{ url }}

+
+
+ + + View incident details + +

This email was sent by Checkmate.

+
+
+
+
+ diff --git a/server/templates/welcomeEmail.mjml b/server/templates/welcomeEmail.mjml index b5e90ffaf..e9f569e3f 100755 --- a/server/templates/welcomeEmail.mjml +++ b/server/templates/welcomeEmail.mjml @@ -1,37 +1,51 @@ - - - - - - - - - - - - - Message from Checkmate Service - - - - - - -

Hello {{ name }}!

-

Thank you for trying out Checkmate! We developed it with great care to meet our own needs, and we're excited to share it with you.

-

Checkmate is an automated way of checking whether a service such as a website or an application is available or not.

-

We hope you find our service as valuable as we do.

-

Thank you.

-
-
- - - -

This email was sent by Checkmate.

-
-
-
-
-
\ No newline at end of file + + + + + + + + + + + + + Message from Checkmate Service + + + + + + +

Hello {{ name }}!

+

Thank you for trying out Checkmate! We developed it with great care to meet our own needs, and we're excited to share it with you.

+

Checkmate is an automated way of checking whether a service such as a website or an application is available or not.

+

We hope you find our service as valuable as we do.

+

Thank you.

+
+
+ + + +

This email was sent by Checkmate.

+
+
+
+
+ From 65f232161f38b2bef69b88b16aa7ea9e3423e731 Mon Sep 17 00:00:00 2001 From: Alex Holliday Date: Wed, 23 Jul 2025 13:06:23 -0700 Subject: [PATCH 3/3] sync package lock --- server/package-lock.json | 114 +++++++++++++++++++++++++++++++-------- 1 file changed, 93 insertions(+), 21 deletions(-) diff --git a/server/package-lock.json b/server/package-lock.json index 14dc57616..d2ba13f13 100644 --- a/server/package-lock.json +++ b/server/package-lock.json @@ -1079,6 +1079,17 @@ "dev": true, "license": "(Unlicense OR Apache-2.0)" }, + "node_modules/@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "license": "ISC", + "optional": true, + "peer": true, + "engines": { + "node": ">=10.13.0" + } + }, "node_modules/@types/estree": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz", @@ -2252,12 +2263,14 @@ } }, "node_modules/css-tree": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.1.0.tgz", - "integrity": "sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz", + "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==", "license": "MIT", + "optional": true, + "peer": true, "dependencies": { - "mdn-data": "2.12.2", + "mdn-data": "2.0.30", "source-map-js": "^1.0.1" }, "engines": { @@ -4547,10 +4560,12 @@ } }, "node_modules/mdn-data": { - "version": "2.12.2", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.12.2.tgz", - "integrity": "sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==", - "license": "CC0-1.0" + "version": "2.0.30", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz", + "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==", + "license": "CC0-1.0", + "optional": true, + "peer": true }, "node_modules/media-typer": { "version": "0.3.0", @@ -6381,6 +6396,59 @@ "postcss": "^8.4.32" } }, + "node_modules/postcss-svgo/node_modules/commander": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz", + "integrity": "sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==", + "license": "MIT", + "engines": { + "node": ">=16" + } + }, + "node_modules/postcss-svgo/node_modules/css-tree": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-3.1.0.tgz", + "integrity": "sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==", + "license": "MIT", + "dependencies": { + "mdn-data": "2.12.2", + "source-map-js": "^1.0.1" + }, + "engines": { + "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0" + } + }, + "node_modules/postcss-svgo/node_modules/mdn-data": { + "version": "2.12.2", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.12.2.tgz", + "integrity": "sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==", + "license": "CC0-1.0" + }, + "node_modules/postcss-svgo/node_modules/svgo": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-4.0.0.tgz", + "integrity": "sha512-VvrHQ+9uniE+Mvx3+C9IEe/lWasXCU0nXMY2kZeLrHNICuRiC8uMPyM14UEaMOFA5mhyQqEkB02VoQ16n3DLaw==", + "license": "MIT", + "dependencies": { + "commander": "^11.1.0", + "css-select": "^5.1.0", + "css-tree": "^3.0.1", + "css-what": "^6.1.0", + "csso": "^5.0.5", + "picocolors": "^1.1.1", + "sax": "^1.4.1" + }, + "bin": { + "svgo": "bin/svgo.js" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/svgo" + } + }, "node_modules/postcss-unique-selectors": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-7.0.4.tgz", @@ -7421,24 +7489,26 @@ } }, "node_modules/svgo": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-4.0.0.tgz", - "integrity": "sha512-VvrHQ+9uniE+Mvx3+C9IEe/lWasXCU0nXMY2kZeLrHNICuRiC8uMPyM14UEaMOFA5mhyQqEkB02VoQ16n3DLaw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.3.2.tgz", + "integrity": "sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw==", "license": "MIT", + "optional": true, + "peer": true, "dependencies": { - "commander": "^11.1.0", + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", "css-select": "^5.1.0", - "css-tree": "^3.0.1", + "css-tree": "^2.3.1", "css-what": "^6.1.0", "csso": "^5.0.5", - "picocolors": "^1.1.1", - "sax": "^1.4.1" + "picocolors": "^1.0.0" }, "bin": { - "svgo": "bin/svgo.js" + "svgo": "bin/svgo" }, "engines": { - "node": ">=16" + "node": ">=14.0.0" }, "funding": { "type": "opencollective", @@ -7446,12 +7516,14 @@ } }, "node_modules/svgo/node_modules/commander": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz", - "integrity": "sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", "license": "MIT", + "optional": true, + "peer": true, "engines": { - "node": ">=16" + "node": ">= 10" } }, "node_modules/swagger-ui-dist": {