01 Rundeck
这玩意儿可是个运维利器,简单来说,它就是一个自动化运维的“操作台”。
很多时候,咱们的运维、开发或者测试团队会有一些重复性的工作,比如部署应用、重启服务、执行一堆脚本。如果没有一个统一的管理界面,就得每个人自己去服务器上敲命令,不仅效率低,还容易出错。
Rundeck 就能很好地解决这个问题。它允许你把日常的运维任务(脚本、命令、HTTP请求等)都定义成“作业”(Job),然后通过一个漂亮的Web界面或者API去执行。你可以给不同的人分配不同的权限,让他们能“自助”完成一些常规操作,比如让测试人员自己部署测试环境,而不用每次麻烦运维同学。
非常适用于需要标准化运维流程、进行审计跟踪、或者实现团队内自助服务的场景。
项目地址:https://github.com/rundeck/rundeck
02 Devbox
这绝对是开发者的福音,特别是那些饱受“环境不一致”折磨的朋友。它的口号很霸气:“即时、简单、可预测的开发环境”。
你肯定遇到过这种情况:项目A需要Python 3.10,项目B需要Python 3.8,用系统自带的包管理器(比如brew或apt)来回切换,一不小心就把系统搞乱了。
Devbox 就是来拯救你的。你只需要在一个devbox.json文件里列好项目需要的所有工具(比如特定版本的Python、Node.js、数据库客户端等),然后执行devbox shell,它就会立刻给你创建一个干净、隔离的Shell环境。这个环境里的所有工具版本都是你指定的,不会污染你的笔记本电脑。
它最适合需要管理多个项目、每个项目依赖不同工具版本、或者想安全地尝试新工具的开发者。
项目地址:https://github.com/jetify-com/devbox
03 iii
iii,看名字就很特别,它的目标是“轻松地组合、扩展和实时观测每一个服务”。
现在的后端开发,动不动就是微服务、消息队列、定时任务、AI Agent……各种组件混在一起,管理和观察起来非常头疼。
iii 提出了一个非常简洁的模型:Worker(工人)、Function(功能)和Trigger(触发器)。你可以把任何服务(一个API、一个数据处理管道)都变成“Worker”,然后注册它拥有的“Function”和“Trigger”。比如,你可以用iii worker add queue快速添加一个队列功能。最酷的是,所有的Worker都实时在线,彼此可以互相发现和调用,并且所有的调用链路都是天然可观测的。
这让构建和调试复杂的分布式系统、AI Agent系统,或者需要高度可扩展的后端服务变得前所未有的简单。
项目地址:https://github.com/iii-hq/iii
04 SQLModel
SQLModel是FastAP的作者Seastián Ramírez(大佬tiangolo)推出的又一个“神器”。它的定位非常精准:用最简单、最优雅的方式在Python中操作SQL数据库。
你写一套代码,就能搞定数据库增删改查和API接口的数据校验与序列化,极大地减少了重复代码。它完美地继承了Pydantic对类型提示的支持,写代码时编辑器里的自动补全和类型检查爽到飞起。
如果你在用FastAPI写后端,并且需要和SQL数据库打交道,那SQLModel就是你的不二之选,它能让你的代码更简洁、更健壮。
项目地址:https://github.com/fastapi/sqlmodel
05 UniClipboard
它特别适合对数据隐私有极高要求、同时又需要在多个不同操作系统的设备间同步剪贴板的用户。
项目地址:https://github.com/uniclipboard/uniclipbo