|
|
1 hafta önce | |
|---|---|---|
| bin | 1 hafta önce | |
| build | 1 hafta önce | |
| frontend | 1 hafta önce | |
| .gitignore | 1 hafta önce | |
| README.md | 1 hafta önce | |
| Taskfile.yml | 1 hafta önce | |
| TengTuToolbox.exe | 1 hafta önce | |
| apiserver.go | 1 hafta önce | |
| backup.ps1 | 1 hafta önce | |
| bilifeed.go | 1 hafta önce | |
| githubwatch.go | 1 hafta önce | |
| go.mod | 1 hafta önce | |
| go.sum | 1 hafta önce | |
| greetservice.go | 1 hafta önce | |
| main.go | 1 hafta önce | |
| main_android.go | 1 hafta önce | |
| mousealert_other.go | 1 hafta önce | |
| mousealert_windows.go | 1 hafta önce | |
| newsfeed.go | 1 hafta önce | |
| ntfy.go | 1 hafta önce | |
| pccontrol.go | 1 hafta önce | |
| poem.go | 1 hafta önce | |
| qrcode.go | 1 hafta önce | |
| qrcode_test.go | 1 hafta önce | |
| screenshot.go | 1 hafta önce | |
| settings.go | 1 hafta önce | |
| settingsservice.go | 1 hafta önce | |
| stockquote.go | 1 hafta önce | |
| ticker.go | 1 hafta önce | |
| timesync.go | 1 hafta önce | |
| timesync_other.go | 1 hafta önce | |
| timesync_windows.go | 1 hafta önce | |
| todoremind.go | 1 hafta önce | |
| todoremind_test.go | 1 hafta önce | |
| translate.go | 1 hafta önce | |
| translate_test.go | 1 hafta önce | |
| trending.go | 1 hafta önce | |
| webservice.go | 1 hafta önce |
基于 Wails v3 的桌面工具箱应用。前端使用原生 HTML/CSS/JS + Vite 构建,后端使用 Go;主窗口内嵌多个网页 Tab,并提供新闻聚合、Github 仓库监听、股票行情、记录/待办编辑、硬件监控、主机管理、工具(Web 服务 / 翻译 / 二维码)、聊天与设置等面板。
# 开发模式:启动应用并为前后端启用热重载
wails3 dev
# 构建生产版本,输出到 bin/ 目录
wails3 build
| Tab | 说明 |
|---|---|
| 笔记 | 内嵌网页,地址可在设置中修改;底部 footer 显示随机古诗(水平滚动,可配置颜色/字号/刷新间隔) |
| 控制 | 内嵌网页,地址可在设置中修改 |
| 博客 | 内嵌网页,地址可在设置中修改 |
| 网址 | 常用网址卡片,点击在浏览器打开,列表在设置中维护 |
| 新闻 | 聚合煎蛋、头条热榜、腾讯科技/财经、Solidot;命中关键词置顶高亮,已查看标题灰显,条数可设置 |
| Github | 监听配置仓库的最新提交与 release,本地版本低于最新版提示更新;Latest 之后的 Pre-release/草稿版本也会列出(仅展示,不参与更新比较);「本地 xxx」徽标与版本徽标均可点击跳转到对应 releases 列表 |
| 股市 | 自选股实时行情,点击行查看分时 / 日K;交易时段自动刷新,休市用较长间隔 |
| 记录 | 文本记录文件编辑,支持 Markdown 实时预览(编辑 / 预览切换,预览用后端 gomarkdown 渲染),路径可在设置中修改 |
| 待办 | 每行一个待办任务,可勾选完成、编辑、删除;每条可设置提醒时间,到点自动弹出置顶消息窗提醒(即使窗口隐藏也会触发) |
| 硬件 | 内嵌硬件监控页,地址可在设置中修改 |
| 工具 | 开发/运维辅助工具:Web 服务(选目录开启浏览服务)、翻译(中英互译)、二维码生成、发送 ntfy 消息、ntfy 聊天室、古诗词、屏幕截图;各功能区默认折叠,点击标题展开 |
| 服务 | 内置 API 服务状态、电源命令状态与 Gin 日志(「清空日志」在标题右侧);原截屏功能已迁移至工具页 |
| 聊天 | 内嵌网页,地址可在设置中修改 |
| 设置 | 按「系统 + 各 Tab」分组展示配置项,保存后立即生效 |
笔记页 footer 显示的水平滚动随机古诗,数据来源为 古诗词网接口(https://poetry.palemoky.com/api/poems/random,由 古诗词网 提供)。每次随机取一首,返回标题 / 作者 / 朝代 / 内容;可在设置中调整显示开关(禁止显示)、文字颜色、字号、滚动速度(秒/轮,数值越小滚动越快)、朗读按钮;速度保存后立即生效。
股票与新闻滚动条显示在屏幕顶部,位置与配置(宽度、字号、颜色、速度、背景透明)均可在设置中调整;位置会在拖动时自动保存,下次启动恢复。
index.html 或 readme.md,README 会自动渲染为 HTML);启动后点击地址链接可在系统浏览器打开。https://ntfy.sh),供手机 / 浏览器 / 其他设备即时提醒。主题历史保存于用户配置目录 TengTuToolbox/ntfy_topics.json。通过内置 API 触发系统级鼠标提醒:平时鼠标为正常样式;触发后鼠标图标闪烁(白↔红,约 250ms 周期),光标下方浮出半透明提示文字,可覆盖任意窗口(系统级),默认 8 秒自动消退。详见 mousealert_windows.go。
main.go:Go 后端入口,创建应用、主窗口、系统托盘,注册服务与窗口事件,启动时间广播与待办提醒调度协程greetservice.go:Wails 示例服务(GreetService,用于验证 Go↔JS 绑定链路)settingsservice.go:设置读写、新闻抓取、Github 监听、行情查询、翻译、二维码、截屏、Web 服务、待办读写、Markdown 渲染、API 状态等核心服务settings.go:AppSettings 结构体、默认值与字段校验newsfeed.go:新闻来源抓取(煎蛋 / 头条 / 腾讯 / Solidot)trending.go:GitHub Trending 热门仓库抓取与自动翻译bilifeed.go:B站关注动态抓取(需 cookie)githubwatch.go:Github REST API 提交与版本监控(含 Latest 之后的版本列出)stockquote.go:股票行情与分时 / 日Kticker.go:滚动条窗口(位置保存)poem.go:主窗口首 Tab footer 随机古诗(水平滚动)apiserver.go:内置 API 服务(健康检查、通知、窗口控制、电源命令、鼠标提醒、屏幕截图等)pccontrol.go:电源控制(关机 / 重启 / 休眠 / 锁屏)timesync.go(及 _windows.go / _other.go):系统时间同步screenshot.go:屏幕截图(多显示器拼接,返回 PNG base64 data URI)webservice.go:工具页 Web 服务(目录选择、静态文件服务、README 渲染)translate.go:工具页翻译(MyMemory 免费接口 + 中英文自动检测 + 限流提示)qrcode.go:工具页二维码生成(go-qrcode,返回 PNG data URI)ntfy.go:工具页 ntfy 消息推送与聊天室(POST ntfy.sh 指定主题、SSE 长连接订阅实时接收消息,主题历史持久化记忆)todoremind.go:待办提醒调度(解析待办文件中的 @ 时间 标记,到点广播事件)mousealert_windows.go:系统级鼠标提醒(Windows,WH_MOUSE_LL 全局钩子 + 置顶透明覆盖层 + GDI 绘制)mousealert_other.go:鼠标提醒非 Windows 空实现frontend/:前端代码(HTML、CSS、JavaScript)frontend/src/main.js:前端逻辑,负责调用后端服务、监听后端事件(含 Tab 管理、工具页折叠、待办提醒弹窗、记录 Markdown 预览等)frontend/src/ticker.js:滚动条逻辑frontend/src/lunar.js:农历与节日计算wails.json:Wails 项目配置wails3 devwails3 build,输出 bin/腾图工具箱.exe(UPX 压缩)go build .cd frontend && npm run buildwails3 task windows:build BIN_DIR=Z:/ 可编译到指定目录并 UPX 压缩(见 build/windows/taskfile.yml)wails3 dev 会根据 bin/config.yaml 的配置决定输出目录npm run build 完成后再单独 go build(后端需要读取构建后的前端 dist 清单,并行会导致 embed 失败)wails3 generate bindings 重新生成前端绑定cd frontend && npm run build,再 wails3 build 才能打入产物