Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Anonymizer Laravel Package

php-shark-tank/anonymizer

Anonymizer for Laravel Eloquent models: define per-model rules to replace sensitive personal data with safe values, helping with GDPR compliance and anonymized test or export data.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Privacy/compliance workstreams (PII handling): The handler set (Callback, Faker, Null, hash) directly enables masking, pseudonymization, and nulling of sensitive fields — the core mechanics behind GDPR/CCPA data-minimization commitments and safe non-production datasets.
  • Build vs buy on data transformation: A declarative, per-property handler model plus object/property exclusion strategies is exactly the boilerplate we would otherwise hand-roll inside seeders, factories, and export jobs. Evaluate this as a cheap substitute for custom transformation layers before scoping internal work.
  • Roadmap input for fixtures/seeding: Lifecycle callbacks and optional event dispatching mean transformations can be hooked into existing model/job lifecycles without invasive refactors — relevant to any roadmap item involving demo tenants, staging data refresh, or anonymized analytics snapshots.
  • Use cases to validate in a spike: (1) anonymizing staging database copies, (2) deterministic fake data in seeders/tests, (3) hashing identifiers for cross-environment consistency, (4) excluding internal-only objects/properties from serialized payloads via exclusion strategies.
  • Decision on event-driven observability: Optional event dispatching is a gating factor — if audit logging of "what was transformed" is a requirement, this removes a build item; if not, it is neutral.

When to Consider This Package

Adopt/pilot when:

  • The application is Laravel/PHP and transformations are naturally expressed per-property or per-object.
  • Requirements are field-level masking/faking/hashing, not full database-level masking or streaming pipelines.
  • You need exclusions (skip certain objects or properties entirely) — this is a common source of custom code and a genuine differentiator here.
  • You want lifecycle hooks rather than wrapping every write path manually, and event dispatching is a plus rather than a hard requirement.
  • The dependency footprint matters and you prefer a narrow, single-purpose package over a full data-platform vendor.

Look elsewhere / defer when:

  • Maturity risk: This is effectively an initial release (1.0.2). Treat the public API — handler contracts, exclusion strategy interfaces, callback signatures — as not yet proven. Pin the version and expect breaking changes across minor bumps until a stable track record exists.
  • Compliance regimes requiring certified/audited tooling, DB-native masking, or reversible tokenization with key management.
  • High-volume or streaming workloads; the handler-per-property model implies object traversal, which may not fit bulk ETL.
  • Teams without Laravel's event system in play, or where adding a dependency for a single handler (e.g., just hashing) is overkill versus a few lines of code.
  • Any need for framework-agnostic reuse outside Laravel.

Mitigations before wider rollout: wrap handler registration behind an internal interface, add contract tests around exclusion behavior, and confirm event dispatch is off by default in production paths to avoid unintended listener load.

How to Pitch It (Stakeholders)

To executives: This is a small, low-cost PHP package that gives us a standard, declarative way to mask, fake, or hash sensitive data as it flows through our Laravel services. It directly supports our privacy and safe-staging commitments and replaces bespoke one-off scripts that are hard to audit. Risk is low and contained: it is an early-stage release, so we recommend a short, time-boxed pilot on staging data rather than a platform-wide commitment, with the version pinned and an internal wrapper so we can swap it out if needed.

To engineering: It provides pluggable value handlers (Callback, Faker, Null, hash), object/property exclusion strategies, lifecycle callbacks, and optional event dispatching — covering the transformation boilerplate we currently duplicate across seeders, factories, and export jobs. The value is the declarative model and the exclusion semantics, not the handlers themselves, which are individually trivial. Caveats: 1.0.2 is an initial release, so treat handler and exclusion-strategy interfaces as unstable; adopt behind an internal abstraction, cover exclusion behavior with tests, and keep event dispatching disabled unless we need audit hooks.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
adachsoft/changelog-linter
adachsoft/collection
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel
draftsmaninc/draftsman
square-bit/laravel-volition
himito/laravel-mailman
htinlynn/genius-helper
maco-studios/hephaestus
adachsoft/php-code-style