Skip to content

UWillno/uwillno.github.io

Repository files navigation

uwillno.com


语言

readme_en.md机翻效果太差已经移除,请使用浏览器翻译。
The machine translation of readme_en.md is too poor and has been removed. Please use a browser to translate it.

介绍

用Qt开发的静态博客,并利用Cloudflare的服务实现一些动态功能。

Cloudflare Pages上托管,仅并发请求不同静态托管站点的文件块并跳转第一个完成的托管站。

静态托管站

Github Vercel Cloudflare EdgeOne Netlify Azure GitLab Render IPv6 Tunnel

IPV6/Tunnel站点本质为物理机上的一个Docker,也用于测试,如果访问时我正在测试,你可能体验到一些BUG。Tunnel站使用Cloudflare Tunnel穿透,IPV6站使用DDNS-GO。IPV6站点必须你具备IPV6才能访问,通常情况只适用于你用数据流量访问。

由于WASM和一些资源很大,部分站点流量很容易被刷到上限,可以视情况切换站点访问。

静态功能可以直接体验,动态功能额外说明。

AI摘要、评论/留言、朋友圈……

采用Cloudflare Workers、R2、D1实现,Workers内用到Resend服务给管理人员发邮件,因为没存储用户明文邮箱,用户不会收到邮件,也不用担心暴露。

服务器程序

Qt开发,采用Cloudflare Tunnel穿透,内置3个服务器,聊天服务器(ws,常关)、监控服务器(ws)、安卓服务器(http,有一个配套纯Java开发的APP,博客中只为手机监控提供数据)。

其它端(内部使用)

和WebAssembly端是一套源码。因为没跨域限制,多了一个设置镜像的功能,方便从不同静态托管站请求静态资源。Android上有额外的权限申请。PC端有生成RCC和RSS的功能。RCC是包含QML的,不用重新编译wasm即可更新内容,wasm只负责请求加载即可,所以这依旧是静态的,需要提交并推送。这也是数据统计里Other比较多的原因之一。

物理机出状况的话部分功能异常为正常现象。

可以说动态部分完全是依赖于Cloudflare的,计划有变的话,后续可能精简以确保博客能低成本运行。

近期改动


因一些原因,将逐步大量精简交互、布局、提示、历史信息……,不过会保证基本可用,应该也不会动功能。

仅支持部分Markdown语法,对多媒体、表格、列表、引用……按个人习惯进行了扩展、增强,开销也更大(该场景未启用标题导航)。

默认为一次性完成全部解析和控件生成,对于正常博客文章是完全可以的,也可以避免一些抖动,不建议尝试即时预览嵌套过多或内容过长的文章(包括默认测试用例)。

mdeditor

文章里记录太不方便更新,所以专门移到功能页记录。(顺便试试多边形控件)

coffelog

监视器

新增安卓监视器,手机性能太差,非长连接实现,不监视性能。

monitor

monitor

长按可展开/收缩。

文件压缩/解压

zstd

统计可视化

统计功能

后续移除了外部库的代码统计,统计更加真实,包含全平台、归档代码、试验代码, 相对于特定平台整体行数可能偏多一些。

交互方式/监控

移除了主要导航栏、工具栏……统一所有平台交互(太多自定义或平台预设我觉得好混乱、繁琐)。改用一个悬浮按钮,完成所有操作。

长按收缩/展开

image-20260115122855454image-20260115122940201

内存监控

WASM上记录为历史最高内存占用,如果接近4G或你的浏览器设备限制,及时释放一些后台任务,避免崩溃。

单击弹出操作抽屉

image-20260115123222437

双击/右键单击返回

浏览器的返回和手势返回也可以触发

音乐播放器

image-20260115124018170

调整至抽屉方便交互,点击歌词调整进度,换掉了之前瞎眼的动态渐变,删掉了旋转效果。

image-20260115124253675

  • 对文件进行打包解包(签名验签、加解密)

  • 密钥拆分合并(XOR/Shamir)

后台任务

image-20260115124549170

部分耗时操作放进后台其它线程处理,避免阻塞UI,处理过程中不影响其它操作,不过需要注意内存,及时释放。

历史


纯静态,文章(markdown、html)、AI摘要

image-20251220154329087

image-20251220154152670

旧版

内部使用的可随时发布编辑的短文。支持所有类型文件及媒体预览。

image-20250925163447838

玄学相关功能不建议采用真太阳时。

image-20250704160229525

lunar的调用。并不能很好的与Qt兼容,可能会有bug,报错信息已隐藏。

image-20250704160249404

排盘,远古版本直接迁移不保证可用。

image-20250704160340431

image-20250704173521223

按照书籍重写的算法,和天纪程式进行对照过,测试的用例结果都一致,异常用例可以发我看看。

image-20250704160442105

image-20250704173559129

数据来源未知,未校验。

image-20250704160502737

image-20250704173701749

image-20250925163256046

image-20250704174008237

image-20250704193108898

物理机服务器不定期启动

image-20250704193221808

仅实验,建议使用安卓版本QWMC

image-20250704193413779

image-20250704193549478

image-20250704193648970

改自Qt官方示例 Qt Quick Controls - Text Editor | Qt Quick Controls

image-20250704193708227

image-20250704193820710

image-20250704193840642

image-20250704193857546

image-20250704193957182

实测部分用例显示异常,经测试似乎除了C#版本,其它版本也存在类似问题,官方Skeleton Viewer、WebGL和其它cpp版本都显示异常,又是比较老的分支,修复应该是不太可能了。

屏幕截图_2-11-2025_154634_cloudflare.uwillno.com

部分内容更新不及时,因为开发者特别懒。

image-20251220154914101

代码统计

image-20251220154953755

路由地址已变,建议查阅RSS

旧版

image-20250704192548096

本程序image-20250704192623476

本站历史/留言

image-20250704192526733

本人

image-20250704192658563

image-20250925163127610

其它

设置(粒子系统、效果、语言、主题、帧率显示、背景切换、音乐播放器开关)

image-20250704194050755

image-20250925163602110

明亮/黑暗模式

音乐播放器

image-20250704194157886

主题设置

image-20251220154814688

液态玻璃效果

image-20251220154612726

竖屏

image-20250704194447724

横屏

image-20250704194540493

……

注意

  • .wasm文件比较大,注意流量消耗,部分地区需要代理访问
  • 很多BUG是Qt框架自身的,部分模块处于技术预览阶段,偶尔会折腾升级Qt版本导致不稳定
  • 已放弃兼容Android WebView,改用多线程构建以提高运行效率
  • 上面内容可能失效或改变。

引用


源码


额外


域名对于我已经是不小的开销了,而且对于Qt for WASM应用能实现静态托管已经是很不容易了,最好的选择是克隆仓库本地部署运行(仅仅需要一个mkcertpython http.server )。
由于静态托管与前端的特性,任何防护几乎无用,逆向是非常容易的,而且我的关键代码和无服务器的动态逻辑已经开源。
我的隐私倒不在意,但是请大佬不要对API进行攻击,我很穷的,没能力支付任何付费计划的账单。
若发现严重的安全漏洞请及时与我联系,十分感谢。

历史版本

原本都保留在仓库的,最近缩减下仓库大小,移除了,截图纪念下。

widgets版本

大学时尝试Qt for webassembly乱写的,只有几个自用功能。

old

1.0.5Preview

基于Qt Quick重新开发,多线程构建。后期过于混乱,难以维护,故重构。

1.0.5

About

Qt for WebAssembly Blog Qt开发的个人博客

Topics

Resources

Stars

Watchers

Forks

Contributors