来源：https://docs.xihanfun.com/cosmos/guide

# 项目简介

## 引言

在数字化时代，软件早已成为连接人与信息、业务与技术的重要桥梁。从个人工具到企业级系统，从桌面应用到云原生服务，软件不断推动着生产方式与生活方式的发展。

然而，在实际开发过程中，开发者往往需要花费大量时间处理重复性的基础工作，例如认证授权、数据访问、缓存、日志、国际化、多租户、实时通信、代码生成等。这些能力虽然必不可少，却很少真正体现业务价值。

**XiHan** 正是在这样的背景下诞生。

它并不是一个单独的项目，而是一套持续演进的现代化开源生态，希望帮助开发者减少重复劳动，将更多时间投入到真正有价值的业务创新中。

整个生态目前主要由三个部分组成：

- **XiHan.Framework**：基于 .NET 的微内核开发框架，提供稳定、高效、可扩展的基础能力。
- **XiHan.UI**：框架无关的 Headless UI 组件库，无头内核加 Vue、React 与 Web Components 多框架适配器，提供统一、高质量的前端开发体验。
- **XiHan.BasicApp**：基于 Framework 与 UI 构建的完整后台管理系统，也是整个生态的最佳实践与快速开发模板。

三者既可以独立使用，也可以协同工作，共同构建完整的软件开发解决方案。

一路走来，从最初的个人博客，到如今逐渐形成完整的开源生态，XiHan 始终坚持一个目标：

> **快速、轻量、高效、用心。**

希望它不仅能够帮助开发者提高开发效率，也能够陪伴更多热爱技术的人共同成长。

## 名称

> 碧落降恩承淑颜，共挚崎缘挽曦寒。
> 迁般故事终成忆，谨此葳蕤换思短。

**曦寒（XiHan）**，名字便源于此。

它承载着一段珍藏于心的故事，也寄托着一份未曾改变的初心。

有人说，名字只是一个代号。

而我更愿意相信，每一个真正被赋予意义的名字，都记录着一段值得铭记的经历。

因此，无论项目如何成长，无论未来扩展成怎样的生态，它始终都会叫做 **XiHan**。

**谨以此名，致她。**

## 官方

**项目名称**

- 中文：**曦寒**
- 英文：**XiHan**

官方网站：

- 官网：[https://www.xihanfun.com](https://www.xihanfun.com)
- 文档：[https://docs.xihanfun.com](https://docs.xihanfun.com)

**社区名称**

- 中文：**曦寒懿**
- 英文：**XiHanFun**

官方社区：

- GitHub：https://github.com/XiHanFun
- Gitee：https://gitee.com/XiHanFun
- GitCode：https://gitcode.com/XiHanFun

以上平台均为官方代码托管仓库，欢迎 Star、Fork、Issue 与 Pull Request。

未来，XiHan 将持续围绕现代软件开发，构建更加完善的开源生态。

## 自序

> 白衣无尘，亦如初见。
> 感恩相遇，有幸得识。

我是 **摘繁华**。

很多人都会好奇，为什么我的网名叫做 **「摘繁华」**。

它来源于我初中时写下的一句词：

> **繁华扑尘，有谁堪摘？**

至于词牌和全文，我早已记不清了，唯独这一句一直留在记忆里。

那时的我，总觉得时代越繁华，越容易让真正值得被记住的人、技艺与思想，被时间渐渐掩埋。

历史不断向前，总有人被遗忘；文明不断演进，总有一些经验与智慧散落在岁月的尘埃之中。

如果没有人愿意俯身拾起，那便由我去尝试。

于是，便有了「摘繁华」这个名字。

后来我发现，它不仅仅是一个网名，更逐渐成为了我做事的态度。

------

最初，我只是想写一个属于自己的博客。

后来，因为学习、工作以及兴趣，我陆续开发了后台管理系统、工具库、业务组件，也踩过无数的坑。

每完成一个项目，我都会思考一个问题：

> 有没有一些能力，可以不用下一次再重新写一遍？

于是，我开始把那些真正经过实践验证的能力一点点抽离出来，封装成独立模块。

认证、授权、日志、缓存、多租户、国际化、实时通信、事件总线、代码生成……

它们最开始只是服务于某一个项目，后来逐渐沉淀为能够服务所有项目的基础能力。

随着项目越来越多，这些能力也逐渐形成了今天的 **XiHan** 开源生态。

它主要由三个部分组成。

### XiHan.Framework

这是整个生态的核心，也是我投入时间最多的项目。

它是一套基于 **.NET** 构建的微内核开发框架。

我希望它既能够提供开箱即用的开发体验，也能够保持足够的灵活性，让开发者可以按照自己的方式构建系统，而不是被框架束缚。

因此，它不仅提供认证授权、数据访问、缓存、消息、国际化、多租户、调度、工作流、AI 等基础能力，也始终坚持能力可替换、依赖边界清晰、一份契约服务多种协议的设计理念。

它的目标，从来都不是成为最大的框架，而是成为一个真正能够帮助开发者解决问题的框架。

### XiHan.UI

如果说 Framework 是整个生态的基础，那么 **XiHan.UI** 更像是人与软件之间的桥梁。

它是一套框架无关的现代化 UI 与业务组件库：状态机与无障碍逻辑沉在无头内核里，每个前端框架只得到一层薄适配器，目前有 Vue、React 与 Web Components。

除了基础组件之外，它还会持续沉淀更多业务组件、页面模板、交互能力以及设计规范，希望帮助开发者以更少的代码、更高的效率，构建具有统一设计语言的现代 Web 应用。

我希望它不仅好看，更重要的是好用。

真正优秀的界面，不应该炫技，而应该让用户感受不到设计本身。

### XiHan.BasicApp

如果说 Framework 提供基础能力，UI 提供交互能力，那么 **XiHan.BasicApp** 就是整个生态最完整的实践。

它是一套基于 Framework 与 UI 构建的现代化后台管理系统。

它既可以作为一套完整的后台系统直接投入项目，也可以作为学习框架设计、模块开发以及企业级架构的最佳实践。

很多新的设计理念、新的功能模块，都会首先在这里得到验证，再逐步沉淀回 Framework 与 UI。

它们彼此独立，又相互促进，共同组成了 XiHan 的完整生态。

------

我一直相信，一个优秀的开源项目，不应该只有代码，更应该拥有完整的生态。

Framework 沉淀架构；

UI 打磨体验；

BasicApp 验证实践。

它们共同成长，也共同完善。

无论你是希望快速搭建一个企业级项目，还是学习现代软件架构，又或者只是寻找一个能够复用的功能模块。

我都希望，你能够在这里找到属于自己的答案。

------

曾经，我在自己的个人主页上写过这样一句话：

> **受德于儒，受思于道，受兼于墨，受理于法。**

后来，我把它删掉了。

不是因为否定，而是因为越来越觉得，一个人很难用一句话、一种主义，甚至一种哲学去定义自己。

我从小接受的是传统文化教育。

儒家的仁义礼智信、道家的道法自然、墨家的兼爱尚贤、法家的依法而治，以及后来接触到的佛学、西方哲学、现代科学，都或多或少影响了我的思考方式。

它们像来自不同方向的风，不断修正着我对世界的理解。

随着年龄增长，我越来越相信，没有任何一种思想能够完整解释这个复杂的世界。

因此，我既不会盲目接受，也不会轻易否定。

相比于寻找一个能够依附的答案，我更愿意保持怀疑，也保持开放；尊重经验，也尊重实践；敬畏规律，也尊重人的价值。

真正值得相信的，不是哪一种学说，而是在不断实践中形成的认知。

如果一定要给自己贴一个标签，我更愿意称自己为一名**探索者**。

不断学习，不断怀疑，不断求证，也不断修正。

------

这种思考方式，也逐渐影响了我开发软件的方式。

很多人认为，软件开发是一门工程学。

而我更愿意把它看作工程与艺术的结合。

工程决定它是否可靠。

艺术决定它是否优雅。

一个优秀的软件，不应该让用户去适应软件，而应该让软件去适应用户。

一个优秀的框架，不应该增加开发者的学习成本，而应该降低开发者的开发成本。

因此，在设计 XiHan 的过程中，我始终坚持几个原则。

### 尊重自然

复杂属于框架，简单属于开发者。

能够自动完成的事情，就不要要求开发者重复配置；能够约定完成的事情，就尽量减少繁琐的规则。

我一直很喜欢一句话：

> **大道至简。**

真正优秀的设计，往往不会让人觉得复杂。

它不是功能越多越好，而是让开发者在需要的时候，总能以最自然的方式完成工作。

因此，无论是 API 设计、模块划分，还是配置方式，我都尽可能保持统一、清晰、直观。

希望开发者第一次接触 XiHan 时，就能够感受到它的自然与流畅。

------

### 尊重开发者

技术最终服务的是人，而不是代码。

因此，我始终把开发体验放在非常重要的位置。

一份清晰的文档、一致的命名规范、合理的默认配置、完善的错误提示，往往比增加几十个功能更有价值。

我希望每一位开发者，在使用 XiHan 时，不需要花费大量时间理解框架，而能够把更多精力投入到真正的业务开发中。

所以，很多设计看似简单，背后却经历了无数次推倒重来。

因为我始终相信：

**简单，并不是少做，而是把复杂留给自己。**

------

### 尊重用户

软件最终面对的是用户。

因此，我始终重视用户体验、信息安全、隐私保护以及系统稳定性。

再完善的功能，如果难以使用，也很难称得上优秀。

所以，在 XiHan 中，我不仅关注代码是否优雅，也关注交互是否自然；不仅关注功能是否完整，也关注细节是否舒适。

因为真正能够留住用户的，从来都不是功能，而是体验。

------

### 尊重长期主义

软件开发从来不是一场短跑，而是一场漫长的积累。

我希望十年后的 XiHan，依然能够持续成长。

因此，相比追逐一时流行的新技术，我更倾向于选择经过实践验证的方案。

模块化、可扩展、低耦合、向下兼容、稳定演进……

这些听起来或许并不耀眼，却决定着一个项目能够走多远。

我希望 XiHan 不只是一个能够发布第一个版本的项目，更是一个能够持续维护很多年的开源生态。

------

直到今天，我依然觉得，软件开发不仅仅是在编写代码。

它更是在表达一种思考方式。

每一次重构，每一个接口，每一个模块，都是开发者价值观的体现。

因此，我希望 **XiHan** 不只是一个框架、一套组件，或者一个后台系统。

我更希望，它能够成为一个持续成长、不断沉淀的开源生态。

在这里：

- **XiHan.Framework** 沉淀架构与基础能力；
- **XiHan.UI** 打磨交互与开发体验；
- **XiHan.BasicApp** 验证设计与工程实践。

它们共同记录的不只是代码，还有一路走来踩过的坑、总结出的经验，以及那些值得留下来的设计思想。

我希望，无论未来增加多少项目，它们都能够围绕同一个目标：

**让软件开发更简单，让优秀的设计能够被更多人复用。**

------

如果未来有一天，XiHan 能够帮助更多开发者提高效率，帮助更多团队减少重复劳动，帮助更多项目快速落地；如果有人因为它而学会模块化设计，因为它理解工程化开发，因为它爱上开源。

那么，当年写下的那一句：

> **繁华扑尘，有谁堪摘？**

便算没有白写。

愿我们都能在时代的洪流中，摘取属于自己的那一份繁华。

也愿我们留下的每一行代码、每一篇文档、每一次分享，都能够成为后来者继续前行的一束微光。

**与君共勉。**

—— **摘繁华**

## 致谢

感谢每一位关注、使用、反馈和贡献 **XiHan** 的朋友。

开源从来不是一个人的坚持，而是一群人的同行。

感谢每一位提交 Issue、发起 Pull Request、提出建议、分享经验的开发者。正因为有你们，XiHan 才能够不断成长、不断完善。

同时，也感谢所有优秀的开源项目和开发工具，为 XiHan 的诞生提供了坚实的基础。

特别感谢：

- **.NET** 与 **C#** —— 提供稳定、现代、高性能的开发平台。
- **Vue** —— 构建现代 Web 应用的重要基石。
- **Visual Studio**、**JetBrains Rider**、**Visual Studio Code** —— 提供优秀的开发体验。
- **Git**、**GitHub**、**Gitee**、**GitCode** —— 承载开源社区的协作与分享。
- **Vite**、**VitePress**、**TypeScript** 等优秀的开源项目，为前端生态提供了强大的支持。

最后，感谢所有曾给予我帮助的人。

无论是一句建议、一次鼓励，还是一次善意的批评，都成为了 XiHan 成长道路上的养分。

愿开源精神薪火相传。

愿热爱永不止步。

愿我们，终将摘得属于自己的繁华。
