docs: rewrite README to reflect Tauri 2 stack, add MIT LICENSE
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
21
LICENSE
Normal file
21
LICENSE
Normal file
@@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2026 shumengya
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
183
README.md
183
README.md
@@ -1,103 +1,112 @@
|
||||
# Sprout Launcher - Windows桌面启动器
|
||||
# Sprout Launcher · 萌芽桌面启动器
|
||||
|
||||
一个基于 Electron + React 开发的清新风格 Windows 应用启动器。
|
||||
> 一个清新风格的 Windows 应用启动器,基于 **Tauri 2 + React 18 + TypeScript** 构建。
|
||||
|
||||
把常用的程序、脚本、文件夹收纳到一个漂亮的网格面板里,点击即启动,常驻系统托盘随用随开。
|
||||
|
||||
## ✨ 功能特性
|
||||
|
||||
- 🚀 **快速启动** - 点击图标即可启动相应的Windows应用程序
|
||||
- 🎨 **清新界面** - 淡绿色到淡黄绿色渐变,带有毛玻璃和半透明效果
|
||||
- 🖼️ **自动图标** - 自动获取exe文件的图标
|
||||
- 📁 **分类管理** - 支持自定义分类,轻松管理应用
|
||||
- 💾 **配置保存** - 所有配置使用JSON文件保存
|
||||
- 🎯 **灵活布局** - 每行最多显示15个应用,自适应网格布局
|
||||
|
||||
## 📋 应用信息
|
||||
|
||||
每个添加的应用包含以下信息:
|
||||
|
||||
- **软件图标** - 自动从exe文件提取
|
||||
- **软件名称** - 可自定义,不填则使用exe文件名
|
||||
- **软件分类** - 可选择分类,默认为"默认分类"
|
||||
- **软件描述** - 可选的简单描述
|
||||
|
||||
## 🎯 使用方法
|
||||
|
||||
### 开发模式
|
||||
|
||||
```bash
|
||||
# 安装依赖
|
||||
npm install
|
||||
|
||||
# 启动开发服务器
|
||||
npm run dev
|
||||
```
|
||||
|
||||
### 构建应用
|
||||
|
||||
```bash
|
||||
# 构建生产版本
|
||||
npm run build
|
||||
```
|
||||
|
||||
### 添加应用
|
||||
|
||||
1. 点击左侧边栏的"➕ 添加应用"按钮
|
||||
2. 点击"浏览"选择exe文件
|
||||
3. 系统会自动获取图标和文件名
|
||||
4. 可选:自定义应用名称、选择分类、添加描述
|
||||
5. 点击"添加"完成
|
||||
|
||||
### 管理分类
|
||||
|
||||
1. 点击左侧边栏的"📁 管理分类"按钮
|
||||
2. 点击"+ 添加分类"输入新分类名称
|
||||
3. 点击"确定"完成添加
|
||||
4. 默认分类无法删除
|
||||
|
||||
### 编辑/删除应用
|
||||
|
||||
- 鼠标悬停在应用卡片上会显示编辑(✏️)和删除(🗑️)按钮
|
||||
- 点击编辑按钮可修改应用信息
|
||||
- 点击删除按钮可删除应用(需确认)
|
||||
|
||||
## 🎨 界面特性
|
||||
|
||||
- **自定义标题栏** - 支持最小化、最大化、关闭操作
|
||||
- **毛玻璃效果** - 现代化的半透明背景
|
||||
- **渐变背景** - 淡绿色到淡黄绿色的清新渐变
|
||||
- **响应式布局** - 自适应不同屏幕尺寸
|
||||
- 🚀 **一键启动** — 支持 `.exe` / `.bat` / `.cmd` / `.ps1` / `.vbs` 及文件夹,点击图标即运行
|
||||
- 🖼️ **自动提取图标** — 通过 .NET `System.Drawing` 自动抓取程序图标并缓存为 PNG
|
||||
- 🔗 **快捷方式管理** — 自动在数据目录生成 `.lnk`,可在资源管理器中定位目标
|
||||
- 🖱️ **右键上下文菜单** — 打开、以管理员身份运行、在资源管理器中显示、编辑、移除
|
||||
- 📁 **分类管理** — 自定义分类整理应用,默认分类不可删除
|
||||
- 🎨 **清新界面** — 淡绿渐变背景 + 毛玻璃效果,自定义无边框标题栏
|
||||
- 🔔 **系统托盘** — 关闭窗口隐藏到托盘,左键托盘唤出主窗口
|
||||
- 🔄 **开机自启** — 一键开启 / 关闭随系统启动
|
||||
- 💾 **配置导入导出** — 一键备份 / 迁移所有应用与分类
|
||||
- 🔂 **单实例运行** — 重复启动时聚焦已有窗口
|
||||
|
||||
## 📦 技术栈
|
||||
|
||||
- **Electron** - 跨平台桌面应用框架
|
||||
- **React** - UI框架
|
||||
- **TypeScript** - 类型安全
|
||||
- **Vite** - 快速构建工具
|
||||
| 层级 | 技术 |
|
||||
|------|------|
|
||||
| 桌面框架 | [Tauri 2](https://v2.tauri.app/) |
|
||||
| 前端 | React 18 + TypeScript 5 |
|
||||
| 构建工具 | Vite 5 |
|
||||
| 后端 | Rust(图标提取 / 快捷方式 / 托盘 / 进程启动) |
|
||||
| Tauri 插件 | `dialog`、`autostart`、`single-instance`、`log` |
|
||||
|
||||
## 📝 配置文件位置
|
||||
## 🚀 快速开始
|
||||
|
||||
配置文件保存在:`%APPDATA%/sprout-launcher/launcher-config.json`
|
||||
### 环境要求
|
||||
|
||||
## 🔧 开发
|
||||
- [Node.js](https://nodejs.org/) ≥ 18
|
||||
- [Rust](https://www.rust-lang.org/tools/install) 工具链
|
||||
-(Windows)[Visual Studio Build Tools](https://visualstudio.microsoft.com/downloads/)
|
||||
|
||||
项目结构:
|
||||
### 安装依赖
|
||||
|
||||
```
|
||||
sprout-launcher/
|
||||
├── electron/ # Electron主进程和预加载脚本
|
||||
│ ├── main.ts # 主进程
|
||||
│ └── preload.ts # 预加载脚本
|
||||
├── src/
|
||||
│ ├── components/ # React组件
|
||||
│ │ ├── AppCard.tsx # 应用卡片
|
||||
│ │ ├── AddAppDialog.tsx # 添加应用对话框
|
||||
│ │ └── CategoryManager.tsx # 分类管理
|
||||
│ ├── types.ts # TypeScript类型定义
|
||||
│ ├── App.tsx # 主应用组件
|
||||
│ └── App.css # 主样式
|
||||
└── package.json
|
||||
```bash
|
||||
npm install
|
||||
```
|
||||
|
||||
## 📄 License
|
||||
### 开发运行
|
||||
|
||||
```bash
|
||||
npm run tauri dev
|
||||
```
|
||||
|
||||
### 构建安装包
|
||||
|
||||
```bash
|
||||
npm run tauri build
|
||||
```
|
||||
|
||||
产物位于 `src-tauri/target/release/bundle/nsis/`,生成简体中文 NSIS 安装包(当前用户安装模式)。
|
||||
|
||||
## 🎯 使用方法
|
||||
|
||||
### 添加应用
|
||||
|
||||
1. 点击「➕ 添加应用」
|
||||
2. 浏览选择 `.exe` / 脚本 / 文件夹(支持一次多选)
|
||||
3. 系统自动提取图标与文件名
|
||||
4. 可选:自定义名称、选择分类、填写描述
|
||||
5. 确认添加
|
||||
|
||||
### 管理应用
|
||||
|
||||
- **启动**:单击应用卡片
|
||||
- **右键菜单**:打开 / 以管理员身份运行 / 在资源管理器中显示快捷方式或目标 / 编辑 / 移除
|
||||
- **编辑、删除**:鼠标悬停卡片显示操作按钮
|
||||
|
||||
### 分类与配置
|
||||
|
||||
- 「📁 管理分类」中新增 / 删除分类(默认分类不可删除)
|
||||
- 设置中可导入 / 导出配置 JSON,以及开关开机自启
|
||||
|
||||
## 📝 数据存储
|
||||
|
||||
| 内容 | 位置 |
|
||||
|------|------|
|
||||
| 应用与分类配置 | `%APPDATA%\com.smyhub.sprout-launcher\launcher-config.json` |
|
||||
| 快捷方式缓存 | `%APPDATA%\com.smyhub.sprout-launcher\data\shortcuts\` |
|
||||
| 图标缓存 | `%APPDATA%\com.smyhub.sprout-launcher\data\icons\` |
|
||||
|
||||
## 🗂️ 项目结构
|
||||
|
||||
```text
|
||||
SproutLauncher/
|
||||
├── src/ # React 前端
|
||||
│ ├── components/
|
||||
│ │ ├── AppCard.tsx # 应用卡片
|
||||
│ │ ├── AddAppDialog.tsx # 添加应用对话框
|
||||
│ │ ├── CategoryManager.tsx # 分类管理
|
||||
│ │ └── GridWithFill.tsx # 自适应网格布局
|
||||
│ ├── types.ts # 类型定义
|
||||
│ ├── App.tsx # 主应用
|
||||
│ └── main.tsx # 入口
|
||||
├── src-tauri/
|
||||
│ ├── src/lib.rs # Rust 后端(命令 / 托盘 / 图标 / 快捷方式)
|
||||
│ ├── icons/ # 应用图标
|
||||
│ ├── Cargo.toml
|
||||
│ └── tauri.conf.json
|
||||
├── public/ # 静态资源(含托盘 logo)
|
||||
├── package.json
|
||||
└── vite.config.ts
|
||||
```
|
||||
|
||||
## 📄 许可证
|
||||
|
||||
MIT
|
||||
|
||||
Reference in New Issue
Block a user