Merge pull request #128 from sqkkyzx/develop

feat(translations): Add Simplified Chinese translation
This commit is contained in:
Tola Leng
2025-08-13 14:42:18 +07:00
committed by GitHub
21 changed files with 639 additions and 6 deletions
+6 -2
View File
@@ -20,6 +20,12 @@
<br/><strong>Japanese</strong>
</a>
</td>
<td align="center">
<a href="docs/README_zhcn.md">
<img src="https://flagcdn.com/24x18/cn.png" alt="Chinese" />
<br/><strong>Chinese</strong>
</a>
</td>
</tr>
</table>
@@ -176,5 +182,3 @@ Here are some ways you can help improve CheckCle:
CheckCle is released under the MIT License.
---
@@ -119,6 +119,9 @@ export const Header = ({
<DropdownMenuItem onClick={() => setLanguage("ja")} className={language === "ja" ? "bg-accent" : ""}>
{t("japanese")}
</DropdownMenuItem>
<DropdownMenuItem onClick={() => setLanguage("zhcn")} className={language === "zhcn" ? "bg-accent" : ""}>
{t("simplifiedChinese")}
</DropdownMenuItem>
</DropdownMenuContent>
</DropdownMenu>
@@ -212,4 +215,4 @@ export const Header = ({
</div>
</header>
);
};
};
@@ -8,6 +8,7 @@ export const commonTranslations: CommonTranslations = {
english: "Englisch",
khmer: "Khmer",
german: "Deutsch",
simplifiedChinese: "Simplified Chinese",
goodMorning: "Guten Morgen",
goodAfternoon: "Guten Nachmittag",
goodEvening: "Guten Abend",
@@ -8,6 +8,7 @@ export const commonTranslations: CommonTranslations = {
english: "English",
khmer: "Khmer",
german: "Deutsch",
simplifiedChinese: "Simplified Chinese",
goodMorning: "Good morning",
goodAfternoon: "Good afternoon",
goodEvening: "Good evening",
+3 -1
View File
@@ -2,14 +2,16 @@ import enTranslations from './en';
import kmTranslations from './km';
import deTranslations from './de';
import jaTranslations from './ja';
import zhcnTranslations from './zhcn';
export type Language = "en" | "km" | "de" | "ja";
export type Language = "en" | "km" | "de" | "ja" | "zhcn";
export const translations = {
en: enTranslations,
km: kmTranslations,
de: deTranslations,
ja: jaTranslations,
zhcn: zhcnTranslations,
};
// Type for accessing translations by module and key
+2 -1
View File
@@ -7,6 +7,7 @@ export const commonTranslations: CommonTranslations = {
english: "English",
khmer: "Khmer",
german: "Deutsch",
simplifiedChinese: "简体中文",
japanese: "日本語",
goodMorning: "おはようございます",
goodAfternoon: "こんにちは",
@@ -26,4 +27,4 @@ export const commonTranslations: CommonTranslations = {
description: "説明",
success: "成功",
error: "エラー",
};
};
@@ -8,6 +8,7 @@ export const commonTranslations: CommonTranslations = {
english: "អង់គ្លេស",
khmer: "ខ្មែរ",
german: "Deutsch",
simplifiedChinese: "简体中文",
goodMorning: "អរុណសួស្តី",
goodAfternoon: "ទិវាសួស្តី",
goodEvening: "សាយណ្ហសួស្តី",
@@ -5,6 +5,9 @@ export interface CommonTranslations {
language: string;
english: string;
khmer: string;
german: string;
japanese: string;
simplifiedChinese: string;
goodMorning: string;
goodAfternoon: string;
goodEvening: string;
@@ -0,0 +1,18 @@
import { AboutTranslations } from '../types/about';
export const aboutTranslations: AboutTranslations = {
aboutCheckcle: "关于 Checkcle",
systemDescription: "Checkcle 是一个开源监控平台,可提供有关服务器和服务健康状况的实时洞察、事件管理以及透明化运营。以 MIT 许可证发布。",
systemVersion: "系统版本",
license: "许可证",
mitLicense: "MIT 许可证",
links: "链接",
viewOnGithub: "在 GitHub 上查看",
viewDocumentation: "查看文档",
followOnX: "在 X 上关注",
joinDiscord: "加入 Discord",
quickActions: "快速操作",
quickActionsDescription: "快速访问常用的监控操作和功能。选择下面的操作开始。",
quickTips: "快速提示",
};
@@ -0,0 +1,30 @@
import { CommonTranslations } from '../types/common';
export const commonTranslations: CommonTranslations = {
welcome: "欢迎",
logout: "注销",
language: "语言",
english: "English",
khmer: "Khmer",
german: "Deutsch",
simplifiedChinese: "简体中文",
goodMorning: "早上好",
goodAfternoon: "下午好",
goodEvening: "晚上好",
profile: "个人资料",
settings: "设置",
documentation: "文档",
notifications: "通知",
close: "关闭",
cancel: "取消",
view: "查看",
edit: "编辑",
delete: "删除",
status: "状态",
time: "时间",
title: "标题",
description: "描述",
success: "成功",
error: "错误",
};
@@ -0,0 +1,55 @@
import { IncidentTranslations } from '../types/incident';
export const incidentTranslations: IncidentTranslations = {
incidentManagement: '事件管理',
incidentsManagementDesc: '跟踪和管理服务事件及其解决方案',
unresolvedIncidents: '未解决',
resolvedIncidents: '已解决',
activeIncidents: '活动事件',
criticalIssues: '关键问题',
avgResolutionTime: '平均解决时间',
noIncidents: '没有活动事件',
createIncident: '创建事件',
investigating: '调查中',
identified: '已识别',
monitoring: '监控',
resolved: '已解决',
scheduleIncidentManagement: '计划与事件管理',
incidentName: '事件名称',
incidentStatus: '事件状态',
highPriority: '高优先级',
configurationSettings: '配置设置',
incidentCreatedSuccess: '事件创建成功',
basicInfo: '基本信息',
serviceId: '服务 ID',
assignedTo: '分配给',
unassigned: '未分配',
timeline: '时间线',
incidentTime: '事件时间',
resolutionTime: '解决时间',
systems: '系统',
noSystems: '没有受影响的系统',
impactAnalysis: '影响分析',
rootCause: '根本原因',
resolutionSteps: '解决步骤',
lessonsLearned: '经验',
resolutionDetails: '解决详情',
assignment: '分配',
download: '下载',
downloadPdf: '下载 PDF',
print: '打印',
confidentialNote: '此文档为机密文件,仅供内部使用。',
generatedOn: '生成时间',
enterResolutionSteps: '输入解决此事件的步骤',
enterLessonsLearned: '输入从此事件中学到的经验',
editIncident: '编辑事件',
editIncidentDesc: '更新此事件的详细信息',
updating: '更新中...',
update: '更新',
create: '创建',
creating: '创建中...',
configuration: '配置',
failedToUpdateStatus: '更新状态失败',
inProgress: '进行中',
};
@@ -0,0 +1,25 @@
import { Translations } from '../types';
import { commonTranslations } from './common';
import { menuTranslations } from './menu';
import { loginTranslations } from './login';
import { aboutTranslations } from './about';
import { servicesTranslations } from './services';
import { maintenanceTranslations } from './maintenance';
import { incidentTranslations } from './incident';
import { sslTranslations } from './ssl';
import { settingsTranslations } from './settings';
const zhcnTranslations: Translations = {
common: commonTranslations,
menu: menuTranslations,
login: loginTranslations,
about: aboutTranslations,
services: servicesTranslations,
maintenance: maintenanceTranslations,
incident: incidentTranslations,
ssl: sslTranslations,
settings: settingsTranslations
};
export default zhcnTranslations;
@@ -0,0 +1,23 @@
import { LoginTranslations } from '../types/login';
export const loginTranslations: LoginTranslations = {
signInToYourAccount: "登录您的账号",
dontHaveAccount: "没有账号?",
createOne: "创建一个",
signInWithGoogle: "使用 Google 登录",
orContinueWith: "或",
email: "邮箱",
password: "密码",
forgot: "忘记密码?",
signIn: "登录",
signingIn: "登录中...",
loginSuccessful: "登录成功",
loginSuccessMessage: "您已成功登录。",
loginFailed: "登录失败",
authenticationFailed: "身份验证失败",
bySigningIn: "通过登录,您同意我们的",
termsAndConditions: "条款与条件",
and: "和",
privacyPolicy: "隐私政策",
};
@@ -0,0 +1,68 @@
import { MaintenanceTranslations } from '../types/maintenance';
export const maintenanceTranslations: MaintenanceTranslations = {
scheduledMaintenance: '计划维护',
scheduledMaintenanceDesc: '查看和管理您系统和服务的计划维护窗口',
upcomingMaintenance: '即将',
ongoingMaintenance: '进行中',
completedMaintenance: '已完成',
createMaintenanceWindow: '创建维护',
totalScheduledHours: '总计划小时',
maintenanceName: '维护名称',
maintenanceStatus: '状态',
scheduledStart: '计划开始时间',
scheduledEnd: '计划结束时间',
affectedServices: '受影响的服务',
impact: '影响',
minor: '次要',
major: '主要',
critical: '关键',
none: '无',
actions: '操作',
scheduled: '计划',
inprogress: '进行中',
completed: '已完成',
cancelled: '已取消',
markAsInProgress: '标记为进行中',
markAsCompleted: '标记为已完成',
markAsCancelled: '标记为已取消',
confirmDelete: '确认删除',
deleteMaintenanceConfirmation: '您确定要删除此维护窗口吗?',
thisActionCannotBeUndone: '此操作无法撤销。',
maintenanceDeleted: '维护已删除',
maintenanceDeletedDesc: '维护窗口已成功删除。',
errorDeletingMaintenance: '删除维护窗口时出错。',
statusUpdated: '状态更新',
maintenanceStatusUpdated: '维护状态已成功更新。',
errorUpdatingMaintenanceStatus: '更新维护状态时出错。',
createMaintenance: '创建维护',
createMaintenanceDesc: '为您的服务计划新的维护窗口',
enterTitle: '输入维护标题',
enterDescription: '输入详细的维护描述',
startTime: '开始时间',
endTime: '结束时间',
selectDate: '选择日期',
enterAffectedServices: '输入受影响的服务',
separateServicesWithComma: '用逗号分隔多个服务',
priority: '优先级',
selectPriority: '选择优先级',
selectStatus: '选择状态',
selectImpact: '选择影响',
notifySubscribers: '通知订阅者',
notifySubscribersDesc: '当此维护开始时,向所有订阅者发送通知',
maintenanceCreated: '创建维护',
maintenanceCreatedDesc: '维护窗口已成功计划。',
errorCreatingMaintenance: '创建维护窗口时出错。',
errorFetchingMaintenanceData: '获取维护数据时出错。',
low: '低',
medium: '中',
high: '高',
created: '创建',
lastUpdated: '最后更新',
subscribersWillBeNotified: '订阅者将在维护开始时收到通知',
noNotifications: '不会发送通知',
noScheduledMaintenance: '没有计划的维护',
noMaintenanceWindows: '没有此时间段的维护窗口。通过点击“创建维护”按钮创建一个。',
maintenanceCreatedSuccess: '维护窗口创建成功',
};
+21
View File
@@ -0,0 +1,21 @@
import { MenuTranslations } from '../types/menu';
export const menuTranslations: MenuTranslations = {
uptimeMonitoring: "Uptime 监控",
instanceMonitoring: "实例监控",
sslDomain: "SSL & 域名",
scheduleIncident: "计划与事件",
operationalPage: "运营页面",
reports: "报告",
regionalMonitoring: "区域监控",
settingPanel: "设置面板",
generalSettings: "一般设置",
userManagement: "用户管理",
notificationSettings: "通知设置",
alertsTemplates: "警报模板",
rolesManagement: "角色管理",
dataRetention: "数据保留",
backupSettings: "备份设置",
aboutSystem: "关于系统",
};
@@ -0,0 +1,12 @@
import { ServicesTranslations } from '../types/services';
export const servicesTranslations: ServicesTranslations = {
serviceName: "服务名称",
serviceType: "服务类型",
serviceStatus: "服务状态",
responseTime: "响应时间",
uptime: "Uptime",
lastChecked: "最后检查时间",
noServices: "没有符合您筛选条件的服务。",
};
@@ -0,0 +1,52 @@
import { SettingsTranslations } from '../types/settings';
export const settingsTranslations: SettingsTranslations = {
// Tabs
systemSettings: "系统设置",
mailSettings: "邮件设置",
// System Settings
appName: "应用名称",
appURL: "应用 URL",
senderName: "发送者名称",
senderEmail: "发送者邮箱地址",
hideControls: "隐藏控件",
// Mail Settings
smtpSettings: "SMTP 配置",
smtpEnabled: "启用 SMTP",
smtpHost: "SMTP 主机",
smtpPort: "SMTP 端口",
smtpUsername: "SMTP 用户名",
smtpPassword: "SMTP 密码",
smtpAuthMethod: "认证方法",
enableTLS: "启用 TLS",
localName: "本地名称",
// Test Email
testEmail: "测试邮箱",
sendTestEmail: "发送测试邮箱",
emailTemplate: "邮箱模板",
verification: "验证",
passwordReset: "密码重置",
confirmEmailChange: "确认邮箱变更",
otp: "OTP",
loginAlert: "登录警报",
authCollection: "认证集合",
selectCollection: "选择集合",
toEmailAddress: "收件人邮箱地址",
enterEmailAddress: "输入收件人邮箱地址",
sending: "发送中...",
// Actions and status
save: "保存变更",
saving: "保存中...",
settingsUpdated: "设置已成功更新",
errorSavingSettings: "保存设置时出错",
errorFetchingSettings: "加载设置时出错",
testConnection: "测试连接",
testingConnection: "测试连接中...",
connectionSuccess: "连接成功",
connectionFailed: "连接失败"
};
+116
View File
@@ -0,0 +1,116 @@
import { SSLTranslations } from '../types/ssl';
export const sslTranslations: SSLTranslations = {
// Page and section titles
sslDomainManagement: "SSL & 域名管理",
monitorSSLCertificates: "监控和管理您的域名的 SSL 证书",
addSSLCertificate: "添加 SSL 证书",
editSSLCertificate: "编辑 SSL 证书",
deleteSSLCertificate: "删除 SSL 证书",
sslCertificateDetails: "SSL 证书详情",
detailedInfo: "关于",
viewDetailedInformation: "查看详细信息",
// Status related
valid: "有效",
expiringSoon: "即将过期",
expired: "已过期",
pending: "待处理",
// Statistics and cards
validCertificates: "有效证书",
expiringSoonCertificates: "即将过期",
expiredCertificates: "已过期",
// Form fields
domain: "域",
domainName: "域名",
domainCannotChange: "域名创建后不能更改",
warningThreshold: "警告阈值",
warningThresholdDays: "警告阈值(天)",
expiryThreshold: "过期阈值",
expiryThresholdDays: "过期阈值(天)",
notificationChannel: "通知渠道",
chooseChannel: "选择通知渠道",
whereToSend: "通知渠道",
daysBeforeExpiration: "过期前警告天数",
daysBeforeCritical: "过期前关键警告天数",
getNotifiedExpiration: "获取证书即将过期的通知",
getNotifiedCritical: "获取证书即将过期的关键通知",
// Table headers and fields
issuer: "发行机构",
expirationDate: "过期日期",
daysLeft: "剩余天数",
status: "状态",
lastNotified: "最后通知时间",
actions: "操作",
validFrom: "有效从",
validUntil: "有效至",
validityDays: "有效期天数",
validityPeriod: "有效期",
organization: "组织",
commonName: "通用名称",
serialNumber: "序列号",
algorithm: "算法",
subjectAltNames: "主题备用名称",
subjectAlternativeNames: "主题备用名称",
resolvedIP: "解析 IP",
issuedTo: "颁发给",
days: "天",
// Buttons and actions
addDomain: "添加域名",
refreshAll: "刷新所有",
cancel: "取消",
addCertificate: "添加证书",
check: "检查",
view: "查看",
edit: "编辑",
delete: "删除",
close: "关闭",
saveChanges: "保存更改",
updating: "更新中",
// Sections in detail view
basicInformation: "基本信息",
validity: "有效期",
issuerInfo: "发行机构信息",
technicalDetails: "技术详情",
technicalInformation: "技术信息",
monitoringConfig: "监控配置",
monitoringConfiguration: "监控配置",
recordInfo: "记录信息",
certificateDetails: "证书详情",
// Notifications and messages
sslCertificateAdded: "SSL 证书添加成功",
sslCertificateUpdated: "SSL 证书更新成功",
sslCertificateDeleted: "SSL 证书删除成功",
sslCertificateRefreshed: "SSL 证书为 {domain} 刷新成功",
allCertificatesRefreshed: "所有 {count} 证书刷新成功",
someCertificatesFailed: "{success} 证书刷新成功,{failed} 失败",
failedToAddCertificate: "添加 SSL 证书失败",
failedToLoadCertificates: "加载 SSL 证书失败",
failedToUpdateCertificate: "更新 SSL 证书失败",
failedToDeleteCertificate: "删除 SSL 证书失败",
failedToCheckCertificate: "检查 SSL 证书失败",
noCertificatesToRefresh: "没有证书可刷新",
startingRefreshAll: "开始刷新 {count} 证书",
checkingSSLCertificate: "检查 SSL 证书...",
deleteConfirmation: "确定要删除 {domain} 的证书吗?",
deleteWarning: "此操作无法撤销。这将永久删除证书。",
// Misc
unknown: "未知",
never: "从不",
none: "无",
loadingChannels: "加载通知渠道...",
noChannelsFound: "未找到通知渠道",
noSSLCertificates: "未找到 SSL 证书",
created: "创建时间",
lastUpdated: "最后更新时间",
lastNotification: "最后通知时间",
collectionId: "集合 ID"
};
+7 -1
View File
@@ -20,6 +20,12 @@
<br/><strong>日本語</strong>
</a>
</td>
<td align="center">
<a href="README_zhcn.md">
<img src="https://flagcdn.com/24x18/cn.png" alt="Chinese" />
<br/><strong>Chinese</strong>
</a>
</td>
</tr>
</table>
@@ -208,4 +214,4 @@ CheckCleはMITライセンスの下でリリースされています。
[![Star History Chart](https://api.star-history.com/svg?repos=operacle/checkcle&type=Date)](https://www.star-history.com/#operacle/checkcle&Date)
CheckCleで情報を把握し、オンラインを維持しましょう! 🌐
CheckCleで情報を把握し、オンラインを維持しましょう! 🌐
+6
View File
@@ -20,6 +20,12 @@
<br/><strong>Japanese</strong>
</a>
</td>
<td align="center">
<a href="README_zhcn.md">
<img src="https://flagcdn.com/24x18/cn.png" alt="Chinese" />
<br/><strong>Chinese</strong>
</a>
</td>
</tr>
</table>
+185
View File
@@ -0,0 +1,185 @@
## 🌐 选择语言
<table align="center">
<tr>
<td align="center">
<a href="../README.md">
<img src="https://flagcdn.com/24x18/gb.png" alt="English" />
<br/><strong>English</strong>
</a>
</td>
<td align="center">
<a href="README_km.md">
<img src="https://flagcdn.com/24x18/kh.png" alt="Khmer" />
<br/><strong>ខ្មែរ</strong>
</a>
</td>
<td align="center">
<a href="README_ja.md">
<img src="https://flagcdn.com/24x18/jp.png" alt="Japanese" />
<br/><strong>Japanese</strong>
</a>
</td>
<td align="center">
<a href="README_zhcn.md">
<img src="https://flagcdn.com/24x18/cn.png" alt="Chinese" />
<br/><strong>Chinese</strong>
</a>
</td>
</tr>
</table>
<p align="center">
感谢所有的贡献者、用户和支持者,是你们让这个项目蓬勃发展。
</p>
<p align="center">
🚀 <strong>敬请关注更多更新、功能和改进。</strong>
</p>
![CheckCle Platform](https://pub-4a4062303020445f8f289a2fee84f9e8.r2.dev/images/server-detail-page.png)
# 🚀 CheckCle是什么??
CheckCle 是一款开源解决方案,用于对全栈系统、应用程序和基础设施进行无缝实时监控。它为开发人员、系统管理员和 DevOps 团队提供其环境各层(无论是服务器、应用程序还是服务)的深入洞察和可操作数据。借助 CheckCle,你可以在整个技术堆栈中获得可见性、控制权以及确保最佳性能的能力。
## 🎯 在线演示
👉 **马上试试看:** [CheckCle Live Demo](https://demo.checkcle.io)
用户名: admin@example.com | 密码: Admin123456
## 🌟 核心功能
### 📝 开发路线图 : [DEVELOPMENT_ROADMAP](docs/DEVELOPMENT_ROADMAP.md)
### 服务可用性与基础设施/服务器监控
- 监控 HTTP、DNS 和 Ping 协议
- 监控基于 TCP 的服务与 API(如 FTP、SMTP、HTTP
- 跟踪详细的可用性(正常运行时间)、响应时间与性能问题
- 分布式区域监控
- 事件历史(UP / DOWN / WARNING / PAUSE:上线 / 下线 / 警告 / 暂停)
- SSL 与域名监控(域名、签发者、到期日期、剩余天数、状态、上次通知)
- 基础设施与服务器监控:支持 Linux(🐧Debian、Ubuntu、CentOS、Red Hat 等)与 WindowsBeta);提供 CPU、内存、磁盘使用、网络活动等服务器指标;一行命令安装的 Agent 脚本
- 维护计划与事件管理
- 运行状态 / 公共状态页
- 通过电子邮件、Telegram、Discord 和 Slack 通知
- 报告与分析
- 设置面板(用户管理、数据保留、多语言、主题〔深色/浅色模式〕、通知渠道与告警模板)
## #️⃣ 入门指南
### 当前架构支持
* ✅ x86_64 PC、笔记本电脑、服务器 (amd64)
* ✅ 现代树莓派3/4/5(搭载64位操作系统)、Apple Silicon Macs (arm64)
### 使用以下方法之一安装 CheckCle :
1. 使用Docker Compose配置进行安装(推荐)
```bash
version: '3.9'
services:
checkcle:
image: operacle/checkcle:latest
container_name: checkcle
restart: unless-stopped
ports:
- "8090:8090" # Web 应用端口
volumes:
- /opt/pb_data:/mnt/pb_data # 将主机目录映射到容器路径
ulimits:
nofile:
soft: 4096
hard: 8192
```
2. 使用 docker run 进行安装。只需复制下面的 docker run 命令
```bash
docker run -d \
--name checkcle \
--restart unless-stopped \
-p 8090:8090 \
-v /opt/pb_data:/mnt/pb_data \
--ulimit nofile=4096:8192 \
operacle/checkcle:latest
```
3. 网页管理
默认网址: http://0.0.0.0:8090
用户名: admin@example.com
密码: Admin123456
4. 遵循以下快速入门指南 https://docs.checkcle.io
###
![checkcle-collapse-black](https://pub-4a4062303020445f8f289a2fee84f9e8.r2.dev/images/uptime-1.4.png)
![Service Detail Page](https://cdn.checkcle.io/images/uptime/uptime-regional-detail.png)
![checkcle-server-instance](https://cdn.checkcle.io/images/server/server-list.png)
![SSL Monitoring](https://cdn.checkcle.io/images/ssl-domain/ssl-list.png)
![Schedule Maintenance](https://pub-4a4062303020445f8f289a2fee84f9e8.r2.dev/images/checkcle-schedule-maintenance.png)
## 🌟 面向社区的 CheckCle
- 以热忱打造:由一位开源爱好者为社区创建
- 免费且开源:完全免费,无任何隐藏费用
- 协作与连接:结识同样热爱开源的志同道合者
---
## 赞助商
🙏 我们非常感谢我们的赞助商。你们的贡献使我们能够维护基础设施(托管、域名)、运行测试,并继续开发有价值的功能。
### 🥈 白银在线保障合作伙伴
<a href="https://github.com/michaelortnerit">
<img src="https://avatars.githubusercontent.com/u/135371107?v=4" width="75" height="75" style="border-radius: 50%; display: block;" />
</a>
### 🧡 支持者
<a href="https://github.com/samang-dauth">
<img src="https://avatars.githubusercontent.com/u/4575656?v=4" width="75" height="75" style="border-radius: 50%; display: block;" />
</a>
### 🤝 生态系统与社区合作伙伴
<a href="https://github.com/gitbookio">
<img src="https://avatars.githubusercontent.com/u/7111340?s=200&v=4"
width="75" height="75"
style="border-radius: 50%; display: block;" />
</a>
---
## 👥 贡献者
感谢你为让CheckCle变得更好所做出的贡献与持续努力,你太棒了 🫶
[![](https://contrib.rocks/image?repo=operacle/checkcle)](https://github.com/operacle/checkcle/graphs/contributors)
---
## 🤝 贡献方式
以下是你可以帮助改进 CheckCle 的一些方式:
- 🐞 **报告问题** 发现故障/异常?请在提交 [GitHub Issue](https://github.com/operacle/checkcle/issues) 告诉我们。
- 🌟 **建议功能** 有个点子?发起 [Discussion](https://github.com/operacle/checkcle/discussions) 讨论,或提交一个功能请求 [Feature Request Issue](https://github.com/operacle/checkcle/issues)。
- 🛠 **提交 Pull Request** – 改进代码、修复缺陷、添加功能,或完善文档。
- 📝 **改善文档** – 就算是修正一个错别字也很有帮助!
- 🌍 **传播项目** 给 [CheckCle](https://github.com/operacle/checkcle.git) 仓库点个 Star ⭐,在社交平台分享,并邀请更多人参与贡献!
---
## 🌍 联系我们
- 网站: [checkcle.io](https://checkcle.io)
- 文档: [docs.checkcle.io](https://docs.checkcle.io) | 非常感谢 [GitBook](https://github.com/gitbookio) 赞助 CheckCle 的开源站点计划(OSS Site Plan)!
- 在 Discord 上聊天: 加入我们的 [@discord](https://discord.gg/xs9gbubGwX) 频道
- 在 X 上关注我们: [@checkcle_oss](https://x.com/checkcle_oss)
## 📜 许可证
CheckCle 遵循 MIT 许可证发布。
---