kenya_administrative_divisions 1.0.3 copy "kenya_administrative_divisions: ^1.0.3" to clipboard
kenya_administrative_divisions: ^1.0.3 copied to clipboard

The Kenya Administrative Divisions is a package that provides functionality to retrieve administrative divisions data about Kenya. It includes information about counties, constituencies, and wards..

Kenya Administrative Divisions #

The Kenya Administrative Divisions is a package that provides functionality to retrieve administrative divisions data about Kenya. It includes information about counties, constituencies, and wards.

Changelog #

See CHANGELOG.md for all changes.

Table of Contents #

Installation #

To install the package, add it to your pubspeck.yaml

Run

dart pub add kenya_administrative_divisions

Usage #

Getting started #

To use the library, instantiate the KenyaAdministrativeDivisions class:

import 'package:kenya_administrative_divisions/kenya_administrative_divisions.dart';

// We will assign kad to kenya administrative divisions
final kad = KenyaAdministrativeDivisionsBase;

Methods available #

Helper methods #

// Get All the data
final List<County> counties = kad.getAll;

// Get county names
final List<String> countyNames = kad.getCountyNames;
// Get constituency names
final List<String> constituencyNames = kad.getConstituencyNames();
final List<String> constituencyNames = kad.getConstituencyNames(countyName: 'Mombasa');
final List<String> constituencyNames = kad.getConstituencyNames(countyCode: 1);

Get Counties #

// Get county
final List<County> allCounties = kad.getCounties();
final List<County> county = kad.getCounties(countyCode: 1);
final List<County> mombasa = kad.getCounties(countyName: 'Mombasa');

Get Constituencies #

final List<Constituency> constituencies = kad.getConstituencies();
final List<Constituency> mombasaConstituencies = kad.getConstituencies(countyCode: 1);
final List<Constituency> mombasaConstituencies = kad.getConstituencies(countyName: 'mombasa');

Get wards #

final List<Ward> wards = kad.getWards();
final List<Ward> mombasaWards = kad.getWards(countyCode: 1);
final List<Ward> mombasaWards = kad.getWards(countyName: 'mombasa');
List<Ward> changamweWards = kad.getWards(constituencyName: 'changamwe');

API reference #

Data Models #

The package exposes three primary strongly-typed models to represent Kenya's administrative structure:

County

  • int code: The official ISO/IEBC county code (1–47).
  • String name: The name of the county.
  • List<Constituency> constituencies: Sub-divisions belonging to this county.

Constituency

  • String name: The name of the constituency.
  • List<Ward> wards: The electoral wards contained within this constituency.

Ward

  • Ward is a zero-cost Extension Type that wraps a standard Dart String. It represents the literal name of the ward directly without any sub-properties or nested fields. It can be treated and evaluated exactly like a String.

KenyaAdministrativeDivisions Class #

This is the main interface interface for retrieving data. Instantiate it to access the following methods:

1. Data Retrieval Methods

Method Return Type Named Parameters Description
getAll List<County> None (Getter) Fetches the complete hierarchical dataset of counties, constituencies, and wards.
getCounties() List<County> {int? countyCode, String? countyName} Filters and returns list of counties matching criteria. Returns all if no params provided.
getConstituencies() List<Constituency> {int? countyCode, String? countyName} Returns all constituencies, or filters them specifically by county parameters.
getWards() List<Ward> {int? countyCode, String? countyName, String? constituencyName} Returns all wards, or narrows down by county context or a explicit constituency name.

2. Utility & Helper Methods

Method Return Type Named Parameters Description
getCountyNames List<String> None (Getter) Returns a list of all 47 unique county names.
getConstituencyNames() List<String> {int? countyCode, String? countyName} Returns names of constituencies across the country or isolated by county constraints.

Support #

If you like this project, you can support me with starring ⭐ this repository.

License #

MIT

Made with 💜

2
likes
140
points
116
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

The Kenya Administrative Divisions is a package that provides functionality to retrieve administrative divisions data about Kenya. It includes information about counties, constituencies, and wards..

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

path, resource_portable

More

Packages that depend on kenya_administrative_divisions