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

Utilities Bundle Laravel Package

kunstmaan/utilities-bundle

A small Symfony utility bundle from Kunstmaan providing shared helper classes for slug generation, string and class manipulation, and common file/URL tasks. Useful across Kunstmaan bundles and handy for everyday backend work in Symfony projects.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

This package informs one narrow, mostly negative decision: whether to build a feature on it, or on the platform's native primitives instead.

  • Build vs. buy vs. use-the-framework (the core decision): The bundle exposes exactly two capabilities — string encryption (Rijndael/"256") and OS process management (background launch, status check, kill). Both are already solved in the Laravel/Symfony core: Illuminate\Encryption\Encrypter (AES-256-CBC/GCM, key rotation via APP_PREVIOUS_KEYS, authenticated encryption) and the Queue/Worker + Symfony Process stack (Horizon for supervision, Process::stop() for termination). The decision this package supports is rejecting the dependency and mapping each helper to a first-party equivalent — a net reduction in surface area.
  • Roadmap input — "do we need a shared internal utility package?": If multiple teams are reaching for this, the real roadmap item is a small internal acme/support package wrapping Laravel's Crypt facade and the Process component behind our own interfaces. That gives the reuse the bundle promises, with a maintained foundation underneath.
  • Security/compliance triage: The cipher helper is an audit trigger, not an enabler. Rijndael with a 256-bit block size (MCRYPT_RIJNDAEL_256) is not AES — AES is fixed at a 128-bit block — so ciphertext produced here typically cannot be decrypted by standard AES tooling in other systems, and mcrypt-based implementations commonly default to ECB with no IV or authentication. If any team is using this for PII, tokens, or secrets, this becomes a "remediate now" item for the security roadmap, not a feature decision.
  • Legacy portfolio / sunset decision: With 0 dependents, 12 stars, and a last release of 2014-06-16, the supported decision is contain and schedule removal wherever it appears, and do not introduce it anywhere new. This is a dependency-hygiene line item, not a capability investment.
  • Reference use case only: Where it has residual value is as a reading artifact — a ~200-line worked example of PID-based background process handling for an engineer who has never built one. That is a documentation decision, not an adoption decision.

Net: this package does not unlock a feature, a segment, or a market. It removes ambiguity about whether we need to build process/crypto helpers ourselves — and the answer is no.

When to Consider This Package

Adoption criteria are extremely narrow. Consider it only if all of the following hold:

  • You are maintaining a Symfony 2.x-era application that already pulls in the Kunstmaan bundle family, and the alternative is a larger, riskier refactor than leaving the dependency in place.
  • You need the exact behavior it implements — Rijndael-256-block ciphertext must remain decryptable for data already at rest (i.e., you are reading legacy ciphertext, not writing new ciphertext).
  • The environment still provides mcrypt (PHP ≤ 7.1) or you are prepared to fork and reimplement the cipher path on openssl_*.
  • You have reviewed the actual cipher mode/IV/key handling in source and are comfortable with it, and you have reviewed the shell helper for command construction and escaping.
  • The process-management need is genuinely trivial (fire-and-poll of a single local script) and you accept unmanaged PID files.

Look elsewhere — decisively — when:

  • The target is any Laravel application (8/9/10/11/12). This is a Symfony bundle, not a Laravel package; there is no service provider, no publishable config, no facade. Integration cost is a bespoke wrapper, which is strictly worse than calling Crypt::encryptString() and Process directly.
  • Data must be portable to other systems (partner APIs, analytics, backups) — Rijndael-256-block output will not round-trip through standard AES libraries.
  • You need authenticated encryption / tamper detection / key rotation — required for anything touching user data today.
  • You need reliable background work: retries, backoff, concurrency limits, visibility, dead-letter handling. That's a queue, not a shell wrapper. A PID-based "is it running?" check has inherent PID-reuse races and no supervision.
  • Supply-chain hygiene matters (it always does): no release in ~11 years, no dependent base to surface regressions, no security response path, PHP 5 idioms, and no evidence of maintained CI. Adopting it makes your team the maintainer of record by default.
  • Privilege boundaries matter: a helper whose API includes "run this app" and "kill this process" concentrates command-execution power in application code. In any multi-tenant or compliance-scoped product that is a finding waiting to happen.

How to Pitch It (Stakeholders)

To executives (one line): This is a stale 2014-era Symfony utility bundle that duplicates two things our framework already does better — encryption and background process control. Recommendation is no adoption; treat any existing usage as a small cleanup item, not an investment.

To engineering leadership: Low effort, negative-to-neutral value. It offers a cipher helper and a shell/PID helper. Both are superseded by first-party primitives (Laravel's Crypt/encrypter with authenticated AES and key rotation; queues + Horizon + Symfony Process for background work and termination). Last release June 2014, zero dependents, twelve stars — no community safety net, no security response path, and the cipher uses a 256-bit block size that is not AES and therefore not interoperable with standard tooling. Any team currently using it for sensitive data should be migrated off as a security remediation; the estimated work is small because the API surface is two services.

To engineering (the working summary): Don't add it. Map cipher->encode/decode → Crypt::encryptString / decryptString (or Encrypter with a rotated key ring if you must read old ciphertext). Map background launch/status/kill → dispatch a queued job; if you truly need a local long-running process, use Symfony\Component\Process under a supervisor. If someone needs the mechanics, point them at the bundle's source as a reference implementation, not a dependency. If we must keep it for a legacy Symfony 2.x app, pin it, document the owner, and put a removal date on it.

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.
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle
glavweb/extra-bundle
glavweb/api-bundle
glavweb/admin-bundle
adachsoft/api-version-bundle
elsayed85/laravel-api-exceptions
ouhssini/laravel-demo-mode
daworks/ncloud-outbound-mailer-driver
gp247/cms
ignibyte/aic-gates
nexa-merchant/blog
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
cgv/localized-resource