{"id":16635797,"url":"https://github.com/ythecombinator/brazilian-boundaries","last_synced_at":"2025-10-30T06:30:53.473Z","repository":{"id":82686828,"uuid":"79997400","full_name":"ythecombinator/brazilian-boundaries","owner":"ythecombinator","description":"🗺️ Municipal boundaries of all Brazilian cities.","archived":false,"fork":false,"pushed_at":"2017-01-26T07:49:38.000Z","size":11392,"stargazers_count":11,"open_issues_count":2,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-10-07T09:08:55.167Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/ythecombinator.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/contributing.md","funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2017-01-25T08:47:48.000Z","updated_at":"2023-09-29T15:50:56.000Z","dependencies_parsed_at":null,"dependency_job_id":"c8f445c0-2ad4-4b70-9a96-54ebc4462813","html_url":"https://github.com/ythecombinator/brazilian-boundaries","commit_stats":{"total_commits":13,"total_committers":1,"mean_commits":13.0,"dds":0.0,"last_synced_commit":"0bda55f7dc4f533e4ee24b3017d0709e2c3b5a45"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ythecombinator%2Fbrazilian-boundaries","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ythecombinator%2Fbrazilian-boundaries/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ythecombinator%2Fbrazilian-boundaries/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ythecombinator%2Fbrazilian-boundaries/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ythecombinator","download_url":"https://codeload.github.com/ythecombinator/brazilian-boundaries/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219856618,"owners_count":16556082,"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":[],"created_at":"2024-10-12T06:04:50.758Z","updated_at":"2025-10-30T06:30:51.085Z","avatar_url":"https://github.com/ythecombinator.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"\"\u003e\n    \u003cimg alt=\"Logo\" src=\"logo.png\" width=\"600px\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  Municipal boundaries of all Brazilian cities.\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n\n  \u003ca href=\"https://travis-ci.org/ythecombinator/brazilian-boundaries\"\u003e\u003cimg alt=\"Build Status\" src=\"https://travis-ci.org/ythecombinator/brazilian-boundaries.svg?branch=master\"\u003e\u003c/a\u003e\n\n  \u003ca href=\"https://codeclimate.com/github/ythecombinator/brazilian-boundaries\"\u003e\u003cimg src=\"https://codeclimate.com/github/ythecombinator/brazilian-boundaries/badges/gpa.svg\"\u003e\u003c/a\u003e\n\n  \u003ca href=\"https://david-dm.org/ythecombinator/brazilian-boundaries\" title=\"Dependency status\"\u003e\u003cimg src=\"https://david-dm.org/ythecombinator/brazilian-boundaries.svg\"/\u003e\u003c/a\u003e\n\n  \u003ca href=\"https://david-dm.org/ythecombinator/brazilian-boundaries#info=devDependencies\" title=\"devDependency status\"\u003e\u003cimg src=\"https://david-dm.org/ythecombinator/brazilian-boundaries/dev-status.svg\"/\u003e\u003c/a\u003e\n\n\u003c/p\u003e\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [API](#api)\n- [Development](#development)\n- [Contributing](#contributing)\n- [License](#license)\n- [Credits](#credits)\n\n## Installation\n\n```sh\n$ npm install --save brazilian-boundaries\n```\n\n## Usage\n\nThere are three ways of using this data:\n\n- Use the NPM module to retrieve and access the data (instructions below)\n- Use this repo as a submodule and write your own thing to load the data (just a bunch of json files!)\n- Link directly to the files on GitHub\n\n## API\n\n```js\nimport { list, read } from 'brazilian-boundaries'\n\nconst files = await list()\n\nfiles.forEach((filePath) =\u003e {\n  const boundary = await read(filePath)\n  // Your magic goes here...\n})\n```\n\nLet's say we want to get `geojson` data for the state of *Ceará*:\n\n```js\nimport { read } from 'brazilian-boundaries'\n\nread('path/to/brazil-boundaries/repos/brazilian-boundaries/files/CE.json')\n    .then(\n        (data) =\u003e\n           console.log(data))\n```\n\nIf we test our console output on any `.geojson` linter–e.g. [geojson.io](http://geojson.io/)–we should get something like:\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"\"\u003e\n    \u003cimg alt=\"Screenshot\" src=\"screenshot.png\" width=\"500px\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n### `list([cb])`\n\nReturns a promise which will handle an array of boundary file paths.\n\n\u003e Callback is optional.\n\n### `read(path[, cb])`\n\nReturns a promise which will handle the boundary for the given path.\n\n\u003e Callback is optional.\n\n### CLI\n\n\u003e Coming soon!\n\n## Development\n\nAll the tasks needed for development automation are defined in the\n[`package.json`](package.json) *scripts* property and can be run via:\n\n`npm run \u003ccommand\u003e`\n\nHere is a summary of all the commands:\n\n| **Command** |      **Description**      |\n|-------------|---------------------------|\n| `build`     | Runs *babel.js*.          |\n| `lint`      | Runs *eslint*.            |\n| `test`      | Runs unit tests.          |\n| `update`    | Fetches more recent data. |\n\n## License\n\n[brazilian-boundaries](https://github.com/ythecombinator/brazilian-boundaries) is distributed under\nthe MIT License, available in this repository. All contributions are assumed to\nbe also licensed under the MIT License.\n\n## Credits\n\n- Fetched data comes from [Luiz Pedone's *municipal-brazilian-geodata*](https://github.com/luizpedone/municipal-brazilian-geodata)\n\n- Inspired by [contras's *boundaries*](https://github.com/contra/boundaries)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fythecombinator%2Fbrazilian-boundaries","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fythecombinator%2Fbrazilian-boundaries","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fythecombinator%2Fbrazilian-boundaries/lists"}