jsdecena/mcpro
MCPro is a Laravel/PHP package by jsdecena that provides a lightweight, configurable toolkit for PHP applications. It installs via Composer and is designed for straightforward integration into Laravel projects, giving developers a focused set of utilities without heavy dependencies.
AddressProvider/LocationRepository interface so a second country can be added without rewriting forms, validators, and reporting.Consider it when:
Look elsewhere when:
composer.json can mean a fork-and-patch tax.To executives: Every PH customer interaction ends in an address, and right now that address is either free text (unreliable, un-analyzable, error-prone at fulfillment) or a per-lookup vendor bill. This package gives us the official Philippine geographic hierarchy — regions, provinces, cities and municipalities — as native application data at effectively zero licensing cost. It shortens the address-capture build, reduces form abandonment at checkout and onboarding, makes serviceability decisions automatic instead of manual, and gives finance and growth a stable key for tax jurisdiction and regional reporting. The adoption cost is small and reversible; the risk is not the package but the data, which we should own: one named owner, a semiannual refresh against the PSA PSGC release, and a fork kept in-house so we're never blocked by an unmaintained dependency.
To engineering: This is a models + migrations + seeders package, not a service. Import the schema, fork the repo, and put the geography data behind our own repository interface so we can swap in a maintained dataset or a second country without touching form code. Do not run the seeder in tests — load a fixture subset. Do not join user-facing text fields directly; store the code and resolve the label. Budget roughly a day to validate Laravel/PHP compatibility and another to build an idempotent import command plus a diff script against the PSA release. The win is a normalized address key we can join, validate, and segment on for years; the cost is one owned data pipeline.
How can I help you explore Laravel packages today?