- How do I install woenel/prpcmblmts in a Laravel application?
- Install it with composer require woenel/prpcmblmts, then publish the package migrations into your own database/migrations directory and run php artisan migrate followed by the package seeders. The package ships standard Laravel migrations and table seeders, so it slots into a normal artisan migrate and db:seed workflow. Avoid running the seeders on every application boot; treat them as a one-off, version-controlled data-migration step instead.
- Does this package provide Eloquent models and relationships, or only database tables?
- Based on the technical evaluation, the package is a data-provisioning package: it ships migrations and seeders for the region, province, city/municipality, and barangay hierarchy, and the value is the dataset rather than the code. It does not appear to expose a business-logic or query API layer. The recommended approach is to write your own thin domain layer (for example Barangay and CityMunicipality models plus a repository) over the published tables so you can swap or fork the dataset later.
- Which Laravel and PHP versions does woenel/prpcmblmts support?
- The package is described as fitting standard Laravel 9, 10, and 11-era stacks on MySQL or PostgreSQL, but you should confirm the exact composer.json constraints before adopting it. Check that the illuminate/support and php version requirements are wide enough for your upgrade roadmap. Because it is a single-maintainer package with a low project-health score, assume you may need to fork and widen the constraints yourself.
- Are the migrations publishable so I can avoid vendor migration conflicts?
- Publishing the migrations into database/migrations is strongly preferred and is the recommended integration path, since loading them directly from the vendor directory means an upstream change can collide with your schema. Publishing puts the migration files under your version control, so you own the ordering and any future edits. Confirm on install whether the service provider exposes a publish tag for the migrations, and check whether table names are prefixed or namespaced to avoid collisions with existing tables.
- Is the seeder idempotent and chunked for around 42,000 barangays?
- The dataset is large, roughly 17 regions, 80+ provinces, 1,600+ cities and municipalities, and 42,000+ barangays, so naive per-row inserts can be slow or memory-heavy. Before wiring it into CI or container startup, verify that the seeder uses chunked inserts and is safe to re-run without duplicating rows. If it is not idempotent, wrap it in your own guarded data-migration step.
- Does it use official PSGC codes as stable primary and foreign keys?
- This is one of the most important things to verify before adoption, because stable PSGC codes let you re-import updated data without breaking existing references in your application. If the tables use auto-incrementing IDs instead, you will need a reconciliation strategy whenever the hierarchy changes. Inspect the migration and seeder source to confirm how region, province, city, and barangay codes are stored and linked.
- How current is the Philippine address data, and how often is it updated?
- The package is a snapshot as of its last release, dated 2025-03-01, and there is no guarantee it tracks the official PSA PSGC release schedule. PSGC data changes regularly through barangay splits and mergers, cityhood conversions, and new provinces, so silently stale data becomes a compliance and operational liability for delivery routing or KYC matching. Plan to own a periodic refresh process, or fork the package and re-import updated PSGC data yourself.
- Which database drivers are supported, MySQL, PostgreSQL, or SQLite?
- The technical evaluation positions the package for MySQL or PostgreSQL Laravel applications, and seeder behavior can differ across drivers. SQLite is worth testing explicitly if you use it for local development or CI, particularly around insert size limits and transaction handling with tens of thousands of rows. Run the full seed against each driver you support before committing.
- Can I use this package for multi-country addresses or multi-tenant setups?
- It is a poor fit as the backbone of a multi-country address system, since it models only the Philippine administrative hierarchy. It is a strong fit when PH address capture, delivery routing, KYC onboarding, or government-form compliance is a core domain concern. For multi-tenant or multi-database applications, be aware that the package owns tables inside your schema, so you will need to handle migration ordering and per-tenant seeding yourself.
- What are the alternatives if I do not want to depend on a single-maintainer package?
- The realistic alternatives are importing the official PSA PSGC dataset into your own tables or using a maintained PH address dataset package, either of which avoids coupling your schema to a small project. woenel/prpcmblmts has 28 stars, a low health score, and single-maintainer risk, though its MIT license means you can fork it freely. If you adopt it, isolate it behind your own repository layer so replacing the data source later is cheap.