{"id":26066168,"url":"https://github.com/codeforafrica/hurumap-ui","last_synced_at":"2025-04-11T15:33:14.092Z","repository":{"id":35040427,"uuid":"194053887","full_name":"CodeForAfrica/HURUmap-UI","owner":"CodeForAfrica","description":"HURUmap UI React chart and visualisation components powering geo-data platforms across Africa. Accessible at https://codeforafrica.github.io/HURUmap-UI/","archived":false,"fork":false,"pushed_at":"2023-03-14T15:34:51.000Z","size":12886,"stargazers_count":5,"open_issues_count":4,"forks_count":2,"subscribers_count":12,"default_branch":"main","last_synced_at":"2025-04-09T11:01:49.090Z","etag":null,"topics":["charts","code-for-africa","data-visualization","graphs","hurumap","hurumap-ui","material-design","react","reactjs","storybook"],"latest_commit_sha":null,"homepage":"https://codeforafrica.github.io/HURUmap-UI/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CodeForAfrica.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"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,"roadmap":null,"authors":null}},"created_at":"2019-06-27T08:21:57.000Z","updated_at":"2023-03-23T14:43:00.000Z","dependencies_parsed_at":"2024-01-14T15:25:32.062Z","dependency_job_id":"0e350046-40cb-4fad-b29e-5b1d95b11f9a","html_url":"https://github.com/CodeForAfrica/HURUmap-UI","commit_stats":{"total_commits":945,"total_committers":9,"mean_commits":105.0,"dds":0.5396825396825398,"last_synced_commit":"0b6e9e18f4055b77d6a21c7da236a2170640f196"},"previous_names":[],"tags_count":126,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CodeForAfrica%2FHURUmap-UI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CodeForAfrica%2FHURUmap-UI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CodeForAfrica%2FHURUmap-UI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CodeForAfrica%2FHURUmap-UI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CodeForAfrica","download_url":"https://codeload.github.com/CodeForAfrica/HURUmap-UI/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248431981,"owners_count":21102296,"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":["charts","code-for-africa","data-visualization","graphs","hurumap","hurumap-ui","material-design","react","reactjs","storybook"],"created_at":"2025-03-08T20:08:15.945Z","updated_at":"2025-04-11T15:33:14.071Z","avatar_url":"https://github.com/CodeForAfrica.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# HURUmap UI\n\n![npm](https://img.shields.io/npm/v/@codeforafrica/hurumap-ui) [![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)\n\nThis library package React components that are used to visualize HURUmap data.\n\nHURUmap is an interactive web platform that allows citizens and journalists to explore, visualise, and download census data. This gives them the power to give context to stories that was otherwise hard to spot. Accessible at \u003chttps://hurumap.org\u003e\n\n----\n\nHurumap-UI [Storybook](https://codeforafrica.github.io/hurumap-ui/).\n\n## Style Guidelines\n\nThis project will be primarily using [airbnb react](https://github.com/airbnb/javascript/tree/master/react) and [material-ui](https://material-ui.com/) as our main style guides when implementing components.This is to create code consistency and readability.\n\n## Contributing\n\nIf you'd like to contribute to sensors.AFRICA, check out the [CONTRIBUTING.md](./CONTRIBUTING.md) file on how to get started; or jump right into our [GitHub issues](issues).\n\n### ✨ Contributors ✨\n\n[TODO](https://www.npmjs.com/package/all-contributors-cli)\n\n\n## Publish A New Release\n\nTo publish a new release, we use the excellent [yarn version](https://yarnpkg.com/lang/en/docs/cli/version/) cli command, configured to both publish to npm as well as deploy storybook to GitHub pages.\n\n```\nyarn version\n```\n\n# Storybook \n\nStorybook is an open-source tool that provides a sandbox to develop and visualize components in isolation. See the [Storybook site](https://storybook.js.org/) for more information about the tool. \n\nHURUmap uses Storybook to view and work with the UI components developed in the HURUmap packages.\n\nView online at: https://codeforafrica.github.io/HURUmap-UI/\n\nRun locally in your development environment running: `yarn start` from the top-level Gutenberg directory.\n\n# Publishing\n\nRun `yarn publish:packages` otherwise always publish using lerna `--contents` argument like so `yarn lerna publish --contents build`.\n\n# Development\n\nWhen adding a new package, be sure to add the alias to the babel.config.js and .eslintrc.js:\n\n- babel.config.js\n\n```\nmodule.exports = {\n  presets: ['@babel/preset-react', '@babel/preset-env'],\n  plugins: ['inline-react-svg'],\n  env: {\n    development: {\n      plugins: [\n        [\n          'module-resolver',\n          {\n            alias: {\n              '@hurumap-ui/content': './packages/content/src',\n              '@hurumap-ui/charts': './packages/charts/src',\n              '@hurumap-ui/core': './packages/core/src'\n            }\n          }\n        ]\n      ]\n    }\n  }\n};\n```\n\n- .eslintrc.js\n\n```\nmodule.exports = {\n  ...,\n  settings: {\n    'import/resolver': {\n      'babel-module': {\n        alias: {\n          '@hurumap-ui/content': './packages/content/src',\n          '@hurumap-ui/charts': './packages/charts/src',\n          '@hurumap-ui/core': './packages/core/src'\n        }\n      }\n    }\n  }\n};\n\n```\n\n- `.babelrc` for storybook https://storybook.js.org/docs/configurations/custom-babel-config/\n\n```\n{\n  \"presets\": [\"@babel/preset-react\", \"@babel/preset-env\"],\n  \"plugins\": [\"inline-react-svg\",  [\n      \"module-resolver\",\n      {\n        \"alias\": {\n          \"@hurumap-ui/content\": \"./packages/content/src\",\n          \"@hurumap-ui/charts\": \"./packages/charts/src\",\n          \"@hurumap-ui/core\": \"./packages/core/src\"\n        }\n      }\n    ]]\n}\n```\n\n## Testing\n\nJest is used for testing. \n- Run tests for packages with command `yarn lerna run test`\n- Run packge test `cd packages/\u003cpackage name\u003e \u0026\u0026 yarn test`\n\n---\n\n## License\n\nGNU GPLv3\n\nCopyright (C) 2018 Code for Africa\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program. If not, see \u003chttps://www.gnu.org/licenses/\u003e.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodeforafrica%2Fhurumap-ui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcodeforafrica%2Fhurumap-ui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodeforafrica%2Fhurumap-ui/lists"}