worksome/foggy-laravel
Foggy for Laravel anonymizes sensitive model data with configurable fogging strategies, making GDPR-style deletion and redaction simple. Define how each Eloquent attribute should be masked, replaced, or hashed, and let Foggy handle the rest automatically when users request erasure.
composer require worksome/foggy-laravel, then publish the package config (vendor:publish) and review the disk, dump, and retention options before wiring anything into a scheduler. The published config file is the best first read — it documents the supported drivers and defaults far better than the README's quickstart.s3 disk (separate bucket/prefix, scoped IAM user), point the package at it, and run the dump command manually once with verbose output before putting it on a schedule.mysqldump/pg_dump output straight through, or you were buffering to a temp file just to satisfy the old size requirement, you can drop that workaround.withoutOverlapping() and a generous runInBackground() if your dump exceeds the scheduler's tick window. Dispatch a separate job only for post-processing (notifications, retention pruning).config/filesystems.php, and have the package config reference the disk name rather than embedding credentials. This makes staging/production dumps land in separate buckets without code changes.dumps/{env}/{date}.sql.gz). It makes lifecycle rules and restore lookups trivial, and prevents a staging dump from overwriting a production one.mysqldump/pg_dump isn't on the web user's PATH.Storage::fake(). Assert that the expected object key exists and is non-empty in a feature test, and assert the command exit code. Don't assert on dump contents — that couples tests to the DB driver.aws s3 cp + mysql < (or equivalent) restore runbook rather than expecting the package to do it.composer.json and read every changelog between minor bumps. A fix: in 0.8.1 is safe, but 0.9.0 could rename config keys or commands without a deprecation cycle.EntityTooSmall errors, the stream is being flushed in sub-5 MiB chunks — check the uploader's part-size config.max_execution_time, the queue worker timeout, or the S3 HTTP client timeout. Set all three explicitly and log the duration.s3:PutObject only on the dump prefix. Dumps contain PII; enable SSE and block public access at the bucket level rather than relying on ACLs.-v, and temporarily point the disk at local to confirm the dump itself is valid before suspecting S3. Most "upload failed" reports are actually a dumper exiting non-zero..gitignore and keep AWS keys in env/secret manager, not in the published config.How can I help you explore Laravel packages today?