Shopify/packwerk
Good things come in small packages. observed · 2026-08-28
Health v2 · maintenance only
88/100
- Activity 99
- Release rhythm 67
- Longevity 100
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: 199
- age_days: 2170
- days_rel: 8
- days_push: 8
- n_releases_24m: 4
Adoption not part of the score
1907 stars · 122 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
Packwerk is a Ruby gem from Shopify that enforces architectural boundaries and modularization in Rails applications by grouping files into packages and checking constant references against package dependencies. It helps large existing codebases become more modular incrementally without blocking development.
Use cases
- enforce package boundaries in a rails monolith
- modularize a large ruby codebase
- detect cross-package constant references
- define public APIs for ruby packages
- prevent dependency violations between modules
- gradually split a rails app into packages
When to choose
- you maintain a large Rails 6+ app using Zeitwerk and want enforced modularity
- you want to catch boundary violations in CI before code review
- you're incrementally decomposing a monolith into packages
When to avoid
- your project is not Ruby or doesn't use Zeitwerk autoloading
- you need a general-purpose dependency graph visualizer rather than enforcement
- your codebase is small enough that modular boundaries add overhead without benefit
Facets
library · maturity active
linter developer-tools cli developer-tools web-development backend ruby cli modularization architecture-boundaries rails code-structure static-analysis
1 source
- readme: https://github.com/Shopify/packwerk · fetched 2026-08-28 · cb0328791e23
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| Shopify/packwerk | main | 88 |
For agents
markdown · JSON · MCP: product_card(name="Shopify/packwerk")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem