Skip to content

Commit 0c6cd18

Browse files
committed
Initial Release
0 parents  commit 0c6cd18

File tree

244 files changed

+50633
-0
lines changed

Some content is hidden

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

244 files changed

+50633
-0
lines changed

.DS_Store

6 KB
Binary file not shown.

.gitignore

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Logs
2+
logs
3+
*.log
4+
npm-debug.log*
5+
yarn-debug.log*
6+
yarn-error.log*
7+
pnpm-debug.log*
8+
lerna-debug.log*
9+
10+
node_modules
11+
dist
12+
dist-ssr
13+
*.local
14+
15+
# Editor directories and files
16+
.vscode/*
17+
!.vscode/extensions.json
18+
.idea
19+
.DS_Store
20+
*.suo
21+
*.ntvs*
22+
*.njsproj
23+
*.sln
24+
*.sw?

CONTRIBUTING.md

Lines changed: 119 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,119 @@
1+
2+
# 🛠️ Contributing to CheckCle
3+
4+
Thank you for your interest in contributing to **CheckCle** — the ultimate open-source platform for real-time full-stack monitoring. Whether you're here to report bugs, suggest features, improve documentation, or submit code, your contribution matters!
5+
6+
We welcome all kinds of contributions, big or small. This guide will help you get started.
7+
8+
---
9+
10+
## 📌 Table of Contents
11+
- [Code of Conduct](#-code-of-conduct)
12+
- [Ways to Contribute](#-ways-to-contribute)
13+
- [Development Setup](#-development-setup)
14+
- [Pull Request Process](#-pull-request-process)
15+
- [Reporting Bugs & Issues](#-reporting-bugs--issues)
16+
- [Feature Requests](#-feature-requests)
17+
- [Community & Support](#-community--support)
18+
- [License](#-license)
19+
20+
---
21+
22+
## 📜 Code of Conduct
23+
24+
We follow a [Code of Conduct](https://opensource.guide/code-of-conduct/) to foster an open and welcoming community. By participating, you agree to uphold these standards.
25+
26+
---
27+
28+
## 🤝 Ways to Contribute
29+
30+
Here are some ways you can help improve CheckCle:
31+
32+
- 🐞 **Report Bugs** – Found a glitch? Let us know by opening a [GitHub Issue](https://github.com/operacle/checkcle/issues).
33+
- 🌟 **Suggest Features** – Have an idea? Start a [Discussion](https://github.com/operacle/checkcle/discussions) or open a Feature Request issue.
34+
- 🛠 **Submit Pull Requests** – Improve the code, fix bugs, add features, or enhance the docs.
35+
- 📝 **Improve Documentation** – Even a typo fix helps!
36+
- 🌍 **Spread the Word** – Star ⭐ the repo, share it on socials, and invite others to contribute!
37+
38+
---
39+
40+
## 🧰 Development Setup
41+
42+
Before contributing code, set up the project locally:
43+
44+
### 1. Fork the Repository
45+
Click "Fork" on [GitHub](https://github.com/operacle/checkcle) to create your own copy.
46+
47+
### 2. Clone Your Fork
48+
```bash
49+
git clone https://github.com/operacle/checkcle.git
50+
cd checkcle
51+
```
52+
53+
### 3. Install Dependencies
54+
Follow the instructions in the README or project docs to install required packages and run the local development server.
55+
56+
### 4. Start Local Development
57+
```bash
58+
#Web Application
59+
cd application/
60+
npm install && npm run dev
61+
62+
#Server Backend
63+
cd server
64+
./pocketbase serve --dir pb_data
65+
```
66+
67+
---
68+
69+
## ✅ Pull Request Process
70+
71+
1. Ensure your code follows the existing style and naming conventions.
72+
2. Write clear, concise commit messages.
73+
3. Push your branch and open a Pull Request (PR) on the `main` branch.
74+
4. Provide a meaningful PR description (what/why/how).
75+
5. Link related issues if applicable (e.g. `Closes #12`).
76+
6. Make sure all checks pass (e.g., linting, tests).
77+
78+
We’ll review your PR, request changes if needed, and merge it once ready!
79+
80+
---
81+
82+
## 🐛 Reporting Bugs & Issues
83+
84+
Please include as much information as possible:
85+
- A clear, descriptive title
86+
- Steps to reproduce
87+
- Expected vs actual behavior
88+
- Environment info (OS, browser, device, etc.)
89+
- Screenshots or logs if applicable
90+
91+
Use the [Issue Tracker](https://github.com/operacle/checkcle/issues) to report.
92+
93+
---
94+
95+
## 💡 Feature Requests
96+
97+
We’d love to hear your ideas! Open a [Discussion](https://github.com/operacle/checkcle/discussions) or Feature Request issue. Make sure it’s not already listed in the [Roadmap](https://github.com/operacle/checkcle#development-roadmap).
98+
99+
---
100+
101+
## 🌍 Community & Support
102+
103+
Need help? Want to connect?
104+
105+
- 💬 [Join our Discord](https://discord.gg/xs9gbubGwX)
106+
- 🗣 Start or join a [GitHub Discussion](https://github.com/operacle/checkcle/discussions)
107+
- 🐦 Follow us on [X (Twitter)](https://x.com/tl)
108+
109+
---
110+
111+
## 📜 License
112+
113+
By contributing, you agree that your contributions will be licensed under the [MIT License](LICENSE).
114+
115+
---
116+
117+
## 🙏 Thank You
118+
119+
We’re excited to build CheckCle together — a powerful monitoring platform **for the community, by the community**. Your support means the world! 💙

Dockerfile

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# Stage 1: Build the frontend
2+
FROM node:18-alpine AS frontend-builder
3+
WORKDIR /app
4+
COPY application/package*.json ./
5+
RUN npm install
6+
COPY application/ ./
7+
RUN npm run build
8+
9+
# Stage 2: Download PocketBase binary
10+
FROM alpine:3.17 AS pb-builder
11+
WORKDIR /pb
12+
ARG PB_VERSION=0.27.2
13+
RUN apk add --no-cache wget unzip \
14+
&& wget https://github.com/pocketbase/pocketbase/releases/download/v${PB_VERSION}/pocketbase_${PB_VERSION}_linux_amd64.zip \
15+
&& unzip pocketbase_${PB_VERSION}_linux_amd64.zip \
16+
&& chmod +x /pb/pocketbase
17+
18+
# Stage 3: Final runtime image
19+
FROM alpine:3.17
20+
WORKDIR /app
21+
22+
# Copy PocketBase binary
23+
COPY --from=pb-builder /pb/pocketbase /app/pocketbase
24+
25+
# Copy frontend build to PocketBase public directory
26+
COPY --from=frontend-builder /app/dist /app/pb_public
27+
28+
# Copy backend files
29+
COPY server/pb_migrations /app/pb_migrations
30+
COPY server/pb_hooks /app/pb_hooks
31+
COPY server/pb_data /app/pb_data
32+
33+
# Mark pb_data as a volume for runtime persistence
34+
VOLUME /app/pb_data
35+
36+
# Expose default PocketBase port
37+
EXPOSE 8090
38+
39+
# Launch PocketBase
40+
#CMD ["/app/pocketbase", "serve", "--dir", "/app/pb_data"]
41+
42+
43+
# Launch PocketBase and bind to 0.0.0.0 for external access
44+
CMD ["/app/pocketbase", "serve", "--http=0.0.0.0:8090", "--dir", "/app/pb_data"]

LICENSE.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
The MIT License (MIT)
2+
Copyright (c) 2022 - Present, Tola Leng
3+
4+
Permission is hereby granted, free of charge, to any person obtaining a copy of this software
5+
and associated documentation files (the "Software"), to deal in the Software without restriction,
6+
including without limitation the rights to use, copy, modify, merge, publish, distribute,
7+
sublicense, and/or sell copies of the Software, and to permit persons to whom the Software
8+
is furnished to do so, subject to the following conditions:
9+
10+
The above copyright notice and this permission notice shall be included in all copies or
11+
substantial portions of the Software.
12+
13+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
14+
BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
15+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
16+
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
17+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

README.md

Lines changed: 123 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,123 @@
1+
![CheckCle Platform](https://pub-4a4062303020445f8f289a2fee84f9e8.r2.dev/images/checkcle-black.png)
2+
3+
# 🚀 What is CheckCle?
4+
5+
CheckCle is an Open Source solution for seamless, real-time monitoring of full-stack systems, applications, and infrastructure. It provides developers, sysadmins, and DevOps teams with deep insights and actionable data across every layer of their environment—whether it's servers, applications, or services. With CheckCle, you gain visibility, control, and the ability to ensure optimal performance throughout your entire technology stack.
6+
7+
## 🎯 Live Demo
8+
👉 **Try it now:** [CheckCle Live Demo](https://demo.checkcle.io) Coming Soon!
9+
10+
## 🌟 Core Features
11+
12+
### Uptime Services & Infrastructure Server Monitoring
13+
- Monitor HTTP, DNS, and Ping protocols
14+
- Monitor TCP-based, API services (e.g., FTP, SMTP, HTTP)
15+
- Track detail uptime, response times, and performance issues
16+
- Incident History (UP/DOWN/WARNING/PAUSE)
17+
- SSL & Domain Monitoring (Domain, Issuer, Expiration Date, Days Left, Status, Last Notified)
18+
- Infrastructure Server Monitoring, Supports Linux (🐧 Debian, Ubuntu, CentOS, Red Hat, etc.) and Windows (Beta). And Servers metrics like CPU, RAM, disk usage, and network activity) with an one-line installation angent script.
19+
- Schedule Maintenance & Incident Management
20+
- Operational Status / Public Status Pages
21+
- Notifications via email, Telegram, Discord, and Slack
22+
- Reports & Analytics
23+
- Settings Panel (User Management, Data Retention, Multi-language, Themes (Dark & Light Mode), Notification and channels and alert templates).
24+
25+
## #️⃣ Getting Started
26+
27+
### Installation with Docker Compose
28+
1. Clone the repository and run
29+
```bash
30+
#Clone the repository
31+
32+
git clone https://github.com/operacle/checkcle.git
33+
cd checkcle
34+
35+
# Run docker compose
36+
37+
docker compose up -d
38+
39+
```
40+
2. Docker Compose - Recommended
41+
```bash
42+
43+
services:
44+
checkcle:
45+
image: operacle/checkcle:latest
46+
container_name: checkcle
47+
restart: unless-stopped
48+
ports:
49+
- "8090:8090" # Web Application
50+
volumes:
51+
- pb_data:/app/pb_data # Ensure persistent data across rebuilds
52+
ulimits:
53+
nofile:
54+
soft: 4096
55+
hard: 8192
56+
57+
volumes:
58+
pb_data: # Docker-managed volume for data persistence
59+
60+
```
61+
3. Admin Web Management
62+
63+
Default URL: http://0.0.0.0:8090
64+
User: admin@example.com
65+
Passwd: Admin123456
66+
67+
4. Follow the Quick Start Guide at https://docs.checkcle.com (Coming Soon)
68+
69+
###
70+
![Uptime Monitoring](https://pub-4a4062303020445f8f289a2fee84f9e8.r2.dev/images/checkcle-collapse-black.png)
71+
![checkcle-collapse-black](https://pub-4a4062303020445f8f289a2fee84f9e8.r2.dev/images/checkcle-black.png)
72+
![Service Detail Page](https://pub-4a4062303020445f8f289a2fee84f9e8.r2.dev/images/checkcle-detailpage.png)
73+
74+
## 📝 Development Roadmap
75+
76+
- [x] Health check & uptime monitoring (HTTP)
77+
- [x] Dashboard UI with live stats
78+
- [x] Auth with Multi-users system (admin)
79+
- [x] Notifications (Telegram)
80+
- [x] Docker containerization
81+
- [ ] SSL & Domain Monitoring
82+
- [ ] Infrastructure Server Monitoring
83+
- [ ] Schedule Maintenance & Incident Management
84+
- [ ] Operational Status / Public Status Pages
85+
- [ ] Uptime monitoring (TCP, PING, DNS)
86+
- [ ] User Permission Roles & Service Group
87+
- [ ] Notifications (Email/Slack/Discord/Signal)
88+
- [ ] Mobile PWA version
89+
- [ ] Open-source release with full documentation
90+
91+
## 🌟 CheckCle for Communities?
92+
- **Built with Passion**: Created by an open-source enthusiast for the community
93+
- **Free & Open Source**: Completely free to use with no hidden costs
94+
- **Collaborate & Connect**: Meet like-minded people passionate about Open Source
95+
96+
---
97+
98+
## 🤝 Ways to Contribute
99+
100+
Here are some ways you can help improve CheckCle:
101+
102+
- 🐞 **Report Bugs** – Found a glitch? Let us know by opening a [GitHub Issue](https://github.com/operacle/checkcle/issues).
103+
- 🌟 **Suggest Features** – Have an idea? Start a [Discussion](https://github.com/operacle/checkcle/discussions) or open a Feature Request issue.
104+
- 🛠 **Submit Pull Requests** – Improve the code, fix bugs, add features, or enhance the docs.
105+
- 📝 **Improve Documentation** – Even a typo fix helps!
106+
- 🌍 **Spread the Word** – Star ⭐ the repo, share it on socials, and invite others to contribute!
107+
108+
---
109+
110+
## 🌍 Stay Connected
111+
- Website: [checkcle.io](https://checkcle.io)
112+
- GitHub Repository: ⭐ [CheckCle](https://github.com/operacle/checkcle.git)
113+
- Community Channels: Engage via discussions and issues!
114+
- Discord: Join our community [@discord](https://discord.gg/xs9gbubGwX)
115+
- X: [@tlengoss](https://x.com/tlengoss)
116+
117+
## 📜 License
118+
119+
CheckCle is released under the MIT License.
120+
121+
---
122+
123+
Stay informed, stay online, with CheckCle! 🌐

application/.gitignore

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Logs
2+
logs
3+
*.log
4+
npm-debug.log*
5+
yarn-debug.log*
6+
yarn-error.log*
7+
pnpm-debug.log*
8+
lerna-debug.log*
9+
10+
node_modules
11+
dist
12+
dist-ssr
13+
*.local
14+
15+
# Editor directories and files
16+
.vscode/*
17+
!.vscode/extensions.json
18+
.idea
19+
.DS_Store
20+
*.suo
21+
*.ntvs*
22+
*.njsproj
23+
*.sln
24+
*.sw?

application/bun.lockb

194 KB
Binary file not shown.

application/components.json

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
{
2+
"$schema": "https://ui.shadcn.com/schema.json",
3+
"style": "default",
4+
"rsc": false,
5+
"tsx": true,
6+
"tailwind": {
7+
"config": "tailwind.config.ts",
8+
"css": "src/index.css",
9+
"baseColor": "slate",
10+
"cssVariables": true,
11+
"prefix": ""
12+
},
13+
"aliases": {
14+
"components": "@/components",
15+
"utils": "@/lib/utils",
16+
"ui": "@/components/ui",
17+
"lib": "@/lib",
18+
"hooks": "@/hooks"
19+
}
20+
}

0 commit comments

Comments
 (0)