一站式 KMS 工具箱,集成了 KMS 激活脚本生成、KMS 服务器检测、KMS 服务器状态监控等功能。
该项目最早诞生于 2020 年 4 月,首发在 Hostloc 论坛,之前仅仅只是一个用来生成 KMS 激活脚本的小工具。上大学的时候我在学校负责维护教学楼和机房的电脑设备,平日里经常需要重装各种各样版本的操作系统,这个小工具提高了激活操作系统的效率。于是在 2022 年 6 月,我将这个小工具翻出来,使用许多新技术对其进行了重构,再一次发布到了 Hostloc 论坛,得到了许多大佬的关注和支持。
后来的一段时间里也会偶尔更新一些功能,但一直都没有很完善,直到前些时候收到了两个特别的 issues「#25、#26」,其中有一个还是非中文语言发起的,我没有想到一个小小的项目能够得到海外朋友的关注。作为我开源的第一款「处女作」,我决定将其继续开发和维护下去。
原先的版本是一个纯前端的工具,为了实现 KMS 检测和 KMS 监控等功能,我使用 Bun + Elysia 写了一个后端服务,将整个项目区分为纯前端版本和全栈版本,前端版本可以调用 kms.ikxin.com 的 API 接口,而全栈版本则可以独立部署所有功能,甚至包含了 Vlmcsd 来作为 KMS 激活服务器。
- 官网地址: kms.ikxin.com
- Cloudflare: kmstools.pages.dev
- Vercel: kmstools.vercel.app
KMS 激活脚本生成 | KMS 服务器检测 | KMS 服务器状态监控 |
---|---|---|
v1.2.0 | v1.0.0 | v0.1.5 |
---|---|---|
- Bun - 用于 JavaScript 和 TypeScript 应用程序的一体化工具包
- Drizzle ORM - 下一代的无头 TypeScript ORM 框架
- Elysia - 符合人体工程学的 Web 框架,用于使用 Bun 构建后端服务器
- Vue.js - 构建用户界面的 JavaScript 框架
- Vite - 下一代的前端工程构建工具
- Arco Design Vue - ByteDance 开发的企业级产品设计系统
- Vue Router - Vue.js 核心团队开发的路由组件
- Pinia - 类型安全、可扩展性以及模块化设计的状态管理库
- UnoCSS - 即时的按需加载原子 CSS 引擎
- VueUse - 基于 Composition API 的实用函数集合
- Vue I18n - I18n 国际化语言支持
- unplugin-auto-import - 自动按需导入 Composition API 的插件
- unplugin-vue-components - 自动按需导入 Vue 组件的插件
- unplugin-vue-router - Vue Router 自动加载基于文件的路由系统
- unplugin-vue-markdown - Markdown 文档支持
不管是全栈版本还是纯前端版本,都需要依赖 Bun 来进行构建,使用以下脚本在本地安装 Bun 环境。
Linux & macOS:
curl -fsSL https://bun.sh/install | bash
Windows:
powershell -c "irm bun.sh/install.ps1 | iex"
接下来将项目克隆到本地,然后执行命令安装依赖
git clone https://github.com/ikxin/kms-tools.git
cd kms-tools && bun install
- 创建 MySQL 数据库,使用以下 SQL 创建表的结构
CREATE TABLE `logs` (
`id` int AUTO_INCREMENT NOT NULL,
`host` text NOT NULL,
`delay` int NOT NULL DEFAULT 0,
`content` text,
`status` boolean NOT NULL DEFAULT false,
`created_at` timestamp NOT NULL,
CONSTRAINT `logs_id` PRIMARY KEY(`id`)
);
--> statement-breakpoint
CREATE TABLE `server` (
`id` int AUTO_INCREMENT NOT NULL,
`host` text NOT NULL,
`port` int NOT NULL DEFAULT 1688,
`total` int NOT NULL DEFAULT 0,
`success` int NOT NULL DEFAULT 0,
`fail` int NOT NULL DEFAULT 0,
`delay` float NOT NULL DEFAULT 0,
`rate` float NOT NULL DEFAULT 0,
`updated_at` timestamp,
`created_at` timestamp,
CONSTRAINT `server_id` PRIMARY KEY(`id`)
);
- 将
.env.example
文件重命名为.env
,并修改其中的配置项
ENABLE_VLMCSD = false # 是否启用 Vlmcsd 服务
PORT = 3000 # 服务端口
DATABASE_URL = 'mysql://root:password@localhost:3306/database' # 数据库连接地址
- 运行以下命令启动服务
bun run service
- 使用以下命令构建项目
bun run build
- 运行以下命令启动服务
npx serve dist
Code with ❤️ by 一纸忘忧
MIT License Copyright (c) 2022 ~ Present