This product was not featured by Product Hunt yet. It will not be visible on their landing page and won't be ranked (cannot win product of the day regardless of upvotes).
Custom Fresh v2.1.0 adds powerful new features for Laravel developers who need more control over database resets, including schema freezing, raw table preservation, configurable reset presets, related-table handling, fresh seeding, and safer foreign-key protection. 🧹
A major release making Laravel database resets more flexible, predictable, and safe, with better control over tables, migrations, related data, and reset workflows.
✨ Added
❄️ Add the `--freeze-schema` option to mark every migration for kept tables as already run, skipping pending alter migrations when you want to leave the current schema untouched.
💾 Add the `--keep-raw=` option to preserve tables that have no matching migration files.
🚫 Add the `--except=` option to drop tables that would otherwise be kept by `always_keep` or `--keep`.
🗑️ Add the `--drop=` option to drop only the listed tables while preserving everything else.
⚙️ Add the `--preset=` option to apply named table groups from the configuration with a single flag.
🔗 Add the `--with-related` option to also preserve tables linked by foreign keys to a kept table.
📋 Add the `--list` option to display discovered tables and the migration files that touch them.
📊 Add the `--json` option to output `--explain` and `--list` results as JSON for scripting and automation.
🌱 Add the `--seed-fresh` option to seed only dropped tables using the `table_seeders` configuration map.
🗄️ Add the `--drop-views` and `--drop-types` options so `fresh:custom` can match Laravel's `migrate:fresh` behavior.
🧩 Add the `keep_without_migrations`, `presets`, `table_seeders`, and `connections` configuration keys.
🔄 Add the `replace_migrate_fresh` configuration key so `migrate:fresh` can delegate to `fresh:custom` when keep lists are configured.
💬 Prompt interactively for tables when no tables, flags, or configuration lists are specified.
⚠️ Warn about foreign-key relationships that could break after the drop step, allowing you to add `--with-related` or adjust the keep list before running.
🧪 Add PHPUnit and Orchestra Testbench coverage with a GitHub Actions matrix covering Laravel 10 through 13.
🛠 Fixed
🔗 Preserve sibling tables created in the same `Schema::create` migration as a kept table, so keeping `sessions` no longer drops `users` and breaks later foreign keys.
🔄 Restore only already-applied migrations (and `Schema::create` files) for kept tables, allowing pending alter migrations to run correctly.
No comment highlights available yet. Please check back later!
About Custom Fresh on Product Hunt
“Keep specific tables during database resets”
Custom Fresh was submitted on Product Hunt and earned 3 upvotes and 1 comments, placing #117 on the daily leaderboard. Custom Fresh v2.1.0 adds powerful new features for Laravel developers who need more control over database resets, including schema freezing, raw table preservation, configurable reset presets, related-table handling, fresh seeding, and safer foreign-key protection. 🧹
Custom Fresh was featured in Open Source (68.8k followers), GitHub (41.4k followers) and Database (2.2k followers) on Product Hunt. Together, these topics include over 46.6k products, making this a competitive space to launch in.
Who hunted Custom Fresh?
Custom Fresh was hunted by Mahmoud Ramadan. A “hunter” on Product Hunt is the community member who submits a product to the platform — uploading the images, the link, and tagging the makers behind it. Hunters typically write the first comment explaining why a product is worth attention, and their followers are notified the moment they post. Around 79% of featured launches on Product Hunt are self-hunted by their makers, but a well-known hunter still acts as a signal of quality to the rest of the community. See the full all-time top hunters leaderboard to discover who is shaping the Product Hunt ecosystem.
Want to see how Custom Fresh stacked up against nearby launches in real time? Check out the live launch dashboard for upvote speed charts, proximity comparisons, and more analytics.
🚀 Custom Fresh v2.1.0 is here!
A major release making Laravel database resets more flexible, predictable, and safe, with better control over tables, migrations, related data, and reset workflows.
✨ Added
❄️ Add the `--freeze-schema` option to mark every migration for kept tables as already run, skipping pending alter migrations when you want to leave the current schema untouched.
💾 Add the `--keep-raw=` option to preserve tables that have no matching migration files.
🚫 Add the `--except=` option to drop tables that would otherwise be kept by `always_keep` or `--keep`.
🗑️ Add the `--drop=` option to drop only the listed tables while preserving everything else.
⚙️ Add the `--preset=` option to apply named table groups from the configuration with a single flag.
🔗 Add the `--with-related` option to also preserve tables linked by foreign keys to a kept table.
📋 Add the `--list` option to display discovered tables and the migration files that touch them.
📊 Add the `--json` option to output `--explain` and `--list` results as JSON for scripting and automation.
🌱 Add the `--seed-fresh` option to seed only dropped tables using the `table_seeders` configuration map.
🗄️ Add the `--drop-views` and `--drop-types` options so `fresh:custom` can match Laravel's `migrate:fresh` behavior.
🧩 Add the `keep_without_migrations`, `presets`, `table_seeders`, and `connections` configuration keys.
🔄 Add the `replace_migrate_fresh` configuration key so `migrate:fresh` can delegate to `fresh:custom` when keep lists are configured.
💬 Prompt interactively for tables when no tables, flags, or configuration lists are specified.
⚠️ Warn about foreign-key relationships that could break after the drop step, allowing you to add `--with-related` or adjust the keep list before running.
🧪 Add PHPUnit and Orchestra Testbench coverage with a GitHub Actions matrix covering Laravel 10 through 13.
🛠 Fixed
🔗 Preserve sibling tables created in the same `Schema::create` migration as a kept table, so keeping `sessions` no longer drops `users` and breaks later foreign keys.
🔄 Restore only already-applied migrations (and `Schema::create` files) for kept tables, allowing pending alter migrations to run correctly.