{"id":27636092,"url":"https://github.com/omdxp/leblad","last_synced_at":"2025-08-21T20:35:26.787Z","repository":{"id":61828112,"uuid":"555560202","full_name":"omdxp/leblad","owner":"omdxp","description":"A go module providing a list of Algerian administrative areas with many useful APIs, based on dzcode-io/leblad","archived":false,"fork":false,"pushed_at":"2023-10-02T02:43:55.000Z","size":127,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-06-20T22:35:13.406Z","etag":null,"topics":["algeria","algerian-administrative-areas","dz","go","gomodule","hacktoberfest","postal-codes","wilayas"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/omdxp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"ko_fi":"omdxp"}},"created_at":"2022-10-21T20:38:53.000Z","updated_at":"2023-10-02T02:32:02.000Z","dependencies_parsed_at":"2024-06-20T22:07:14.772Z","dependency_job_id":null,"html_url":"https://github.com/omdxp/leblad","commit_stats":{"total_commits":69,"total_committers":2,"mean_commits":34.5,"dds":0.01449275362318836,"last_synced_commit":"47c3ed3e741087f7bc71578120c94112e8ee0485"},"previous_names":["omdxp/leblad-go"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omdxp%2Fleblad","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omdxp%2Fleblad/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omdxp%2Fleblad/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/omdxp%2Fleblad/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/omdxp","download_url":"https://codeload.github.com/omdxp/leblad/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250509936,"owners_count":21442524,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["algeria","algerian-administrative-areas","dz","go","gomodule","hacktoberfest","postal-codes","wilayas"],"created_at":"2025-04-23T20:32:47.790Z","updated_at":"2025-04-23T20:32:47.905Z","avatar_url":"https://github.com/omdxp.png","language":"Go","funding_links":["https://ko-fi.com/omdxp"],"categories":[],"sub_categories":[],"readme":"# leblad\n\n[![Build Status](https://github.com/omdxp/leblad/workflows/Test%20CI/badge.svg)](https://github.com/omdxp/leblad/actions?query=branch%3Amain)\n[![codecov](https://codecov.io/gh/omdxp/leblad/branch/main/graph/badge.svg?token=XF4IY9HFNS)](https://codecov.io/gh/omdxp/leblad) [![Go Report Card](https://goreportcard.com/badge/github.com/omdxp/leblad)](https://goreportcard.com/report/github.com/omdxp/leblad)\n\nA go module providing a list of Algerian administrative areas with many useful APIs, based on [dzcode-io/leblad](https://github.com/dzcode-io/leblad)\n\n## Installation\n\n```bash\ngo get -u github.com/omdxp/leblad\n```\n\n## Quick Start\n\n```go\npackage main\n\nimport (\n    \"fmt\"\n\n    \"github.com/omdxp/leblad\"\n)\n\nfunc main() {\n    l := leblad.New()\n\n    // Get all wilayas\n    wilayas, err := l.GetWilayaList()\n    if err != nil {\n        panic(err)\n    }\n\n    fmt.Println(wilayas)\n\n    // Get only wilayas names\n    wilayas, err = l.GetWilayaList(\"name\")\n    if err != nil {\n        panic(err)\n    }\n}\n```\n\n## API\n\ninit a new leblad instance\n\n```go\nl := leblad.New()\n```\n\n### GetWilayaList\n\nGet all wilayas\n\n```go\nwilayas, err := l.GetWilayaList()\nif err != nil {\n    panic(err)\n}\n```\n\nFilter wilayas by a specific field\n\n```go\nwilayas, err := l.GetWilayaList(\"name\")\nif err != nil {\n    panic(err)\n}\n```\n\nit accept a variadic number of fields\n\n```go\nwilayas, err := l.GetWilayaList(\"name\", \"dairats\", \"matricule\")\nif err != nil {\n    panic(err)\n}\n```\n\nfields can be one of the following:\n| wilaya field | description |\n| --- | --- |\n| matricule | wilaya matricule |\n| name_ar | wilaya name in arabic |\n| name_ber | wilaya name in berber |\n| name_en | wilaya name in english |\n| name | wilaya name in french |\n| phoneCodes | wilaya phone codes |\n| postalCodes | wilaya postal codes |\n| dairats | wilaya dairats |\n| adjacentWilayas | wilaya adjacent wilayas |\n\n### GetWilayaByZipCode\n\nGet wilaya by zip code\n\n```go\nwilaya, err := l.GetWilayaByZipCode(1000)\nif err != nil {\n    panic(err)\n}\n```\n\nFilter wilaya by a specific field\n\n```go\nwilaya, err := l.GetWilayaByZipCode(1000, \"name\")\nif err != nil {\n    panic(err)\n}\n```\n\nit accept a variadic number of fields\n\n```go\nwilaya, err := l.GetWilayaByZipCode(1000, \"name\", \"dairats\", \"matricule\")\nif err != nil {\n    panic(err)\n}\n```\n\n### GetWilayaByCode\n\nGet wilaya by code\n\n```go\nwilaya, err := l.GetWilayaByCode(1)\nif err != nil {\n    panic(err)\n}\n```\n\nFilter wilaya by a specific field\n\n```go\nwilaya, err := l.GetWilayaByCode(1, \"name\")\nif err != nil {\n    panic(err)\n}\n```\n\nit accept a variadic number of fields\n\n```go\nwilaya, err := l.GetWilayaByCode(1, \"name\", \"dairats\", \"matricule\")\nif err != nil {\n    panic(err)\n}\n```\n\n### GetAdjacentWilayas\n\nGet adjacent wilayas as a slice of wilaya codes\n\n```go\nwilayas, err := l.GetAdjacentWilayas(1)\nif err != nil {\n    panic(err)\n}\n```\n\n### GetZipCodesForWilaya\n\nGet zip codes for a wilaya\n\n```go\nzipCodes, err := l.GetZipCodesForWilaya(1)\nif err != nil {\n    panic(err)\n}\n```\n\n### GetDairatsForWilaya\n\nGet dairats for a wilaya\n\n```go\ndairats, err := l.GetDairatsForWilaya(1)\nif err != nil {\n    panic(err)\n}\n```\n\nFilter dairats by a specific field\n\n```go\ndairats, err := l.GetDairatsForWilaya(1, \"name\")\nif err != nil {\n    panic(err)\n}\n```\n\nit accept a variadic number of fields\n\n```go\ndairats, err := l.GetDairatsForWilaya(1, \"name\", \"code\", \"baladyiats\")\nif err != nil {\n    panic(err)\n}\n```\n\nfields can be one of the following:\n| daira field | description |\n| --- | --- |\n| code | daira code |\n| name | daira name |\n| name_ar | daira name in arabic |\n| name_en | daira name in english |\n| baladyiats | daira baladyiats |\n\n### GetWilayaByPhoneCode\n\nGet wilaya by phone code\n\n```go\nwilaya, err := l.GetWilayaByPhoneCode(49)\nif err != nil {\n    panic(err)\n}\n```\n\nFilter wilaya by a specific field\n\n```go\nwilaya, err := l.GetWilayaByPhoneCode(49, \"name\")\nif err != nil {\n    panic(err)\n}\n```\n\nit accept a variadic number of fields\n\n```go\nwilaya, err := l.GetWilayaByPhoneCode(49, \"name\", \"dairats\", \"matricule\")\nif err != nil {\n    panic(err)\n}\n```\n\n### GetWilayaByDairaName\n\nGet wilaya by daira name\n\n```go\nwilaya, err := l.GetWilayaByDairaName(\"ADRAR\")\nif err != nil {\n    panic(err)\n}\n```\n\nFilter wilaya by a specific field\n\n```go\nwilaya, err := l.GetWilayaByDairaName(\"ADRAR\", \"name\")\nif err != nil {\n    panic(err)\n}\n```\n\nit accept a variadic number of fields\n\n```go\nwilaya, err := l.GetWilayaByDairaName(\"ADRAR\", \"name\", \"dairats\", \"matricule\")\nif err != nil {\n    panic(err)\n}\n```\n\n### GetBaladyiatsForDaira\n\nGet baladyiats for a daira\n\n```go\nbaladyiats, err := l.GetBaladyiatsForDaira(\"ADRAR\")\nif err != nil {\n    panic(err)\n}\n```\n\nFilter baladyiats by a specific field\n\n```go\nbaladyiats, err := l.GetBaladyiatsForDaira(\"ADRAR\", \"name\")\nif err != nil {\n    panic(err)\n}\n```\n\nit accept a variadic number of fields\n\n```go\nbaladyiats, err := l.GetBaladyiatsForDaira(\"ADRAR\", \"name\", \"code\")\nif err != nil {\n    panic(err)\n}\n```\n\nfields can be one of the following:\n| baladyia field | description |\n| --- | --- |\n| code | baladyia code |\n| name | baladyia name |\n| name_ar | baladyia name in arabic |\n| name_en | baladyia name in english |\n\n### GetBaladyiatsForDairaCode\n\nGet baladyiats for a daira code\n\n```go\nbaladyiats, err := l.GetBaladyiatsForDairaCode(101)\nif err != nil {\n    panic(err)\n}\n```\n\nFilter baladyiats by a specific field\n\n```go\nbaladyiats, err := l.GetBaladyiatsForDairaCode(101, \"name\")\nif err != nil {\n    panic(err)\n}\n```\n\nit accept a variadic number of fields\n\n```go\nbaladyiats, err := l.GetBaladyiatsForDairaCode(101, \"name\", \"code\")\nif err != nil {\n    panic(err)\n}\n```\n\n### GetPhoneCodesForWilaya\n\nGet phone codes for a wilaya\n\n```go\nphoneCodes, err := l.GetPhoneCodesForWilaya(\"Adrar\")\nif err != nil {\n    panic(err)\n}\n```\n\n### GetFirstPhoneCodeForWilaya\n\nGet first phone code for a wilaya\n\n```go\nphoneCode, err := l.GetFirstPhoneCodeForWilaya(\"Adrar\")\nif err != nil {\n    panic(err)\n}\n```\n\n### GetBaladyiatsForWilaya\n\nGet baladyiats for a wilaya\n\n```go\nbaladyiats, err := l.GetBaladyiatsForWilaya(\"Adrar\")\nif err != nil {\n    panic(err)\n}\n```\n\nFilter baladyiats by a specific field\n\n```go\nbaladyiats, err := l.GetBaladyiatsForWilaya(\"Adrar\", \"name\")\nif err != nil {\n    panic(err)\n}\n```\n\nit accept a variadic number of fields\n\n```go\nbaladyiats, err := l.GetBaladyiatsForWilaya(\"Adrar\", \"name\", \"code\")\nif err != nil {\n    panic(err)\n}\n```\n\n### GetWilayaByBaladyiaName\n\nGet wilaya by baladyia name\n\n```go\nwilaya, err := l.GetWilayaByBaladyiaName(\"ADRAR\")\nif err != nil {\n    panic(err)\n}\n```\n\nFilter wilaya by a specific field\n\n```go\nwilaya, err := l.GetWilayaByBaladyiaName(\"ADRAR\", \"name\")\nif err != nil {\n    panic(err)\n}\n```\n\nit accept a variadic number of fields\n\n```go\nwilaya, err := l.GetWilayaByBaladyiaName(\"ADRAR\", \"name\", \"dairats\", \"matricule\")\nif err != nil {\n    panic(err)\n}\n```\n\n### GetDairaByBaladyiaName\n\nGet daira by baladyia name\n\n```go\ndaira, err := l.GetDairaByBaladyiaName(\"ADRAR\")\nif err != nil {\n    panic(err)\n}\n```\n\nFilter daira by a specific field\n\n```go\ndaira, err := l.GetDairaByBaladyiaName(\"ADRAR\", \"name\")\nif err != nil {\n    panic(err)\n}\n```\n\nit accept a variadic number of fields\n\n```go\ndaira, err := l.GetDairaByBaladyiaName(\"ADRAR\", \"name\", \"code\")\nif err != nil {\n    panic(err)\n}\n```\n\n## Contributing\n\nContributions are welcome, please read the [contributing guide](.github/CONTRIBUTING.md) for more information.\n\n## License\n\n[MIT](LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fomdxp%2Fleblad","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fomdxp%2Fleblad","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fomdxp%2Fleblad/lists"}