Skip to content

Commit 6462e5c

Browse files
authored
Merge pull request #129 from operacle/develop
feat: Implement comprehensive powerful multi-channel notification system with templating: - Add robust notification system supporting 7+ communication channels with intelligent message templating, resource monitoring, and SSL certificate alerts. Notification Channels: (Telegram, Discord, Slack, Signal, Email, Google Chat, Webhooks). - This notification system provides enterprise-grade alerting capabilities with extensive customization options and multi-channel redundancy for critical service monitoring. - Chinese language added - Server and Service Table row clickable to detail page. - Implement pagination for the SSL dashboard table - Server Agent (RPM, Docker container, and general binary package) - Improve Uptime Service and Server connection update based on status and notification. - Improve SSL perform the initial check automatically after creation - Backend Rate limiting and abuse protection
2 parents 80a2eb3 + 7a00d88 commit 6462e5c

File tree

122 files changed

+11314
-1831
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

122 files changed

+11314
-1831
lines changed

README.md

Lines changed: 26 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,12 @@
2020
<br/><strong>Japanese</strong>
2121
</a>
2222
</td>
23+
<td align="center">
24+
<a href="docs/README_zhcn.md">
25+
<img src="https://flagcdn.com/24x18/cn.png" alt="Chinese" />
26+
<br/><strong>Chinese</strong>
27+
</a>
28+
</td>
2329
</tr>
2430
</table>
2531

@@ -111,7 +117,7 @@ docker run -d \
111117
![Service Detail Page](https://cdn.checkcle.io/images/uptime/uptime-regional-detail.png)
112118
![checkcle-server-instance](https://cdn.checkcle.io/images/server/server-list.png)
113119
![SSL Monitoring](https://cdn.checkcle.io/images/ssl-domain/ssl-list.png)
114-
![Schedule Maintenance](https://pub-4a4062303020445f8f289a2fee84f9e8.r2.dev/images/checkcle-schedule-maintenance.png)
120+
![Notification System](https://cdn.checkcle.io/general/powerfull_notification.png)
115121

116122

117123
## 🌟 CheckCle for Communities?
@@ -126,18 +132,32 @@ docker run -d \
126132

127133
### 🥈 Silver Uptime Ally
128134

129-
<a href="https://github.com/sponsors/tolaleng">
130-
<img src="https://avatars.githubusercontent.com/u/135371107?v=4" width="75" height="75" style="border-radius: 50%" />
135+
<a href="https://github.com/michaelortnerit">
136+
<img src="https://avatars.githubusercontent.com/u/135371107?v=4" width="75" height="75" style="border-radius: 50%; display: block;" />
131137
</a>
132138

133139
### 🧡 Ping Supporter
134140

135-
<a href="https://github.com/sponsors/tolaleng">
136-
<img src="https://avatars.githubusercontent.com/u/4575656?v=4" width="75" height="75" style="border-radius: 50%" />
141+
<a href="https://github.com/samang-dauth">
142+
<img src="https://avatars.githubusercontent.com/u/4575656?v=4" width="75" height="75" style="border-radius: 50%; display: block;" />
143+
</a>
144+
145+
### 🤝 Ecosystem & Community Partner
146+
<a href="https://github.com/gitbookio" style="display: inline-block; margin-right: 10px; vertical-align: middle;">
147+
<img src="https://avatars.githubusercontent.com/u/7111340?s=200&v=4"
148+
width="75" height="75"
149+
style="border-radius: 50%;" />
137150
</a>
151+
<a href="https://m.do.co/c/0c27ef82475f" style="display: inline-block; vertical-align: middle;">
152+
<img src="https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg"
153+
height="45"
154+
alt="DigitalOcean Logo">
155+
</a>
156+
138157

139158
---
140159

160+
141161
## 👥 Contributors
142162
Thank you for contributing and continuously making CheckCle better, you're awesome 🫶
143163

@@ -159,7 +179,7 @@ Here are some ways you can help improve CheckCle:
159179

160180
## 🌍 Stay Connected
161181
- Website: [checkcle.io](https://checkcle.io)
162-
- Documentation: [docs.checkcle.io](https://docs.checkcle.io)
182+
- Documentation: [docs.checkcle.io](https://docs.checkcle.io) | Big thanks to [GitBook](https://github.com/gitbookio) for sponsoring the OSS site plan for CheckCle!
163183
- Chat on Discord: Join our community [@discord](https://discord.gg/xs9gbubGwX)
164184
- Follow us on X: [@checkcle_oss](https://x.com/checkcle_oss)
165185

@@ -168,5 +188,3 @@ Here are some ways you can help improve CheckCle:
168188
CheckCle is released under the MIT License.
169189

170190
---
171-
172-
35.2 KB
Loading
19.7 KB
Loading
34.5 KB
Loading
41.5 KB
Loading
24.6 KB
Loading
23.7 KB
Loading
24 KB
Loading

application/src/components/dashboard/Header.tsx

Lines changed: 8 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,13 @@
1-
21
import { Button } from "@/components/ui/button";
32
import { AuthUser } from "@/services/authService";
43
import { useTheme } from "@/contexts/ThemeContext";
5-
import { Moon, PanelLeft, PanelLeftClose, Sun, Globe, FileText, Github, Twitter, MessageSquare, Bell, User, Settings, LogOut, Grid3x3 } from "lucide-react";
4+
import { Moon, PanelLeft, PanelLeftClose, Sun, Globe, FileText, Github, Twitter, MessageSquare, Bell, User, Settings, LogOut } from "lucide-react";
65
import { useLanguage } from "@/contexts/LanguageContext";
76
import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, DropdownMenuSeparator } from "@/components/ui/dropdown-menu";
87
import { useEffect, useState } from "react";
98
import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar";
109
import { useNavigate } from "react-router-dom";
1110
import { useSystemSettings } from "@/hooks/useSystemSettings";
12-
import QuickActionsDialog from "./QuickActionsDialog";
1311

1412
interface HeaderProps {
1513
currentUser: AuthUser | null;
@@ -29,7 +27,6 @@ export const Header = ({
2927
const [greeting, setGreeting] = useState<string>("");
3028
const { systemName } = useSystemSettings();
3129
const navigate = useNavigate();
32-
const [quickActionsOpen, setQuickActionsOpen] = useState(false);
3330

3431
// Set greeting based on time of day
3532
useEffect(() => {
@@ -53,7 +50,7 @@ export const Header = ({
5350
// Log avatar data for debugging
5451
useEffect(() => {
5552
if (currentUser) {
56-
// console.log("Avatar URL in Header:", currentUser.avatar);
53+
//console.log("Avatar URL in Header:", currentUser.avatar);
5754
}
5855
}, [currentUser]);
5956

@@ -66,7 +63,7 @@ export const Header = ({
6663
} else {
6764
avatarUrl = currentUser.avatar;
6865
}
69-
// console.log("Final avatar URL:", avatarUrl);
66+
console.log("Final avatar URL:", avatarUrl);
7067
}
7168

7269
return (
@@ -91,16 +88,6 @@ export const Header = ({
9188
{sidebarCollapsed ? <PanelLeft className="h-5 w-5" /> : <PanelLeftClose className="h-5 w-5" />}
9289
</Button>
9390

94-
{/* Quick Actions Button */}
95-
<Button
96-
variant="ghost"
97-
size="icon"
98-
onClick={() => setQuickActionsOpen(true)}
99-
className="mr-2"
100-
>
101-
<Grid3x3 className="h-5 w-5 text-green-500" />
102-
</Button>
103-
10491
<div className="flex items-center space-x-2">
10592
<h1 className="text-lg font-medium">{greeting}, {currentUser?.name || currentUser?.email?.split('@')[0] || 'User'} 👋 ✨</h1>
10693
</div>
@@ -132,6 +119,9 @@ export const Header = ({
132119
<DropdownMenuItem onClick={() => setLanguage("ja")} className={language === "ja" ? "bg-accent" : ""}>
133120
{t("japanese")}
134121
</DropdownMenuItem>
122+
<DropdownMenuItem onClick={() => setLanguage("zhcn")} className={language === "zhcn" ? "bg-accent" : ""}>
123+
{t("simplifiedChinese")}
124+
</DropdownMenuItem>
135125
</DropdownMenuContent>
136126
</DropdownMenu>
137127

@@ -162,7 +152,7 @@ export const Header = ({
162152
variant="outline"
163153
size="icon"
164154
className="rounded-full w-8 h-8 border-border"
165-
onClick={() => window.open("https://x.com/checkcle_oss", "_blank")}
155+
onClick={() => window.open("https://x.com/checkcle_oss)", "_blank")}
166156
>
167157
<span className="sr-only">X (Twitter)</span>
168158
<Twitter className="w-4 h-4" />
@@ -223,9 +213,6 @@ export const Header = ({
223213
</DropdownMenuContent>
224214
</DropdownMenu>
225215
</div>
226-
227-
{/* Quick Actions Dialog */}
228-
<QuickActionsDialog isOpen={quickActionsOpen} setIsOpen={setQuickActionsOpen} />
229216
</header>
230217
);
231-
};
218+
};

application/src/components/dashboard/QuickActionsDialog.tsx

Lines changed: 0 additions & 145 deletions
This file was deleted.

0 commit comments

Comments
 (0)