Download the PHP package laravelldone/db-cleaner without Composer
On this page you can find all versions of the php package laravelldone/db-cleaner. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download laravelldone/db-cleaner
More information about laravelldone/db-cleaner
Files in laravelldone/db-cleaner
Package db-cleaner
Short Description Scan database tables for data quality issues (duplicates, typos, whitespace, casing) with a Livewire dashboard and REST API
License MIT
Informations about the package db-cleaner
DB Cleaner
A Laravel package that scans your database tables for data quality issues and helps you fix them.
The Problem
Real-world databases accumulate noise over time:
"john doe","John Doe","JOHN DOE"— same person, three records" Engineering ","engineering"— same department, inconsistent casing"Managment","Management"— typo that slipped past validation" [email protected]"— leading space breaking lookups
These issues corrupt reports, break deduplication logic, and make search unreliable. DB Cleaner detects and fixes them without guesswork.
What It Does
| Issue | How Detected |
|---|---|
| Exact duplicates | GROUP BY col HAVING COUNT(*) > 1 |
| Fuzzy duplicates | Levenshtein distance (configurable threshold) |
| Soundex matches | soundex() grouping |
| Leading/trailing whitespace | col != TRIM(col) |
| Double spaces / tabs | SQL LIKE patterns |
| Casing inconsistencies | GROUP BY LOWER(col) HAVING COUNT(DISTINCT col) > 1 |
| Typos | similar_text() against high-frequency values |
Each column gets a quality score (0–100) and a letter grade (A–F). Scores are stored so you can track improvement over time.
Installation
Quick Start
Configuration
config/db-cleaner.php — the key options:
CLI
PHP / Facade
REST API
Protect the API with a token in .env:
Dashboard
Visit /db-cleaner for a Livewire dashboard with:
- Quality scores and grades per table
- Issue breakdown chart (Chart.js, no npm required)
- Score trend over time
- Run scans and apply cleaning from the browser
Safety
- No data is ever modified without explicit confirmation —
--dry-runin CLI,"confirm": truein the API,confirm: truein PHP - All cleaning runs inside a
DB::transaction() - Fuzzy analysis is skipped on tables over 5,000 rows by default (
max_rows_for_fuzzy) to prevent memory issues
Requirements
- PHP 8.2+
- Laravel 11 or 12
- Livewire 3 or 4
License
MIT
All versions of db-cleaner with dependencies
illuminate/support Version ^11.0|^12.0
illuminate/database Version ^11.0|^12.0
illuminate/console Version ^11.0|^12.0
illuminate/http Version ^11.0|^12.0
livewire/livewire Version ^3.0|^4.0
spatie/laravel-package-tools Version ^1.9