init: Sprout desktop app launcher

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-06-23 21:57:50 +08:00
commit b8ac8ab8c5
52 changed files with 13106 additions and 0 deletions

103
README.md Normal file
View File

@@ -0,0 +1,103 @@
# Sprout Launcher - Windows桌面启动器
一个基于 Electron + React 开发的清新风格 Windows 应用启动器。
## ✨ 功能特性
- 🚀 **快速启动** - 点击图标即可启动相应的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. 默认分类无法删除
### 编辑/删除应用
- 鼠标悬停在应用卡片上会显示编辑(✏️)和删除(🗑️)按钮
- 点击编辑按钮可修改应用信息
- 点击删除按钮可删除应用(需确认)
## 🎨 界面特性
- **自定义标题栏** - 支持最小化、最大化、关闭操作
- **毛玻璃效果** - 现代化的半透明背景
- **渐变背景** - 淡绿色到淡黄绿色的清新渐变
- **响应式布局** - 自适应不同屏幕尺寸
## 📦 技术栈
- **Electron** - 跨平台桌面应用框架
- **React** - UI框架
- **TypeScript** - 类型安全
- **Vite** - 快速构建工具
## 📝 配置文件位置
配置文件保存在:`%APPDATA%/sprout-launcher/launcher-config.json`
## 🔧 开发
项目结构:
```
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
```
## 📄 License
MIT