emiliopedrollo/world
Laravel package providing a complete world dataset: countries, states, cities, timezones, currencies, and languages. Query via a World facade or built-in API routes with filters and field expansion, backed by migrations and a seeder for populating the database.
world.php) allow customization for schema compatibility or performance tuning (e.g., indexing).states?filters[country_id]=182) and field selection (e.g., fields=cities), but lacks advanced features like pagination or nested includes out of the box./api/countries routes might clash with existing Laravel routes unless namespaced or prefixed.spatie/laravel-countries) with better community support?users, addresses) to identify gaps/overlaps with the package’s data.vendor:publish --tag=world).config/world.php for table names/optional fields (if needed).db:seed --class=WorldSeeder) during a maintenance window or via CI/CD.['US', 'CA']) with World::countries()->data./api/countries in frontend/backend services.composer.json for exact versions).scopeByRegion()) by publishing and modifying the package’s files.world.cities to User.address).--force) or migration adjustments.world_* tables in database backups.storage/logs/laravel.log for migration errors; validate table names in world.php.World::cities()->whereHas('state')) may break if package schema changes.country_id on states table) and caching (e.g., Redis for frequent queries like World::countries()).--parallel flag if supported.throttle:60).cities could grow large). Consider partitioning or archiving old data.| Failure Scenario | Impact | Mitigation |
|---|---|---|
| Seeding fails (timeout/error) | Broken data integrity | Retry logic in CI/CD; monitor queue:failed. |
| Database migration conflicts | Deployment blocker | Test migrations in staging; use --force cautiously. |
| API route conflicts | 404/500 errors | Prefix routes (e.g., /geo/api/countries). |
| Data staleness | Incorrect country/timezone mappings | Implement automated sync checks. |
| High query load | Slow responses |
How can I help you explore Laravel packages today?