揭秘,unibest诞生过程;浅谈,开源真不容易
大家好,我是 unibest
作者菲鸽,今天带给大家一篇新文章《揭秘,unibest诞生过程;浅谈,开源真不容易》。
unibest 背景
去年开始我接手了公司的一个 uni-app
项目,框架比较老旧,有 4
个痛点:
-
- 项目技术栈使用的是
vue2
+uView1.x
,没能使用用vue3
,这是一个小小的痛点。
- 项目技术栈使用的是
-
- 项目打包依赖
HBuilderX
,无法自动化CICD,这是一个不大不小痛点。
- 项目打包依赖
-
- 项目里面一堆魔法数字和字符串,并且没有任何注释和说明,这是巨大的痛点。
-
- 项目里面业务逻辑从来不写注释,根本不知道为啥要这样写,全靠猜(人员也换了好几拨,问都没人能问,现在的外包人员也不知道),超级无敌大痛点。
项目是我司找外包写的一个项目,中标团队是京东,京东又
包中包
找了另外一个外包公司,这个外包公司的程序员能力太差,架构水平低些,技术栈老旧;写出来的代码一坨屎,期间还换了几波人,最终成为屎山代码。屎山代码也是个巨大痛点。这屎山代码,前端还好,还能玩得转。后端更加屎山,听我们的高手后端说,根本改不动,一个逻辑七弯八绕的,链路贼长;100多个微服务,只有30多个用得上,还不能去掉;没有统一的网关服务;一个SQL能搞定的,七万八绕;所有数据都通过 ctx 来取,不知道哪里冒出来的;几十个服务乱的很;前后端通过 cookie 认证,苦了前端人...
听说是这个外包公司用这个架构接过项目,然后拿过来套用,结果业务需求千差万别,根本不适用。
不说了,扯远了。
回到 uni-app
这个项目,既然这么多痛点,我能做点啥呢?如果我来写一个 uni-app
的项目,我会怎么办?于是萌生了开发 vue3 + ts + 无需HBX
的 uni-app
项目模板的想法,说干就干。
unibest 进程
前期
去年年底,任务稍微松一些,我有空腾出手来开始写这个项目,如下图项目初始化是在 2023-12-21<周四>
。那个时候很着迷,周末2天
也在公司搞,周末的 commit
更多,因为没有别的任务打扰。
那个时候一边写项目,一边趁热打铁输出文章,22号
和 23号
分别输出了2篇文章。
-
2023-12-22 <周五>
【unibest】uniapp + vue3 超实用模板 -
2023-12-23 <周六>
【unibest】uniapp + vue3 超实用模板(续)
过了2周,期间我不断完善项目,增加新特性,增加新的demo,努力打造最好用的uniapp项目模板。在 01月09号
又输出了一篇 终
来整体介绍项目。
2024-01-09 <周二>
【unibest】uniapp + vue3 超实用模板(终)
又过了10天,期间解决了不少BUG,另外还在不断完善项目,增加新特性,增加新的demo,在 01月18号
又输出了一篇 番外篇
,介绍项目之外,输出我对该项目的一些思考。
2024-01-18 <周四>
【unibest】uniapp + vue3 超实用模板(番外篇)
中期
经过上面4篇文章,项目写得差不多了,开始认真写项目的介绍,就是 README.md
文件,于是在5天后的 01月23号
输出了新的一篇文章。
2024-01-23 <周二>
Github 仓库 README.md 里面的 badge 怎么生成的?
因为要推送到 github
和 gitee
,以前都是设置 2个remote
,分别推送的,但我的梯子不行,经常推不上 github
,要重推好多次才行,有的时候还要等第二天再试,很浪费我的时间。于是想借助 gitee 同步代码的方式同步到 github,结果成功了,并且很容易,想着这个其他人也可能遇到,还是写出来吧,于是又输出了新的一篇文章。
2024-01-24 <周三>
代码要同时推送到 gitee 和 github 该怎么办?教你两招!
年底任务不多,接着优化项目,5天后的 01月29号
推出了最重磅的一篇文章 🔥2024年最好用的 uniapp 开发模板,近一个月 star 数飙升!🔥
,收藏数 937
,成为前端收藏榜的第七位。
另外,当天是项目初始化后的 第40天
,才过这么点时间,github star
数就远超其他同类型的模板,可谓 后生可谓
。另外提一嘴,本项目之前一直叫 vue3 + ts + uniapp 开发模板
,是今天开始才取名为 unibest
的。
2024-01-29 <周一>
🔥2024年最好用的 uniapp 开发模板,近一个月 star 数飙升!🔥
这里贴一张最新的 star history
对比图: 传送门
后面就过年了,那个时候也创建了第一个微信交流群,我还记得我在老家打扫卫生与群友聊天的一幕幕,老家后面就是一片竹林,门前是小片田野,远处是一条河,河对面是一座座山,风景不错,哈哈。群友的人数我看着涨的,那段时候每天都进来几个,不知不觉就满200人了,后面进来的人只能通过加好友邀请进群。
过年回来,有空我就在弄我的项目,那段时间为了处理部署项目问题,借用 github actions
完成 CICD
, 部署我的 unibest
项目,于是又写了一篇文章。
2024-02-16 <周五>
手把手教你github actions 部署 pages,动态网页,静态网页,缓存优化,多分支部署等
那个时候内置的 UI库
是 uni-ui
,毕竟是官方的,但是样式比较丑,且组件不多,于是跟群友讨论,群友介绍了一些 UI库
,我们在这些 UI库
里面筛选,那个时候选好了 uv-ui
,于是又输出了一篇文章。
多说一嘴,后来发现没有 ts 加持的 uv-ui 还是不太好编写代码,于是后来又改为了 wot-ui
。
2024-02-20 <周二>
【unibest】 uniapp + vue3 模板 UI 框架选型
项目持续火热,有好几个群友加进来成为开发者,还有一些不是开发者的需要PR,但是他们不懂,于是又诞生了PR篇。
2024-02-24 <周六>
不知道开源项目如何提PR,2分钟教会你!
那个时候群友有好几个需要 多语言
的,于是也为群友开发好了 多语言
接入,并提供了最佳实践,顺便还输出了未来对多语言的规划,文章如下:
2024-02-26 <周一>
【unibest】uniapp 最佳多语言实践,更高的视野,降维打击!
顺便说下,我为此还设计了一个调查问卷,发到多个群里面看看到底有多少需要。调查出来的结果有点吓人,60
多个问答中有 1/3
的有 多语言
需要,一看就知道数据不准,估计是有 多语言
需要的人点进去填写问卷了,没有这个需要的懒得去点。但是也让我知道了,这 20
个人是有 多语言
需要的。
后期
接下来公司任务比较繁忙,每天都加班到8点半以后,基本没啥时间处理 unibest
,还有不少任务和想法没有完成。基本周末别人玩的时候,才有空写代码,写文章。
那个时候开了3个微信群了,新进来的群友总是会问一些问题,比如 route-block
,为啥有 pages.config.ts
又有 pages.json
,有啥区别,为啥 pages.json
的代码会被覆盖等问题。
群友问我有没有文档,嗯,时候写文档了。于是我又使用 vitePress
搞了个文档出来。
那个时候想通过脚手架生成项目,又在周末 fork
了 unihepler
团队的 create-uni
,快速实现了 create-unibest
,在此感谢 unihepler
团队。
经过几个周末的加班写代码,写文档,终于在周六的9号基本完成,并且在这天写了一篇文档介绍文章:
2024-03-09 <周六>
🎉 unibest 官方文档出来啦 🎉
接下来,公司业务持续很忙,只能利用周末时间,断断续续写了一些 feature,在 3周
后的一个周末,又写了一篇介绍文档新功能的文章。
2024-03-30 <周六>
# 🎉 号外,unibest 官方文档新增6个新特性 🎉
至此,文章基本写完了,一共输出了 13
篇文章。
项目的话,base
模板基本成型,后续只会在 demo
模板增加一些新功能,所以请放心使用。(新项目基于 base
模板创建,详情请看 🎉 unibest 官方文档出来啦 🎉 篇。
浅谈,开源真不容易
文章太长了,剩下部分内容留着下次再写吧,晚安友友们~
最近比较忙,估计要到下一个周末才能更新出来~
总结
本文描写了 unibest
诞生全过程,以及期间的技术文章输出。
另外还探讨了做开源项目的不易,希望大家善待为爱发电的开源作者,并适当 捐赠
+打赏
。
unibest 链接地址
最后还是贴几个链接,不然你们想要的都找不到~~
文档地址:unibest.tech/ (2024年11月搞定的域名) -docs/) 同一仓库生成的内容。
github
地址:github.com/feige996/un…
gitee
地址:gitee.com/feige996/un…
旧的 github: github.com/codercup/un…
旧的文档地址(留个纪念):codercup/unibest-docs
微信交流群
因不能贴引流二维码,有需要的同学请看 官方文档微信群 。
别忘了
一键三连
噢,O(∩_∩)O嘻嘻~