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

Case Converter Laravel Package

joachim-n/case-converter

A Laravel/PHP package for converting strings between naming conventions such as camelCase, snake_case, kebab-case and PascalCase, making it easy to transform identifiers and text consistently across your application.

Deep Wiki
Context7

Product Decisions This Supports

  • Build vs. buy (build wins): This package converts strings between case formats (camelCase, snake_case, kebab-case, PascalCase, etc.), a capability Laravel already ships via Str::camel(), Str::snake(), Str::kebab(), Str::studly(), and Str::headline(). The PM decision it supports is a clear skip adoption and use framework primitives call, not a procurement.
  • Feature scoping: Relevant only to low-differentiation plumbing — API field-name mapping, slug/token generation, import/export header normalization, config-key transformation, and code/seed generation. None of these warrant a dependency if core helpers cover them.
  • Roadmap priority: String-case handling is infrastructure, not an outcome driver. It should sit below user-facing roadmap items and be satisfied by the framework unless a concrete gap is demonstrated.
  • Edge-case coverage decisions: If a product surface ever needs case detection (guessing the input convention) or non-standard acronym handling, that becomes a narrow, spec-driven utility ticket — a ~20-line helper — rather than a third-party integration.
  • Use cases worth validating: Bulk data migrations from partner APIs, multi-tenant field mapping where external naming conventions differ, and developer tooling (scaffolding, generators). These are where a case-conversion need could realistically appear.

When to Consider This Package

Adoption criteria — all would need to hold:

  • A production Laravel/PHP version that lacks the required Str helpers (effectively none supported today), or a framework-agnostic PHP service where illuminate/support isn't available.
  • A required conversion (e.g., case detection, delimiter-aware or acronym-preserving parsing) that Str genuinely cannot express, backed by a written spec and test fixtures.
  • License clearance for GPL-3.0, which is a hard blocker for closed-source commercial/SaaS code in most legal reviews.

Look elsewhere (or build) when:

  • You are on Laravel — use Illuminate\Support\Str and delete the dependency before it enters the lockfile.
  • You need a maintained, permissively licensed string layer — prefer symfony/string, doctrine/inflector, or a short in-house helper with unit tests.
  • Supply-chain discipline matters: 11 stars, a single low-signal maintainer footprint, an unverified repository reference, and a last release of 2023-10-18 mean the cost of due diligence exceeds the cost of writing the function.
  • Any GPL-3.0 obligation conflicts with your distribution model.

How to Pitch It (Stakeholders)

To executives: Recommend not adopting this package. It performs trivial string reformatting that our framework already provides at zero cost and zero risk. Adding it would introduce a GPL-3.0 license obligation, an unmaintained third-party dependency, and supply-chain exposure in exchange for functionality we can reproduce in minutes. Net recommendation: use Laravel's built-in helpers; do not add a dependency.

To engineering: Treat this as a reference, not an integration. Reimplement any genuinely missing behavior as a small, tested helper in our own codebase so we control licensing, naming conventions, and edge cases. Block adoption in dependency review, cite GPL-3.0 and the dormant release cadence, and route any real gap (case detection, acronym preservation) through a scoped ticket with fixtures. This keeps the decision reversible and the codebase lean.

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.
skyraptor/chatter
edlugz/sasapay
abbasudo/artisan-route
mirvan/ippanel
ignibyte/aic-framework
glavweb/data-schema-bundle
glavweb/datagrid-bundle
tacticmedia/scim-server
uni-method/frame
neika-ai/sdk
adachsoft/php-code-style
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
adachsoft/api-version-bundle
cgv/localized-resource