{"id":13477689,"url":"https://github.com/georust/geo","last_synced_at":"2025-05-16T01:00:45.957Z","repository":{"id":25885661,"uuid":"29326047","full_name":"georust/geo","owner":"georust","description":"Rust geospatial primitives \u0026 algorithms","archived":false,"fork":false,"pushed_at":"2025-05-08T16:05:03.000Z","size":41160,"stargazers_count":1665,"open_issues_count":117,"forks_count":207,"subscribers_count":40,"default_branch":"main","last_synced_at":"2025-05-08T22:18:07.013Z","etag":null,"topics":["geography","geometry","geospatial","gis","rust"],"latest_commit_sha":null,"homepage":"https://crates.io/crates/geo","language":"Rust","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/georust.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE-APACHE","code_of_conduct":"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,"zenodo":null}},"created_at":"2015-01-16T01:00:41.000Z","updated_at":"2025-05-08T20:39:59.000Z","dependencies_parsed_at":"2023-12-16T06:04:35.633Z","dependency_job_id":"8d70fb05-e131-411d-a259-6583425c8b4e","html_url":"https://github.com/georust/geo","commit_stats":{"total_commits":2067,"total_committers":120,"mean_commits":17.225,"dds":0.7934204160619255,"last_synced_commit":"ceca7782f6de7d7588e1a2166047faa05b5e0f24"},"previous_names":[],"tags_count":140,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/georust%2Fgeo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/georust%2Fgeo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/georust%2Fgeo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/georust%2Fgeo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/georust","download_url":"https://codeload.github.com/georust/geo/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253155004,"owners_count":21862625,"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":["geography","geometry","geospatial","gis","rust"],"created_at":"2024-07-31T16:01:46.134Z","updated_at":"2025-05-08T22:18:13.789Z","avatar_url":"https://github.com/georust.png","language":"Rust","funding_links":[],"categories":["Rust","Programming Libraries"],"sub_categories":["Rust"],"readme":"[![geo](https://avatars1.githubusercontent.com/u/10320338?v=4\u0026s=50)](https://github.com/georust)\n\n[![geo on Crates.io](https://img.shields.io/crates/v/geo.svg?color=brightgreen)](https://crates.io/crates/geo)\n[![Coverage Status](https://img.shields.io/coverallsCoverage/github/georust/geo.svg)](https://coveralls.io/github/georust/geo?branch=trying)\n[![Documentation](https://img.shields.io/docsrs/geo/latest.svg)](https://docs.rs/geo)\n[![Discord](https://img.shields.io/discord/598002550221963289)](https://discord.gg/Fp2aape)\n\n# geo\n\n## Geospatial Primitives, Algorithms, and Utilities\n\n### Chat or ask questions on [Discord](https://discord.gg/Fp2aape)\n\nThe `geo` crate provides geospatial primitive types such as `Point`, `LineString`, and `Polygon`, and provides algorithms and operations such as:\n- Area and centroid calculation\n- Simplification and convex hull operations\n- Euclidean and Haversine distance measurement\n- Intersection checks\n- Affine transforms such as rotation and translation\n- All DE-9IM spatial predicates such as contains, crosses, and touches.\n\nPlease refer to [the documentation](https://docs.rs/geo) for a complete list.\n\nThe primitive types also provide the basis for other functionality in the `Geo` ecosystem, including:\n\n- [Coordinate transformation and projection](https://github.com/georust/proj)\n- Serialization to and from [GeoJSON](https://github.com/georust/geojson) and [WKT](https://github.com/georust/wkt)\n- [Geocoding](https://github.com/georust/geocoding)\n- [Working with GPS data](https://github.com/georust/gpx)\n\n## Example\n\n```rust\n// primitives\nuse geo::{line_string, polygon};\n\n// algorithms\nuse geo::ConvexHull;\n\n// An L shape\nlet poly = polygon![\n    (x: 0.0, y: 0.0),\n    (x: 4.0, y: 0.0),\n    (x: 4.0, y: 1.0),\n    (x: 1.0, y: 1.0),\n    (x: 1.0, y: 4.0),\n    (x: 0.0, y: 4.0),\n    (x: 0.0, y: 0.0),\n];\n\n// Calculate the polygon's convex hull\nlet hull = poly.convex_hull();\n\nassert_eq!(\n    hull.exterior(),\n    \u0026line_string![\n        (x: 4.0, y: 0.0),\n        (x: 4.0, y: 1.0),\n        (x: 1.0, y: 4.0),\n        (x: 0.0, y: 4.0),\n        (x: 0.0, y: 0.0),\n        (x: 4.0, y: 0.0),\n    ]\n);\n```\n\n## Contributing\n\nContributions are welcome! Have a look at the [issues](https://github.com/georust/geo/issues), and open a pull request if you'd like to add an algorithm or some functionality.\n\n## License\n\nLicensed under either of\n\n * Apache License, Version 2.0 ([LICENSE-APACHE](LICENSE-APACHE) or http://www.apache.org/licenses/LICENSE-2.0)\n * MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)\n\nat your option.\n\n### Contribution\n\nUnless you explicitly state otherwise, any contribution intentionally submitted\nfor inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any\nadditional terms or conditions.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgeorust%2Fgeo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgeorust%2Fgeo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgeorust%2Fgeo/lists"}