PHPackages                             kejubayer/bd-address-manager - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. kejubayer/bd-address-manager

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

kejubayer/bd-address-manager
============================

Laravel package for managing Bangladesh address hierarchy (Division, District, Upazila, Union) with multilingual support, helper functions, and JSON seeder.

v1.0.0(1mo ago)00MITPHPPHP &gt;=7.4

Since Apr 29Pushed 1mo agoCompare

[ Source](https://github.com/kejubayer/bd-address-manager)[ Packagist](https://packagist.org/packages/kejubayer/bd-address-manager)[ Docs](https://github.com/kejubayer/bd-address-manager)[ RSS](/packages/kejubayer-bd-address-manager/feed)WikiDiscussions main Synced 1w ago

READMEChangelogDependencies (3)Versions (2)Used By (0)

🇧🇩 BD Address Manager (Laravel Package)
=======================================

[](#-bd-address-manager-laravel-package)

A complete Laravel package for managing Bangladesh hierarchical address system:

> **Division → District → Upazila → Union**

Supports multilingual (English + Bangla), slug system, helper functions, caching, and full Laravel integration.

---

🚀 Features
==========

[](#-features)

- 📍 Complete Bangladesh address hierarchy (Division → District → Upazila → Union)
- 🌐 English + Bangla support
- 🔗 Slug-based system (SEO friendly)
- ⚡ Eloquent relationships
- 🌱 JSON-based seeder system
- 🧩 Global helper functions
- 🔍 Search across all levels
- 📦 Dropdown helpers (UI ready)
- 🧠 Full address generator (EN + BN)
- 🧹 Cache optimized queries
- 🛠 Artisan install command
- 🔌 Extensible API-ready structure

---

📦 Installation
==============

[](#-installation)

Install via Composer:

```
composer require kejubayer/bd-address-manager
```

---

⚙️ Quick Setup (Recommended)
============================

[](#️-quick-setup-recommended)

Run full installation in one command:

```
php artisan bd-address:install
```

---

🔥 Fresh Install (Reset DB)
--------------------------

[](#-fresh-install-reset-db)

```
php artisan bd-address:install --fresh --seed
```

---

🗃️ Manual Setup (Optional)
==========================

[](#️-manual-setup-optional)

If you want full control:

### 1. Publish migrations

[](#1-publish-migrations)

```
php artisan vendor:publish --tag=bd-address-migrations
```

### 2. Publish seeders

[](#2-publish-seeders)

```
php artisan vendor:publish --tag=bd-address-seeders
```

### 3. Publish JSON data

[](#3-publish-json-data)

```
php artisan vendor:publish --tag=bd-address-data
```

### 4. Run migrations

[](#4-run-migrations)

```
php artisan migrate
```

### 5. Run seeder

[](#5-run-seeder)

```
php artisan db:seed --class=BdAddressSeeder
```

---

🗃️ Database Structure
=====================

[](#️-database-structure)

### 📍 bd\_divisions

[](#-bd_divisions)

- id
- name\_en
- name\_bn
- slug

### 📍 bd\_districts

[](#-bd_districts)

- id
- division\_id
- name\_en
- name\_bn
- slug

### 📍 bd\_upazilas

[](#-bd_upazilas)

- id
- district\_id
- name\_en
- name\_bn
- slug

### 📍 bd\_unions

[](#-bd_unions)

- id
- upazila\_id
- name\_en
- name\_bn
- slug

---

🧠 Usage (Helper Functions)
==========================

[](#-usage-helper-functions)

### 📍 Get all divisions

[](#-get-all-divisions)

```
bd_divisions();
```

### 📍 Get districts by division

[](#-get-districts-by-division)

```
bd_districts($divisionId);
```

### 📍 Get upazilas by district

[](#-get-upazilas-by-district)

```
bd_upazilas($districtId);
```

### 📍 Get unions by upazila

[](#-get-unions-by-upazila)

```
bd_unions($upazilaId);
```

---

🌐 Full Address Generator
========================

[](#-full-address-generator)

### English

[](#english)

```
echo bd_full_address($unionId);
```

**Output:**

```
Mirpur Union, Mirpur, Dhaka, Dhaka

```

---

### Bangla

[](#bangla)

```
echo bd_full_address_bn($unionId);
```

---

🔍 Search System
===============

[](#-search-system)

```
bd_search('mirpur');
```

**Returns:**

```
[
  'divisions' => [],
  'districts' => [],
  'upazilas' => [],
  'unions' => []
]
```

---

🔗 Find by Slug
==============

[](#-find-by-slug)

```
bd_find_by_slug('division', 'dhaka');
bd_find_by_slug('district', 'dhaka');
bd_find_by_slug('upazila', 'mirpur');
bd_find_by_slug('union', 'mirpur-union');
```

---

📦 Dropdown Helpers (UI Ready)
=============================

[](#-dropdown-helpers-ui-ready)

### Divisions

[](#divisions)

```
bd_division_dropdown();
```

### Districts

[](#districts)

```
bd_district_dropdown($divisionId);
```

### Upazilas

[](#upazilas)

```
bd_upazila_dropdown($districtId);
```

### Unions

[](#unions)

```
bd_union_dropdown($upazilaId);
```

---

⚡ Eloquent Usage
================

[](#-eloquent-usage)

```
use Kejubayer\BdAddress\Models\Division;

$divisions = Division::with('districts.upazilas.unions')->get();
```

---

🌱 JSON Seeder Structure
=======================

[](#-json-seeder-structure)

```
[
  {
    "name_en": "Dhaka",
    "name_bn": "ঢাকা",
    "districts": [
      {
        "name_en": "Dhaka",
        "name_bn": "ঢাকা",
        "upazilas": [
          {
            "name_en": "Mirpur",
            "name_bn": "মিরপুর",
            "unions": [
              {
                "name_en": "Mirpur Union",
                "name_bn": "মিরপুর ইউনিয়ন"
              }
            ]
          }
        ]
      }
    ]
  }
]
```

---

🛠 Artisan Command
=================

[](#-artisan-command)

### Install Package

[](#install-package)

```
php artisan bd-address:install
```

### Fresh Install

[](#fresh-install)

```
php artisan bd-address:install --fresh --seed
```

---

⚡ Performance Features
======================

[](#-performance-features)

- Cached division data (24h)
- Indexed slug columns
- Eager loading support
- Optimized helper queries

---

🔌 Service Provider
==================

[](#-service-provider)

Auto-loaded via:

```
Kejubayer\BdAddress\BdAddressServiceProvider::class
```

---

📌 Requirements
==============

[](#-requirements)

- PHP &gt;= 7.4
- Laravel &gt;= 8

---

🚀 Roadmap
=========

[](#-roadmap)

- REST API support
- Admin CRUD panel
- AJAX cascading dropdown UI
- Geo-location integration
- Redis cache layer
- Google Maps integration

---

👨‍💻 Author
==========

[](#‍-author)

**Khondoker Eftakhar Jubayer**Laravel Developer ERP &amp; SaaS Builder Open Source Contributor

---

⭐ Support
=========

[](#-support)

If you like this package, consider giving it a ⭐ on GitHub.

###  Health Score

34

—

LowBetter than 75% of packages

Maintenance92

Actively maintained with recent releases

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity33

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% 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

Unknown

Total

1

Last Release

41d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/6655d8864b90508fae52cbbe858c707383d8e63541ca477ba9d1790e63c729d6?d=identicon)[kejubayer](/maintainers/kejubayer)

---

Top Contributors

[![kejubayer](https://avatars.githubusercontent.com/u/47379243?v=4)](https://github.com/kejubayer "kejubayer (1 commits)")

---

Tags

laraveladdresslaravel-packagelocationbangladeshbd addressdivision district upazila uniongeo databd address laraveladdress hierarchybangla english addressdropdown location laravel

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/kejubayer-bd-address-manager/health.svg)

```
[![Health](https://phpackages.com/badges/kejubayer-bd-address-manager/health.svg)](https://phpackages.com/packages/kejubayer-bd-address-manager)
```

###  Alternatives

[torann/geoip

Support for multiple Geographical Location services.

2.3k14.9M92](/packages/torann-geoip)[psalm/plugin-laravel

Psalm plugin for Laravel

3325.1M337](/packages/psalm-plugin-laravel)[renatomarinho/laravel-page-speed

Laravel Page Speed

2.5k1.7M11](/packages/renatomarinho-laravel-page-speed)[erag/laravel-pwa

A simple and easy-to-use PWA (Progressive Web App) package for Laravel applications.

177110.0k](/packages/erag-laravel-pwa)[interaction-design-foundation/laravel-geoip

Support for multiple Geographical Location services.

19253.0k3](/packages/interaction-design-foundation-laravel-geoip)[hibit-dev/geodetect

Automatically detect user's geo data based on their IP address

2321.5k](/packages/hibit-dev-geodetect)

PHPackages © 2026

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