mirror of
https://github.com/wwiinnddyy/LanMountainDesktop.git
synced 2026-06-20 23:54:26 +08:00
157 lines
5.0 KiB
Markdown
157 lines
5.0 KiB
Markdown
# 项目介绍
|
||
|
||
## 什么是阑山桌面
|
||
|
||
**LanMountainDesktop(阑山桌面)** 是一个基于 .NET 和 Avalonia UI 的模块化桌面定制平台,旨在为用户提供高度可定制的桌面体验。
|
||
|
||
### 核心特性
|
||
|
||
#### 🧩 插件系统
|
||
- **进程内插件** - 当前稳定的插件运行模式
|
||
- **进程隔离插件** - 未来支持的隔离模式(规划中)
|
||
- **插件 SDK** - 完整的插件开发工具包
|
||
- **插件市场** - 应用内插件浏览和安装
|
||
|
||
#### 🎨 桌面组件(Widget)
|
||
- **可视化编辑** - 拖拽式布局编辑
|
||
- **多种组件** - 时钟、天气、日历、倒计时等
|
||
- **自定义组件** - 通过插件扩展新组件
|
||
- **主题支持** - 亮色/暗色模式自适应
|
||
|
||
#### 🚀 Air APP 系统
|
||
- **独立应用** - 在桌面环境中运行的独立窗口应用
|
||
- **生命周期管理** - 统一的应用启动、激活和清理
|
||
- **窗口模式** - 标准、无边框、全屏、工具窗口
|
||
- **IPC 通信** - 与桌面宿主的双向通信
|
||
|
||
#### ⚙️ 设置系统
|
||
- **分域管理** - 按功能模块组织设置
|
||
- **持久化** - 自动保存到本地
|
||
- **插件集成** - 插件可注册自己的设置页
|
||
|
||
#### 🔄 更新系统
|
||
- **增量更新** - 只下载变更文件,节省带宽
|
||
- **原子化更新** - 保证更新完整性,失败自动回滚
|
||
- **多版本管理** - 支持版本共存和回退
|
||
- **签名验证** - RSA 签名确保安全性
|
||
|
||
## 技术架构
|
||
|
||
### 核心技术栈
|
||
|
||
| 技术 | 版本 | 用途 |
|
||
|------|------|------|
|
||
| .NET | 10.0 | 应用框架 |
|
||
| Avalonia UI | 12.x | 跨平台 UI 框架 |
|
||
| FluentAvalonia | 2.x | Fluent Design 控件 |
|
||
| CommunityToolkit.Mvvm | 8.x | MVVM 框架 |
|
||
| VeloPack | 最新 | 应用更新系统 |
|
||
| dotnetCampus.Ipc | 最新 | 进程间通信 |
|
||
|
||
### 项目结构
|
||
|
||
```
|
||
LanMountainDesktop/
|
||
├── LanMountainDesktop/ # 主桌面宿主应用
|
||
├── LanMountainDesktop.Launcher/ # 启动器(OOBE、Splash、版本管理)
|
||
├── LanMountainDesktop.AirAppRuntime/ # Air APP 运行时容器
|
||
├── LanMountainDesktop.AirAppHost/ # Air APP 渲染进程
|
||
├── LanMountainDesktop.PluginSdk/ # 插件 SDK
|
||
├── LanMountainDesktop.Shared.Contracts/ # 共享契约类型
|
||
├── LanMountainDesktop.Settings.Core/ # 设置系统
|
||
├── LanMountainDesktop.Appearance/ # 主题和外观
|
||
├── LanMountainDesktop.DesktopComponents.Runtime/# 组件运行时
|
||
└── LanMountainDesktop.PluginIsolation.*/ # 插件隔离(未来)
|
||
```
|
||
|
||
### 启动流程
|
||
|
||
```
|
||
用户启动 Launcher.exe
|
||
↓
|
||
首次启动 → OOBE 引导
|
||
↓
|
||
显示 Splash 启动动画
|
||
↓
|
||
预启动 AirAppRuntime(框架依赖 JIT 进程)
|
||
↓
|
||
扫描 app-* 目录,选择最佳版本
|
||
↓
|
||
启动 LanMountainDesktop.exe(主程序)
|
||
↓
|
||
初始化日志、遥测、Host 生命周期
|
||
↓
|
||
加载主题、语言、设置
|
||
↓
|
||
初始化桌面壳层、主窗口、托盘
|
||
↓
|
||
加载插件、注册组件
|
||
↓
|
||
桌面就绪
|
||
```
|
||
|
||
## 应用场景
|
||
|
||
### 个人用户
|
||
- **桌面定制** - 打造个性化的桌面环境
|
||
- **效率工具** - 快速访问常用功能和信息
|
||
- **信息聚合** - 在桌面上展示天气、日历、待办等
|
||
|
||
### 开发者
|
||
- **插件开发** - 为桌面扩展新功能
|
||
- **Air APP 开发** - 创建独立的桌面应用
|
||
- **组件开发** - 设计自定义桌面组件
|
||
|
||
### 企业用户
|
||
- **定制部署** - 企业专用的桌面环境
|
||
- **信息看板** - 展示企业数据和通知
|
||
- **工作流集成** - 集成企业工作流工具
|
||
|
||
## 版本与支持
|
||
|
||
### 当前版本
|
||
- **稳定版**: 查看 [GitHub Releases](https://github.com/HelloWRC/LanMountainDesktop/releases)
|
||
- **预览版**: 通过更新频道切换到 Preview
|
||
|
||
### 平台支持
|
||
- ✅ **Windows 10/11** - 完整支持
|
||
- 🚧 **Linux** - 计划支持
|
||
- 🚧 **macOS** - 计划支持
|
||
|
||
### 系统要求
|
||
- **操作系统**: Windows 10 1809 或更高版本
|
||
- **.NET Runtime**: 自动包含,无需单独安装
|
||
- **内存**: 建议 4GB 或更高
|
||
- **磁盘**: 安装需要约 200MB 空间
|
||
|
||
## 开发理念
|
||
|
||
### 模块化设计
|
||
所有功能通过插件和组件实现,核心保持精简。
|
||
|
||
### 开放生态
|
||
鼓励社区开发插件和组件,共建生态系统。
|
||
|
||
### 稳定可靠
|
||
原子化更新、版本回退、进程隔离等机制保证系统稳定。
|
||
|
||
### 性能优先
|
||
增量更新、延迟加载、异步渲染等优化确保流畅体验。
|
||
|
||
## 开源协议
|
||
|
||
本项目采用 [MIT License](https://github.com/HelloWRC/LanMountainDesktop/blob/main/LICENSE) 开源协议。
|
||
|
||
## 社区与贡献
|
||
|
||
- **GitHub**: https://github.com/HelloWRC/LanMountainDesktop
|
||
- **Issues**: 报告 Bug 和功能建议
|
||
- **Discussions**: 技术讨论和问答
|
||
- **Pull Requests**: 欢迎贡献代码和文档
|
||
|
||
## 下一步
|
||
|
||
- [快速安装](02-快速安装.md) - 安装阑山桌面
|
||
- [开发环境配置](03-开发环境配置.md) - 配置开发环境
|
||
- [插件开发快速开始](../01-插件开发/01-快速开始/01-环境准备.md) - 开始开发插件
|