Benin Republic location data for web and mobile apps
For javascript version, please visit location_data_bj npm package
For raw data version, please visit bj_location_data_raw repository
Data Snapshot (As of 2023-12-21)
Department: 12
Town: 77
District: 546
Neighborhood: 5303
The
codeused in the dataset is an auto generated code. Please refer to the bj_location_data_raw repository for more information.
Note:
-
This package is pure dart package. It can be used in all platforms supported by dart.
-
For flutter users, note that we don't provide any widget for now.
Feel free to contribute.
In the dependencies: section of your pubspec.yaml, add the following line:
dependencies:
location_data_bj: <latest_version>- Get all departments
List<Department> departments = LocationData.departmentList(sortBy: 'asc');- Get all towns
List<Town> towns = LocationData.townsList(sortBy: 'asc');- Get all districts
List<District> districts = LocationData.districtList(sortBy: 'asc');- Get all neighborhoods
List<Neighborhood> neighborhoods = LocationData.neighborhoodList(sortBy: 'asc');- Get department by code
Department? department = LocationData.department('cot');- Get town by code
Town? town = LocationData.town('cot');- Get district by code
District? district = LocationData.district('cot');- Get neighborhood by code
Neighborhood? neighborhood = LocationData.neighborhood('cot');- Get towns of department
List<Town> towns = LocationData.townsOfDepartment('cot', sortBy: 'asc');- Get districts of town
List<District> districts = LocationData.districtsOfTown('cot', sortBy: 'asc');- Get neighborhoods of district
List<Neighborhood> neighborhoods = LocationData.neighborhoodsOfDistrict('cot', sortBy: 'asc');- Search data
List<LocationEntity> result = LocationData.searchData('cot', sortBy: 'asc');- Search departments
List<Department> result = LocationData.searchDepartments('cot', sortBy: 'asc');- Search towns
List<Town> result = LocationData.searchTowns('cot', sortBy: 'asc');- Search districts
List<District> result = LocationData.searchDistricts('cot', sortBy: 'asc');- Search neighborhoods
List<Neighborhood> result = LocationData.searchNeighborhoods('cot', sortBy: 'asc');Data Model:
- Base LocationEntity
abstract class LocationEntity {
String code;
String name;
LocationEntity({
required this.code,
required this.name,
});
}- Department
class Department implements LocationEntity {
@override
final String code;
@override
final String name;
Department({
required this.code,
required this.name,
});
}- Town
class Town implements LocationEntity {
@override
final String code;
@override
final String name;
final String departmentCode;
Town({
required this.code,
required this.name,
required this.departmentCode,
});
}- District
class District implements LocationEntity {
@override
final String code;
@override
final String name;
final String townCode;
District({
required this.code,
required this.name,
required this.townCode,
});
}- Neighborhood
class Neighborhood implements LocationEntity {
@override
final String code;
@override
final String name;
final String districtCode;
Neighborhood({
required this.code,
required this.name,
required this.districtCode,
});
}Please note that the dataset used is not official. It is based on the work done by Junior Gantin at this repo.
Bj Location Data is crafted with ❤️ by Dah-Kenangnon Justin and is open-sourced software licensed under the MIT license.
These person has helped me for cleaning the data and making it easier to use in dart and javascript:
- Big thanks to Jude AGBODOYETIN
- Big thanks to Yanel Aïna