百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
P

packwerk

> 编程语言
开源

好东西装在小包装里。

1.9K stars0 点赞2 次浏览
访问官网GitHub

工具介绍

好东西装在小包装里。

Packwerk() (https://github.com/Shopify/packwerk/actions?query=workflow%3ACI)

"我知道你是谁,正因为如此,我知道你做了什么。" 这种知识是一个依赖项,会提高变更成本。 -- _Sandi Metz,《Ruby 中的实用面向对象设计》》 Packwerk 是一个 Ruby 插件,用于强制设置边界并模块化 Rails 应用程序。 Packwerk 可用于:

  • 将文件组合成包
  • 定义包级常量可见性(即具有公开可访问的常量)
  • 帮助现有代码库变得更加模块化,而不妨碍开发

前提条件

Packwerk 需要启用 Zeitwerk,而 Rails 6 就自带了 Zeitwerk。 Packwerk 支持 MRI 2.7 及更高版本。

演示

观看 1 分钟的视频演示,了解 packwerk 的工作原理。## 安装

  • https://github.com/bellroy/graphwerk 绘制您的包依赖关系图
  • https://github.com/rubyatscale/packwerk-vscode 将 packwerk 集成到 Visual Studio Code 中, 这样您可以在编辑器中查看违规情况
  • https://github.com/vinted/packwerk-intellij 将 packwerk 集成到 RubyMine 中, 这样您可以在编辑器中查看违规情况
  • https://github.com/rubyatscale/packs-rails 设置 Rails 自动加载, 以及 rspec 和 FactoryBot 集成, 适用于以扁平列表形式排列的包。 packs-rails 非常方便, 但对于自动加载, 我们建议使用 Rails::Engine。

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Ruby

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言