New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

libgn

Package Overview
Dependencies
Maintainers
0
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

libgn

Manipulate geographical and administrative data about Guinea.

latest
Source
npmnpm
Version
0.0.2
Version published
Maintainers
0
Created
Source

libgn

libgn is a TypeScript/JavaScript library that makes it easy to access and manipulate geographical and administrative data about Guinea.

NPM Version

Installation

npm install libgn

or with pnpm:

pnpm add libgn

Usage

import libgn from "libgn";

// Get all regions of Guinea
console.log(libgn.allRegionNames);
// Result: ["Boké", "Conakry", "Faranah", "Kankan", "Kindia", "Labé", "Mamou", "N'Zérékoré"]

// Get basic information about Guinea
console.log(libgn.basicInfo);
// Result: { name: "Guinée", capital: "Conakry", motto: "Travail, Justice, Solidarité", ... }

API Reference

General Information

// Basic information about Guinea
libgn.basicInfo
// Returns: { name, capital, motto, flag, isoCode, callingCode, population, area, currency }

// Capital
libgn.capital
// Returns: "Conakry"

// Languages
libgn.languages
// Returns: { official: "Français", national: ["Pular", "Maninka", "Susu", ...] }

Regions

// All regions with their complete data
libgn.allRegions
// Returns: Array<Region>

// Names of all regions
libgn.allRegionNames
// Returns: ["Boké", "Conakry", "Faranah", "Kankan", "Kindia", "Labé", "Mamou", "N'Zérékoré"]

// Codes of all regions
libgn.allRegionCodes
// Returns: ["BK", "CK", "FR", "KK", "KD", "LB", "MM", "NZ"]

// Prefectures of a specific region
libgn.getPrefecturesByRegion("Conakry")
// Returns: ["Conakry"]

// Population of a region
libgn.getRegionPopulation("Conakry")
// Returns: 1667864

// Area of a region (in km²)
libgn.getRegionArea("Conakry")
// Returns: 450

Prefectures

// All prefectures
libgn.allPrefectureNames
// Returns: ["Boké", "Boffa", "Fria", "Gaoual", "Koundara", "Conakry", ...]

// Sub-prefectures of a prefecture
libgn.getSubPrefecturesByPrefecture("Conakry")
// Returns: ["Kaloum", "Dixinn", "Matam", "Ratoma", "Matoto"]

// Region of a prefecture
libgn.getRegionOfPrefecture("Conakry")
// Returns: "Conakry"

Neighborhoods (Conakry only)

// All neighborhoods of Conakry
libgn.allNeighborhoods
// Returns: ["Miniere Cité Secteur 2", "KASSA", "BOULBINET", ...]

// Neighborhoods of a specific sub-prefecture
libgn.getNeighborhoodsBySubPrefecture("Dixinn")
// Returns: ["Miniere Cité Secteur 2", "Cameroun Secteur 1", ...]

Error Handling

The library includes specific error classes for better error handling:

import {
  RegionReferenceError,
  PrefectureReferenceError,
  SubPrefectureReferenceError
} from "libgn";

try {
  libgn.getPrefecturesByRegion("Non-existent region");
} catch (error) {
  if (error instanceof RegionReferenceError) {
    console.log("Region not found");
  }
}

Development

# Install dependencies
pnpm install

# Compile TypeScript
pnpm build:pkg

# Development mode (watch)
pnpm dev

# Run tests
pnpm test

# Run tests once
pnpm test:run

# Generate coverage report
pnpm test:coverage

# Linting
pnpm lint

# Linting with auto-fix
pnpm lint:fix

Included Data

  • 8 administrative regions
  • 34 prefectures (official administrative divisions)
  • 8 urban communes (including Conakry's 5 communes)
  • Sub-prefectures for each prefecture
  • Detailed neighborhoods (Conakry only)
  • Demographic information (population, area)
  • Geographical and administrative data
  • Cultural information (languages, currency, etc.)

License

This package is published under MIT License

Support

If you have questions or need help regarding this package, don't hesitate to open an issue on GitHub.

Keywords

data

FAQs

Package last updated on 29 Jul 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts