Download the PHP package edi-prasetyo/indonesia-location without Composer
On this page you can find all versions of the php package edi-prasetyo/indonesia-location. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download edi-prasetyo/indonesia-location
More information about edi-prasetyo/indonesia-location
Files in edi-prasetyo/indonesia-location
Package indonesia-location
Short Description Indonesia administrative region database for Laravel
License MIT
Informations about the package indonesia-location
🇮🇩 Indonesia Location for Laravel
edi-prasetyo/indonesia-location adalah package Laravel untuk menyediakan data wilayah administratif Indonesia (Provinsi, Kabupaten/Kota, Kecamatan, Desa) lengkap dengan relasi database dan model Eloquent.
Package ini dirancang untuk:
- Laravel 11 ke atas
- Import data wilayah Indonesia dari file JSON
- Relasi internal berbasis
id(bukan hanya kode) - Siap dipakai langsung oleh developer
Fitur
- ✅ Data lengkap: Provinsi, Kabupaten/Kota, Kecamatan, Desa
- ✅ Relasi internal (
province_id,regency_id,district_id) - ✅ Tetap menyimpan
coderesmi wilayah Indonesia - ✅ Eloquent Model siap pakai
- ✅ Artisan command untuk install & import data
- ✅ Install Data sesuai kebutuhan : provinsi, kota/kabupaten, kecamatan, kelurahan
- ✅ Bisa digunakan untuk Web & Mobile API
Instalasi
Install package via Composer:
Package ini mendukung auto-discovery, tidak perlu menambahkan Service Provider secara manual.
Import Data Wilayah Indonesia
Jalankan command berikut:
- Publish file migration sesuai kebutuhan
- Menjalankan migration
- Mengimpor data wilayah Indonesia
Partial Install (Opsional)
Kamu bisa menginstall data berdasarkan level wilayah:
Fresh Install
Untuk menghapus semua data dan install ulang:
Atau kombinasi dengan level tertentu:
Struktur Database
provinces
| column | type |
|---|---|
| id | bigint |
| code | string |
| name | string |
| latitude | decimal |
| longitude | decimal |
regencies
| column | type |
|---|---|
| id | bigint |
| province_id | bigint (FK) |
| code | string |
| province_code | string |
| name | string |
| latitude | decimal |
| longitude | decimal |
districts
| column | type |
|---|---|
| id | bigint |
| province_id | bigint (FK) |
| regency_id | bigint (FK) |
| code | string |
| province_code | string |
| regency_code | string |
| name | string |
| latitude | decimal |
| longitude | decimal |
villages
| column | type |
|---|---|
| id | bigint |
| province_id | bigint (FK) |
| regency_id | bigint (FK) |
| district_id | bigint (FK) |
| code | string |
| province_code | string |
| regency_code | string |
| district_code | string |
| name | string |
| postal_code | string |
| latitude | decimal |
| longitude | decimal |
📘 Penggunaan Model
- use EdiPrasetyo\IndonesiaLocation\Models\Province;
- use EdiPrasetyo\IndonesiaLocation\Models\Regency;
- use EdiPrasetyo\IndonesiaLocation\Models\District;
- use EdiPrasetyo\IndonesiaLocation\Models\Village;
Ambil semua provinsi
Dengan relasi
Contoh pencarian
🔗 Relasi Eloquent
- Province → hasMany → Regencies
- Regency → hasMany → Districts
- District → hasMany → Villages
Semua relasi menggunakan foreign key berbasis ID untuk performa optimal.
Kebutuhan Sistem
- PHP 8.2+
- Laravel 11 atau lebih baru
- Database MySQL / PostgreSQL / SQLite