{"id":17229207,"url":"https://github.com/binnette/bookcases-zonelivre","last_synced_at":"2025-03-25T18:45:45.918Z","repository":{"id":82857446,"uuid":"539181584","full_name":"Binnette/bookcases-zonelivre","owner":"Binnette","description":"Bookcases from zonelivre","archived":false,"fork":false,"pushed_at":"2025-03-01T02:23:25.000Z","size":3915,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-01T03:22:01.409Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","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/Binnette.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"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}},"created_at":"2022-09-20T20:33:16.000Z","updated_at":"2025-03-01T02:23:29.000Z","dependencies_parsed_at":null,"dependency_job_id":"2d2231ee-1561-46ea-b315-26f7fdb68184","html_url":"https://github.com/Binnette/bookcases-zonelivre","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Binnette%2Fbookcases-zonelivre","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Binnette%2Fbookcases-zonelivre/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Binnette%2Fbookcases-zonelivre/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Binnette%2Fbookcases-zonelivre/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Binnette","download_url":"https://codeload.github.com/Binnette/bookcases-zonelivre/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245526180,"owners_count":20629834,"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-15T04:46:19.699Z","updated_at":"2025-03-25T18:45:45.912Z","avatar_url":"https://github.com/Binnette.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# bookcases-zonelivre\n\n**Data last updated on: 2025-03-01**\n\nBookcases from zonelivre: https://boite.a.livres.zonelivre.fr/\n\nThese bookcases are mainly in France and French-speaking countries. You can display them in OsmAnd, JOSM, uMap, and more.\n\n![Bookcase count history](assets/bookcase_count_history.png)\n![Distribution pie](assets/bookcase_distribution_pie_chart.png)\n\n## ⚠️ DO NOT IMPORT INTO OPENSTREETMAP! ⚠️\n\nDo not import directly in OSM. Verify each bookcase in person before adding it to OSM.\n\n## How to Use the Data\n\nUse the data to display bookcases in OsmAnd, JOSM, uMap, and more. Visit them in person and add or update them on OpenStreetMap.\n\n### Using OsmAnd\n\n**Note:** To avoid lag, do not use `bookcases.gpx` file. Instead, use the region-specific GPX files, such as `Bretagne.gpx`.\n\n1. Open the `bookcases` folder for the latest data.\n2. Download a region-specific GPX file (e.g., `Bretagne.gpx`).\n3. Copy the GPX file to your device.\n4. Open OsmAnd.\n5. Go to Favorites.\n6. Use the **+** (import) button.\n7. Select the GPX file.\n8. Bookcases are now displayed on the map.\n\n\u003cimg alt=\"Bookcases in OsmAnd\" src=\"./assets/OsmAnd.png\" height=\"30%\" width=\"30%\"\u003e\n\n### Using JOSM\n\n1. Open the `bookcases` folder for the latest data.\n2. Download the `bookcases.geojson` file.\n3. Open JOSM.\n4. Use the Open File button.\n5. Select the `bookcases.geojson` file.\n6. Bookcases are now displayed on the map.\n\n## How to Update the Data\n\n1. Install the necessary Python libraries:\n    ```sh\n    pip install beautifulsoup4 fake_useragent geojson matplotlib pandas selenium shapely\n    ```\n2. Run `1_fetch_bookcases.py` to fetch and create `bookcases.geojson`.\n3. Run `2_filter_by_region.py` to split the bookcases into GeoJSON files for each French region.\n4. Run `3_create_OsmAnd_gpx.py` to convert each GeoJSON file into an OsmAnd GPX file.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbinnette%2Fbookcases-zonelivre","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbinnette%2Fbookcases-zonelivre","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbinnette%2Fbookcases-zonelivre/lists"}