WORKHUB · 开源项目

工具、资料、创作与生意,本来就不该散落在十几个标签页里。

独立开发者的日常,大概是这样的:写代码在 VS Code,记灵感在备忘录,收藏夹在浏览器,客户资料在表格,发票和回款又是一套 Excel。每个工具都不差,但它们彼此不认识。

WorkHub 想做的不是再加一个工具,而是把这些入口收进同一个地方:一个能离线运行、数据留在本机、浏览器和 Windows 桌面都能打开的个人工作空间。

01 它是什么

一句话:独立开发者的「一人公司」工作台。

它把工作台、万能工具台、资料库、创作、客户与项目、财务和偏好设置放在一个应用里。数据存在本机 SQLite,外部同步和翻译只在用到时联网。

浏览器里打开 127.0.0.1:5277,或者直接双击桌面版,看到的是同一套界面、同一份业务代码。

login-wx

登录页:左侧是产品说明,右侧是本地账号表单;默认只监听回环地址

首次启动会种入一个本地管理员账号。默认口令与修改方式写在仓库 README 里,登录后请第一时间改掉。

02 一屏进入工作状态

工作台不是把数字堆满,而是回答一个问题:今天该干什么?

顶部可以随手快记,回车就进笔记收件箱;一排指标覆盖笔记、收藏、代码片段、在跑项目、今日任务、本月开票和待收金额;再往下是逾期任务与欠款、最近笔记、最新收藏、常用工具、开源仓库动态和路线图。

home-wx

工作台:今日要盯的、最近内容与常用入口集中在一屏

03 七个模块,覆盖一人公司的日常

  1. 工作台 —— 今日待办、本月开票与回款、最近笔记收藏、常用工具,一屏看全。
  2. 万能工具台 —— Base64、URL 编码、Unicode、Hex、JWT、JSON / YAML / XML 互转、SQL 格式化、Cron、时间戳、单位与颜色换算、正则、文本比对、哈希与 HMAC、GUID、密码、二维码等近 30 个离线工具。
  3. 资料库 —— 链接收藏、网页快照、RSS 订阅,以及覆盖全部内容的 SQLite FTS5 全文检索。
  4. 创作 —— Markdown 笔记、长文写作、代码片段与发布记录,写完直接出稿。
  5. 客户与项目 —— 客户档案、项目列表、任务看板,以及开源仓库的动态同步。
  6. 财务 —— 发票台账(PDF / OFD / 图片识别)、回款计划、收支统计与逾期提醒。
  7. 偏好设置 —— 账号与角色、外部服务密钥、定时任务、备份与恢复、日志审计。

04 顺手的小工具,和找得到的内容

工具台的逻辑很简单:左边选工具,右边输入即算。绝大多数工具没有登录墙、没有额度,也不碰网络,计算全在本机完成;翻译工具除外,它按需调用你配置的百度翻译。

检索基于 SQLite FTS5,笔记、文章、收藏、代码片段和 RSS 条目统一进索引,边写边索引,不用手动维护。

toolbox-wx

万能工具台:近 30 个离线小工具,左边选、右边算

search-wx

全文检索:FTS5 统一索引笔记、文章、收藏、片段与订阅

05 把生意也管起来

客户、项目、发票、回款是一条线。发票支持 PDF、OFD 和常见图片格式,OCR 在本机完成;台账里直接看已收、待收和逾期,月底不用再对一遍 Excel。

finance-wx

发票台账:开票、回款、逾期与本月收支一表跟踪

06 一份业务代码,两种运行形态

这也是 WorkHub 最想分享给 .NET 同行的部分:业务代码只写一份。

architecture-wx

  • WorkHub 是 net10.0 的 Razor 类库:页面、菜单、[WebApi] 契约、[Service] 实现、模型与纯函数都在这里,不引用任何 Windows API。
  • 浏览器端由 WorkHubWasm 负责前端,WorkHubWeb 用 ASP.NET Core 托管 /api/*、Cookie 认证、定时任务与访问控制。
  • 桌面端由 WorkHubWin 用 WinForms + BlazorWebView 把同一套页面装进窗口,单进程直接调用服务,离线也能用。
  • 平台差异通过四个接口注入:附件存储、密钥保护、OCR 与数据库备份。两个宿主各自实现,业务层只依赖接口。
  • 框架能力来自同仓的 Known:认证、路由、组件、附件与调度都不重复造轮子。

页面、契约、服务实现只写一份,宿主只补运行环境。

07 数据与安全,默认收紧

个人数据最怕两件事:不明不白地上云,和稀里糊涂地暴露。WorkHub 的选择是默认收紧:

  • 默认只监听 127.0.0.1:5277;绑定到非回环地址还走明文 HTTP 时,启动直接拒绝。
  • 内置 IP / CIDR 访问白名单;默认只绑定回环,需要局域网访问时再按需追加。
  • 百度翻译、GitHub 等外部服务密钥用 Windows DPAPI 按当前用户加密,换机器或换账户需重新录入。
  • 附件读取校验登录态;网页快照额外带 CSP sandbox,快照里的脚本不会在 WorkHub 域内执行。
  • 备份是一个 zip:数据库在线快照、附件、配置和恢复说明,可另配第二备份目录与保留份数。

settings-wx

偏好设置:账号角色、服务密钥、备份恢复、定时任务与日志审计

08 技术栈

.NET 10 · C# 14 · Blazor WebAssembly · ASP.NET Core · WinForms + BlazorWebView · SQLite + FTS5 · Windows DPAPI · Windows.Media.Ocr · Known · Apache-2.0

如果你也在维护「Web + 桌面」两套前端,或者想看看 Blazor 在真实项目里的分层方式,这个仓库可以当个参考。项目以 Apache-2.0 协议开源,仓库在 gitee.com/known/WorkHub。

09 适合谁,不适合谁

适合

独立开发者、接私活的工程师;想把资料、客户和账目放在一起的人;喜欢本地优先、不愿把数据交给云的人;以及想参考 Blazor 分层写法的 .NET 同行。

暂时不适合

需要多人协作和细粒度权限的团队;主要用手机的人;以及要求 Linux / macOS 桌面版的用户。业务层本身是跨平台的,但 Web 与桌面两个宿主目前只支持 Windows。按数据归属隔离的资源级权限也还没有实现。


把它变成你自己的数字工作室

OPEN SOURCE · WORKHUB

如果 WorkHub 帮你省下一点在工具之间切换的时间,欢迎去 Gitee 点一个 Star;也欢迎提 Issue,说说你的工作流和想要的功能。

仓库地址:https://gitee.com/known/WorkHub

运行环境:.NET 10 SDK + Windows;浏览器版一条命令启动,桌面版发布后双击即用。


把工具、资料、创作和生意,收进同一个空间。
数据在你手里,工具也在你手里。


原文地址: https://www.cveoy.top/t/topic/qHV7 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录