PHPackages                             hoangphi/vietnam-maps - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. hoangphi/vietnam-maps

ActiveLibrary[Database &amp; ORM](/categories/database)

hoangphi/vietnam-maps
=====================

Vietnam's area database.

v1.3.4(2y ago)144.4k15MITPHPPHP ^7.2|^8.0|^8.1

Since Nov 22Pushed 2y ago1 watchersCompare

[ Source](https://github.com/hoangphidev/vietnam-maps)[ Packagist](https://packagist.org/packages/hoangphi/vietnam-maps)[ Docs](https://github.com/hoangphidev/vietnam-maps)[ RSS](/packages/hoangphi-vietnam-maps/feed)WikiDiscussions main Synced 3w ago

READMEChangelog (8)Dependencies (5)Versions (11)Used By (0)

Vietnam Maps
------------

[](#vietnam-maps)

Database of Vietnam's area.

Data are taken directly from the General Statistics Office of Vietnam.

[![Latest Version on Packagist](https://camo.githubusercontent.com/7fbbc7ddc5de45e4dc6a738284926d641170ff3296512cab9afaef6792265072/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f686f616e677068692f766965746e616d2d6d6170732e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/hoangphi/vietnam-maps)[![Total Downloads](https://camo.githubusercontent.com/6f557f38f60103b51bd2dfb805c51c3ec594a787a993b3f1245380eeed9264f6/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f686f616e677068692f766965746e616d2d6d6170732e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/hoangphi/vietnam-maps)

Install
-------

[](#install)

```
composer require hoangphi/vietnam-maps
```

Extracting
----------

[](#extracting)

### Method 1:

[](#method-1)

Extract directly via command:

```
php artisan vietnam-map:install
```

### Method 2:

[](#method-2)

#### Copy file config và migration

[](#copy-file-config-và-migration)

```
php artisan vendor:publish --provider="HoangPhi\VietnamMap\VietnamMapServiceProvider"
```

#### Customize config và migration

[](#customize-config-và-migration)

1. Rename table

Open file `config/vietnam-maps.php` and config:

```
'tables' => [
    'provinces' => 'provinces',
    'districts' => 'districts',
    'wards'     => 'wards',
],
```

2. Rename column

Open file `config/vietnam-maps.php` and config:

```
'columns' => [
    'name'        => 'name',
    'gso_id'      => 'gso_id',
    'province_id' => 'province_id',
    'district_id' => 'district_id',
],
```

3. Add column

Open the following migration files and customize if you need:

```
database/migrations/{datetime}_create_vietnam_maps_table.php
```

#### Run migration

[](#run-migration)

```
php artisan migrate
```

#### Download và import into database

[](#download-và-import-into-database)

```
php artisan vietnam-map:download
```

Usage with Models
-----------------

[](#usage-with-models)

1. Get all provinces, districts, wards

```
    use HoangPhi\VietnamMap\Models\Province;
    use HoangPhi\VietnamMap\Models\District;
    use HoangPhi\VietnamMap\Models\Ward;

   class DevController extends Controller
   {
       ...
       public function dev()
       {
           $provinces = Province::all();
           $districts = District::all();
           $wards = Ward::all();
           ...
       }
   }
```

2. Get data using relationship

```
    use HoangPhi\VietnamMap\Models\Province;

   class DevController extends Controller
   {
       ...
       public function dev()
       {
           $province = Province::first();
           $districts = $province->districts;
           ...
       }
   }
```

3. Relation in Province.php

```
    class Province extends Model
    {
        ...
        public function districts()
        {
            return $this->hasMany(District::class);
        }
    }
```

4. Relation in District.php

```
    class District extends Model
    {
        ...
        public function province()
        {
            return $this->belongsTo(Province::class, config('vietnam-maps.columns.province_id'), 'id');
        }

        public function wards()
        {
            return $this->hasMany(Ward::class);
        }
    }
```

5. Relation in Ward.php

```
    class Ward extends Model
    {
        ...
        public function district()
        {
            return $this->belongsTo(District::class, config('vietnam-maps.columns.district_id'), 'id');
        }
    }
```

Changelog
---------

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information what has changed recently.

Security
--------

[](#security)

If you discover any security-related issues, please email  instead of using the issue tracker.

Credits
-------

[](#credits)

- [Phi Hoang](https://github.com/hoangphidev)
- [All Contributors](../../contributors)

References
----------

[](#references)

1. [General Statistics Office of Vietnam](https://www.gso.gov.vn/dmhc2015)
2. [Vietnam Zone](https://github.com/kjmtrue/vietnam-zone)

License
-------

[](#license)

The Laravel framework is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT).

###  Health Score

37

—

LowBetter than 81% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity29

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity69

Established project with proven stability

 Bus Factor1

Top contributor holds 77.8% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~160 days

Recently: every ~257 days

Total

8

Last Release

916d ago

PHP version history (2 changes)v1.1PHP ^7.2|^8.0

v1.3.4PHP ^7.2|^8.0|^8.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/557a3eb75039e39d7f1635b552a16aa969390decd1aeeb8f92edce1ee2951289?d=identicon)[HoangPhi](/maintainers/HoangPhi)

---

Top Contributors

[![hoangphidev](https://avatars.githubusercontent.com/u/32218935?v=4)](https://github.com/hoangphidev "hoangphidev (7 commits)")[![amaisphihoang](https://avatars.githubusercontent.com/u/146047625?v=4)](https://github.com/amaisphihoang "amaisphihoang (1 commits)")[![bksphihoang](https://avatars.githubusercontent.com/u/217737676?v=4)](https://github.com/bksphihoang "bksphihoang (1 commits)")

---

Tags

databasegeneral-statistics-officelaravel-packagephpvietnamvietnam-areavietnam-databasevietnam-mapslaravellaravel-packagevietnam-mapsvietnam-zonevietnam-databaselaravel-package-vietnamlaravel-vietnam-mapshanhchinhvietnamhcvnhoangphidev

### Embed Badge

![Health badge](/badges/hoangphi-vietnam-maps/health.svg)

```
[![Health](https://phpackages.com/badges/hoangphi-vietnam-maps/health.svg)](https://phpackages.com/packages/hoangphi-vietnam-maps)
```

###  Alternatives

[spatie/laravel-health

Monitor the health of a Laravel application

87411.3M152](/packages/spatie-laravel-health)[laravel/ai

The official AI SDK for Laravel.

9782.1M161](/packages/laravel-ai)[clickbar/laravel-magellan

This package provides functionality for working with the postgis extension in Laravel.

438834.4k1](/packages/clickbar-laravel-magellan)[itpathsolutions/dbstan

Database Standardization and Analysis Tool for Laravel

442.1k](/packages/itpathsolutions-dbstan)[fleetbase/core-api

Core Framework and Resources for Fleetbase API

1232.2k16](/packages/fleetbase-core-api)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

245.2k](/packages/aedart-athenaeum)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
