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

Filament Location Laravel Package

theabhishekin/filament-location

Filament Location provides a ready-made location manager for Filament panels, letting you browse and manage countries, states, and cities through a clean admin interface. Ideal for apps that need reusable, structured geographic data without building custom resources.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

  • Recommendation: Pilot in an existing Filament admin panel after confirming Filament version support, Google Maps billing/API-key requirements, and coordinate storage strategy. It is not a fit for non-Filament Laravel apps or high-volume geospatial workloads without extension.
  • Architecture fit: Adds location capture, display, and distance helpers directly into Filament resources and Eloquent models. Good for back-office CRUD where location is an attribute, e.g. stores, assets, customers, job sites. It is an admin-panel convenience layer, not a full geospatial platform.
  • Integration feasibility: Low-to-moderate effort if the app already uses Filament and has a Google Maps JavaScript API key. Work involves Composer install, config/assets publishing, adding LocationPicker to forms, LocationColumn to tables, and HasLocation to models. The main decision is JSON vs separate lat/lng columns.
  • Technical risk: v1.0.0 maturity, Google Maps vendor lock-in and usage costs, browser geolocation consent, API-key exposure/restriction, JSON-column portability, and distance sorting/filtering performance. Filament version compatibility is not explicit in the release notes and is a gating risk.
  • Key questions: Which Filament versions are supported? What exact Composer constraints apply? Which Google Maps APIs are required and who owns billing? Is distance sorting/filtering server-side or client-side? How are invalid/null coordinates handled? Does it support MySQL/PostgreSQL JSON consistently? Are map assets loaded only where needed? What is the license, support model, and upgrade policy?

Integration Approach

  • Stack fit: Best fit is Laravel 11–12, PHP 8.1–8.3, and a Filament admin panel. Requires Google Maps JavaScript API access. If the product does not use Filament, this package is not applicable without adapting its components.
  • Migration path: Treat v1.0.0 as a fresh adoption. Add coordinate columns first, backfill existing addresses via a geocoding job if needed, then attach HasLocation to models and add LocationPicker/LocationColumn to one admin resource before expanding. If replacing an existing location field, run dual-write/read validation before cutover.
  • Compatibility: Confirm Filament major version and database support before commitment. JSON storage simplifies schema changes but weakens indexing; separate lat/lng columns are better for filtering and later spatial indexing. CSP must allow Google Maps domains, and API keys should be restricted by HTTP referrer.
  • Sequencing: 1) Confirm Filament/PHP/Laravel matrix and Google Maps billing. 2) Decide storage model and add validation. 3) Install/configure package and API key. 4) Add trait and test distance helpers. 5) Pilot picker/column on one resource. 6) Validate geolocation permissions, map modal, sorting/filtering, and CSP. 7) Document fallback and roll out.

Operational Impact

  • Maintenance: Small, early-stage package. Pin versions, monitor upstream releases, and retest on Filament/Laravel upgrades. Google Maps API changes and pricing updates create ongoing operational work. Claimed test coverage and CI are positive signals but do not replace internal review.
  • Support: Likely community/individual-maintainer support rather than enterprise SLA. Assign an internal owner for Google Maps billing, API-key rotation, and CSP configuration. Provide a manual lat/lng fallback for geolocation or map failures.
  • Scaling: Admin usage is usually low concurrency, but Google Maps map loads are billable, so set quotas and alerts. Haversine calculations in PHP will not scale over large tables; use bounding-box prefiltering or database spatial functions where distance sorting/filtering is required.
  • Failure modes: Missing/restricted API key, Google Maps quota/outage, browser geolocation denial, CSP blocking, invalid coordinates, JSON schema mismatch, unsupported database behavior, or a Filament upgrade breaking the plugin. The UI should degrade gracefully rather than lose location data entry entirely.
  • Ramp-up: Low for Filament developers; moderate for teams unfamiliar with Google Maps billing, API-key restrictions, consent, and geospatial data quality. Run a short POC and define data-validation and fallback standards before production use.
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.
mehedimi/laravel-amp-mail
happones/laravel-vue-i18n-generator
jwerd/inertia-table
siberfx/flysystem-wasabi
hollyit/token-replace
ippanelcom/laravel-sdk
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