6作者: JudoJJ2 个月前原帖
个人而言,我认为 JJ VCS(<a href="https://github.com/jj-vcs/jj" rel="nofollow">https://github.com/jj-vcs/jj</a>)在过去一年中的某个时刻达到了一个节点,让我很难找到继续使用 `git` 的充分理由。多年来,我拼凑了许多别名和 Bash 函数,以改善我的 `git` 工作流程,但在使用了 `jj` 之后,它可以与几乎任何 git 仓库兼容,并且与 Github 仓库的集成非常出色,我在使用 git 时遇到的所有工作流程问题不仅得到了解决,而且以我用简单脚本无法实现的方式得到了改善。 一个例子是 `op log`,它允许你回到仓库的任意时间点,并在你想要撤销合并、无意中进行了变基等操作时提供简单的 `undo` 和 `redo` 命令。 因为我坚信 JJ 目前是一个更干净、更强大的 `git` 版本,我希望它能够继续发展。与此同时,似乎缺少一个功能齐全的 GUI 来支持这个 VCS。虽然有一些插件可以与 VS Code 集成,还有一个正在开发中的插件以支持 Intellij,但我认为 JJ 提供的许多构造需要从头开始构建一个围绕 JJ 工作方式的 GUI。 目前,Judo for JJ 是一个处于开放测试阶段的 MVP。我尽力支持所有核心功能,尽管还有许多附加功能我会添加,比如原生合并支持、原生拆分等。这些大部分将基于 Beta 期间的反馈。 我非常感激 JJ 所建立的优秀社区,以及多年来我在 HN 社区中阅读的无数基于 VCS 的帖子,并希望在 Beta 期间能够获得大量真实使用的反馈——目标是成为一个功能齐全的桌面 GUI,类似于许多优秀的 git 产品。
1作者: offerrall2 个月前原帖
我需要一个工具来快速原型化我们公司的内部工具——PDF生成器、数据处理器、文件转换器,以便非技术同事也能使用。 func-to-web 可以从 Python 函数签名生成网页用户界面,且无需任何样板代码: ```python from func_to_web import run def divide(a: int, b: int): return a / b run(divide) # 网页用户界面位于 localhost:8000 ``` 对于更复杂的需求,它支持高级类型: ```python def process_data( scores: Annotated[ list[Annotated[int, Field(ge=0, le=100)]], Field(min_length=3, max_length=10) ], # 3-10 项,每项 0-100 files: list[ImageFile], # 多文件上传 email: Email, # 内置验证 notes: str | None = None # 可选字段,带切换 ): return FileResponse(pdf_data, "report.pdf") # 自动下载 run(process_data) ``` 主要特点: - *高级列表*:动态添加/删除,限制列表大小和项目 - *可选字段*:`Type | None` 创建切换开关 - *文件处理*:上传/下载带进度条,支持 GB 级文件 - *丰富输出*:自动显示 PIL 图像、matplotlib 图表或可下载文件 - *动态下拉框*:运行时生成的选项来自函数 - *多个函数*:自动生成索引页面 并不是想取代完整的网页框架,但对于内部工具和快速实用程序,这种方法比编写 HTML 表单更具优势。 已有 454 个单元测试。每天用于内部工具和快速原型开发。第一周获得了 150 个星标。 GitHub: [https://github.com/offerrall/FuncToWeb](https://github.com/offerrall/FuncToWeb) 在这里分享,希望其他人也会觉得有趣 :)