# jalkoby/squasher

Squasher - squash your old migrations in a single command

Repository: https://github.com/jalkoby/squasher
Canonical: https://ross.abutalabs.com/products/squasher
Language: Ruby
License: MIT
License Family: permissive
Topics: database, activerecord-migrations, schema, ruby
Last push: 2024-12-16T19:31:17+00:00

## Health v2 (maintenance only)
Score: 32/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 0, release rhythm 35, longevity 100
- inputs: {"age_days": 4609, "days_push": 625, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1539, forks 58 (observed 2026-08-28T04:05:00.334520+00:00)

## What it is
Squasher is a Ruby command-line gem that compresses old ActiveRecord migrations into a single migration reflecting the final database state as of a given date. It reduces migration file clutter so that running db:migrate or bootstrapping a fresh database is fast in large Rails projects.

## Use cases
- squash old rails migrations into one file
- speed up db:migrate on a large rails project
- clean up years of accumulated migration files
- make creating a new database faster
- compress migrations prior to a specific date
- generate a schema-like migration from existing migrations

## When to choose
- you maintain a long-lived Rails or ActiveRecord app with hundreds of migrations
- you want a one-command way to archive migration history
- you need faster fresh database setup for CI or onboarding

## When to avoid
- your project has few migrations and migrate is already fast
- you rely on data inserted by old migrations, since squashed migrations drop inserted records
- you are not using ActiveRecord migrations

## Facets
- artifact type: cli-tool
- maturity: active
- function: database, developer-tools, cli
- domain: databases, developer-tools, web-development
- platform: cli, ruby
- tags: activerecord, rails, migrations, schema, ruby-gem

## Member repositories
- jalkoby/squasher (main) score 32

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:00.334520+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:30:54.315110+00:00, confidence not recorded.
  - readme: https://github.com/jalkoby/squasher (fetched 2026-08-28T04:05:00.334520+00:00, sha ae2e226ea627)
- Data as of 2026-08-30T08:39:29.467469+00:00.
