项目简介
引言
在数字化时代,软件早已成为连接人与信息、业务与技术的重要桥梁。从个人工具到企业级系统,从桌面应用到云原生服务,软件不断推动着生产方式与生活方式的发展。
然而,在实际开发过程中,开发者往往需要花费大量时间处理重复性的基础工作,例如认证授权、数据访问、缓存、日志、国际化、多租户、实时通信、代码生成等。这些能力虽然必不可少,却很少真正体现业务价值。
XiHan 正是在这样的背景下诞生。
它并不是一个单独的项目,而是一套持续演进的现代化开源生态,希望帮助开发者减少重复劳动,将更多时间投入到真正有价值的业务创新中。
整个生态目前主要由三个部分组成:
- XiHan.Framework:基于 .NET 的现代化模块化开发框架,提供稳定、高效、可扩展的基础能力。
- XiHan.UI:面向 Vue 生态的现代化 UI 与业务组件库,提供统一、高质量的前端开发体验。
- XiHan.BasicApp:基于 Framework 与 UI 构建的完整后台管理系统,也是整个生态的最佳实践与快速开发模板。
三者既可以独立使用,也可以协同工作,共同构建完整的软件开发解决方案。
一路走来,从最初的个人博客,到如今逐渐形成完整的开源生态,XiHan 始终坚持一个目标:
快速、轻量、高效、用心。
希望它不仅能够帮助开发者提高开发效率,也能够陪伴更多热爱技术的人共同成长。
名称
碧落降恩承淑颜,共挚崎缘挽曦寒。 迁般故事终成忆,谨此葳蕤换思短。
曦寒(XiHan),名字便源于此。
它承载着一段珍藏于心的故事,也寄托着一份未曾改变的初心。
有人说,名字只是一个代号。
而我更愿意相信,每一个真正被赋予意义的名字,都记录着一段值得铭记的经历。
因此,无论项目如何成长,无论未来扩展成怎样的生态,它始终都会叫做 XiHan。
谨以此名,致她。
官方
项目名称
- 中文:曦寒
- 英文:XiHan
官方网站:
社区名称
- 中文:曦寒懿
- 英文: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 更像是人与软件之间的桥梁。
它是一套围绕 Vue 构建的现代化 UI 与业务组件库。
除了基础组件之外,它还会持续沉淀更多业务组件、页面模板、交互能力以及设计规范,希望帮助开发者以更少的代码、更高的效率,构建具有统一设计语言的现代 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 成长道路上的养分。
愿开源精神薪火相传。
愿热爱永不止步。
愿我们,终将摘得属于自己的繁华。
