2023 → 2024. I love coding.

Development temporarily terminated.

首先还是必须要说的是,我暂时终止了我全部开发活动。我在GitHub的主页上已经更新了个人信息

Development temporarily terminated.

Development temporarily terminated.

理由很明显,我必须要停下开发的脚步了,备战高考很明显是一件更为重要的事情,所以,大约是明年一直到六月份高考结束前,我估计都不会有什么开发活动了...

希望高考完还有人记得我这个废物吧...

Frontend Framework -- Jwc.js

其实我也分不清这个项目到底是 22 年的还是 23 年的.. 不管了反正一视同仁为 23 年吧哈哈哈。

很可惜,这个项目在今年我只完成了最基本的工作,即「编写 Class Component」,下一步的「Functional Component」却迟迟没有出现,期间我尝试不另外写一个 compiler 来实现,但是最终还是以失败告终

其实是几乎完成的了,但是最后失败在于我没法做到响应式

在 Functional Component 中使用 useProp 来创建 Prop,但是当我尝试生成 Class Component 的时候我发现我没有办法可以找到什么地方有 prop

除非写一个 compiler...

所以下一年如果想要继续发展 jwc 的话,路只有一条:compiler,不过还好的是不会像 vue template 那样如此的复杂,还需要配一套 IDE Extension 才能开发顺畅...

但是我依旧选择打算放弃了...

原因无他,SolidJS、Vue CustomElement,都能实现 Web Component,它们的生态很明显更丰富,编码也更成熟,相比之下 Jwc 没有任何可以赢过别人的地方...

下一年,我可能只会分配一小点时间来研究 Jwc 的下一步发展,但是如果它真的很复杂的话,我真的会考虑放弃它...

Backend Framework -- PF4N.js

于是,后面我就继续搞 Mog 了,其中看到了 Halo CMS,发现很成熟,而且也有插件系统,我于是开始研究它的插件系统的实现方法,发现使用了 PF4J 上游库。但是当我再去找 NodeJS 的 Plugin System 的时候,我找不到任何成熟库...

需求不就来了吗!我立马创建了 PF4N 项目,并且进行了基本的编码。目前它已经可以正常跑起来了,插件什么的也可以加载。

但是由于没有正式在生产环境中测试,我们暂时还是将其设置为了 Private 状态

https://github.com/pf4n

下一年,我可能将会把40%时间放在这里来发展 PF4N。

macOS App -- PhotosProcessor

这是人生中的第一次,第一次写 Swift, 第一次写 macOS App, 第一次用 Xcode,这些新奇的事物通过这次历程让我对他们有了短浅的认识。

一开始,我尝试使用ChatGPT来写这个软件,顺便写一个文章,结局是软件没写出来,我先觉得 ChatGPT 不行了… 语言和系统的各种breaking change 导致我在问的时候 ChatGPT 总是输出那些早就过时的内容,最后我还是前往 GitHub 找下别人怎么写的来解决的。

不过,欣喜的是目前这个软件的已有功能算是可以正常使用了,但是对我来说使用体验不是很好… 核心是设计的时候疏忽导致的,所以我还是得重构一轮才行...

下一年,我会把大量的时间放在这个项目里。把它做好了,才是做出了人生中第一个 macOS App,迈出了 macOS App 开发第一步!

CLI -- wlint

这是2023年的新年礼物哈哈

怎么说呢,我本来想着这个项目是一个难得的需求,但是后面才发现这个完全就没有什么太大用途。

先稍微介绍一下 wlint 吧。

它可以用来快速配置项目 linter 的工具。npx wlint,wlint 就可以自动获取合适的 lint 配置文件,并自动安装依赖项。

wlint 通过自动分析项目中的依赖项,并自动匹配配置类别来配置对应的 liner。例如,如果项目中安装了 react 包,它可以自动匹配 react 的配置。

但是当我向外宣传这个 CLI 的时候,我发现似乎没什么人感兴趣。主要是,大家使用的都是 template,而 template 里早就配好了 linter,那我这个项目就纯属没有用了...

害,但是我觉得还是得放点时间来迭代一下它。ESLint 变化了许多,如果我这里还不更新的话就真的不行了...

CMS -- Mog: Stage 3 → Stage 5

Mog 堪称我目前的最耗时项目,已经写 2 年了... 至今还在重构中。它所涵盖的东西太多了,甚至我觉得没有必要上这么多东西,就比如:微服务

个人开发,使用这个架构纯属就是nt,而且只是区区一个小博客,更nt了。

但是今年算是完成了 Stage 5,但是 Stage 6 一直停滞不前。

首先就是时间问题,多个项目并行,虽然我已经把大部分时间放在了 Mog 上了,但是如果你看 Stage 6 的话,你可以发现几乎都是中后台重构的问题,由于以前的编码问题(现在也有问题)中后台简直就是坨垃圾,我都不好评价了已经。

其次就是 Ecosystem 建设, Stage 6 我需要完成各大博客系统迁移插件的开发,这也是需要学习成本的,很明显,我需要上学,我完全没时间去学习他们。

下一年,我可能不会再把这么多时间放在 Mog 上了, 因为在后面,我有更想做的事情了,看下去吧!

AI -- stable-diffusion-webui-ipynb

23 年,出现了 Stable Diffusion 火爆全网,我跟随着时代步伐,了解到了 Google Colab,于是喜欢折腾的我写出了我人生中的第一份 Notebook。

鉴于热爱分享的想法,我直接把它开源了出来,希望能帮到一些人更好地使用 SD 画出自己第一张画

整个 Notebook 被我整得非常豪华,可选安装模型、可选安装扩展、可选 Tunnel、多平台支持、爬取CivitAI数据等等的功能我都整上了。README 里也有我浏览网络发现的各种东西。

我还自己弄了一个 Prompt Collection List,后面甚至还开发出了一个小网页,可以直接使用我的prompt + SD API生成图片,SD 的 API 我弄懂了,Markdown Parse 这下也弄懂了(对!我是直接解析我写的markdown的!)

很可惜...

Google 发现薅羊毛的人太多了,出现了限制代码运行政策,一堆 Notebook 再也无法正常使用. 我不甘心,我尝试破解限制代码运行策略,还真给我尝试出来了

你可以看 PR 里具体的方式(虽然现在已经无效了):fix: try to bypass colab detection by wibus-wee · Pull Request #20 · wibus-wee/stable-diffusion-webui-ipynb

我的 Notebook 继续苟延残喘了一段日子,当有一次我点开的 Notebook 尝试重回 SD 时,发现我写的绕过已经无效了,Google 检测的更加厉害了,从本来的代码检查,到 runtime 检查,可能还有磁盘内的文件名检查。

我无力了,只能宣告这个 Notebook DEPRECIATED。

在说再见的结尾,我说出了内心的话:How grateful I am to Google Colab for initially granting me the pleasure of experiencing the artistry of AI.

希望未来我有机会能自己装一台机子自己跑图吧!

Side Project -- icalingua-theme-telegram

我很喜欢 Telegram Desktop 的 UI,很不喜欢 QQ 的UI,但是恰好大家都在用 QQ 而不是 Telegram,这导致我一直想自己写一个桌面端软件来用,不过这时的我碰到了 Icalingua++

于是我就开始了小改造,一改不要紧,这个项目从原本的只有2个js、1个 css,直接发展到现在的 Rollup + TypeScript + SCSS + Release CI + Real-time Release CI,并且把功能都做成模块化了

我真的佩服我自己,我发现我写很多东西我很喜欢把它们都模块化,感觉这样对我而言更好看更舒适哈哈哈

但是到后面,我发现它很卡,不是我写的原因,是它本来就很卡,单单使用 Addon 和 Style 是无法改善的了,我最后还是没有继续维护下去了...

Side Project -- activation-script

模块化的还有这个项目。

先介绍一下吧:

利用 MiTM 拦截和操作各种应用程序提出的网络请求,来自动激活/修改软件部分功能

同样的,我把每一个服务都变成了模块,还上了 TypeScript + Rollup + Release CI,还写了个 Config Generator

不过目前这个项目还在开发,而且有一些服务其实是直接搬 Qiuchenly 的代码的

Communities

mx-space/docs

今年对 mx-space 的贡献主要在文档方面,我们重构了 mx-space 文档,并且加入了一些辅助安装的组件放在文档里

我们把大量不合理的文章布局通通删掉,并且把原有的内容进行了重组,也更新了一部份文档内容

希望用得开心吧~

Others

Plans

其实对于 24 年,我没有太多的计划,原因是我 24 年大半年的时间处于高考备考状态,肯定是不能碰代码了,不过既然写都写了,那还是定一下高考完之后的计划吧..

  • 完成 PhotosProcessor v1
  • 发布 Mog v2 Alpha
  • ... 想不到了,反正有什么做什么吧 😂

🎉 无限进步!

  • Loading...
  • Loading...
  • Loading...
  • Loading...
  • Loading...