Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →
Top 23 Geospatial Open-Source Projects
-
-
Project mention: Noob here: Please tell me how can I integrate this type of map in my site? any js library? | /r/developersIndia | 2023-07-02
This might help: https://kepler.gl/
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
-
I'm running Linux. I've already tried to run sudo apt -y install python3-numpy as suggested here and tried to install numpy using blender's python console and import pip pip.main.... it's saying everything is installed, but I still cannot enable addon either run import numpy in console. Please ask me if you need more technical details.
-
RediSearch
A query and indexing engine for Redis, providing secondary indexing, full-text search, vector similarity search and aggregations.
-
osmnx
OSMnx is a Python package to easily download, model, analyze, and visualize street networks and other geospatial features from OpenStreetMap.
Project mention: I played with a python module called OSMnx to create the roadmaps of some cities. These include major highways,motorways,roads and streets that carry most of the traffic. | /r/india | 2023-07-13 -
Graphhopper
Open source routing engine for OpenStreetMap. Use it as Java library or standalone web server.
Project mention: The Open Source GraphHopper Routing Engine 8.0 Released | news.ycombinator.com | 2023-10-18Well I think what he means is that we dropped the explicit support of Android and the example app with offline maps (Mapsforge), see this issue: https://github.com/graphhopper/graphhopper/issues/1940
But offline routing should still work on Android. But as you need JDK 1.8 support this will exclude a few older Android versions and devices, I think.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
Project mention: H3: Hexagonal hierarchical geospatial indexing system | news.ycombinator.com | 2024-03-11
-
buntdb
BuntDB is an embeddable, in-memory key/value database for Go with custom indexing and geospatial support
Experimental format to help readability of a long rant:
1.
According to the OP, there's a "terrifying tale of VACUUM in PostgreSQL," dating back to "a historical artifact that traces its roots back to the Berkeley Postgres project." (1986?)
2.
Maybe the whole idea of "use X, it has been battle-tested for [TIME], is robust, all the bugs have been and keep being fixed," etc., should not really be that attractive or realistic for at least a large subset of projects.
3.
In the case of Postgres, on top of piles of "historic code" and cruft, there's the fact that each user of Postgres installs and runs a huge software artifact with hundreds or even thousands of features and dependencies, of which every particular user may only use a tiny subset.
4.
In Kleppmann's DDOA [1], after explaining why the declarative SQL language is "better," he writes: "in databases, declarative query languages like SQL turned out to be much better than imperative query APIs." I find this footnote to the paragraph a bit ironic: "IMS and CODASYL both used imperative query APIs. Applications typically used COBOL code to iterate over records in the database, one record at a time." So, SQL was better than CODASYL and COBOL in a number of ways... big surprise?
Postgres' own PL/pgSQL [2] is a language that (I imagine) most people would rather NOT use: hence a bunch of alternatives, including PL/v8, on its own a huge mass of additional complexity. SQL is definitely "COBOLESQUE" itself.
5.
Could we come up with something more minimal than SQL and looking less like COBOL? (Hopefully also getting rid of ORMs in the process). Also, I have found inspiring to see some people creating databases for themselves. Perhaps not a bad idea for small applications? For instance, I found BuntDB [3], which the developer seems to be using to run his own business [4]. Also, HYTRADBOI? :-) [5].
6.
A usual objection to use anything other than a stablished relational DB is "creating a database is too difficult for the average programmer." How about debugging PostgreSQL issues, developing new storage engines for it, or even building expertise on how to set up the instances properly and keep it alive and performant? Is that easier?
I personally feel more capable of implementing a small, well-tested, problem-specific, small implementation of a B-Tree than learning how to develop Postgres extensions, become an expert in its configuration and internals, or debug its many issues.
Another common opinion is "SQL is easy to use for non-programmers." But every person that knows SQL had to learn it somehow. I'm 100% confident that anyone able to learn SQL should be able to learn a simple, domain-specific, programming language designed for querying DBs. And how many of these people that are not able to program imperatively would be able to read a SQL EXPLAIN output and fix deficient queries? If they can, that supports even more the idea that they should be able to learn something different than SQL.
----
2: https://www.postgresql.org/docs/7.3/plpgsql-examples.html
-
Project mention: Data diffs: Algorithms for explaining what changed in a dataset (2022) | news.ycombinator.com | 2023-07-26
> Make diff work on more than just SQLite.
Another way of doing this that I've been wanting to do for a while is to implement the DIFF operator in Apache Calcite[0]. Using Calcite, DIFF could be implemented as rewrite rules to generate the appropriate SQL to be directly executed against the database or the DIFF operator can be implemented outside of the database (which the original paper shows is more efficient).
-
Interesting! Full honesty I don’t know, lol. But if I were to guess… something to do with implementation of pygeos and indexing. Recent geopandas versions I believe handle joins with shapely vs. pygeos differently. Maybe if there is a declared predicate, it treats the spatial index differently. https://github.com/geopandas/geopandas/pull/1421
-
awesome-gis
😎Awesome GIS is a collection of geospatial related sources, including cartographic tools, geoanalysis tools, developer tools, data, conference & communities, news, massive open online course, some amazing map sites, and more.
-
Project mention: More than 400 start.me OSINT websites! More than 10KB of sources! | /r/OSINT | 2023-04-11
-
Project mention: Need something to host a URL that listens for a POST and then talks back to on-prem SQL. | /r/sysadmin | 2023-05-10
For quick dev/arch projects at home, I usually use this: https://github.com/mevdschee/php-crud-api
-
-
geemap
A Python package for interactive geospatial analysis and visualization with Google Earth Engine.
Project mention: I'm a senior in my CS major and it's incredible I didn't hear about GIS projects until now. Glad to be here. | /r/gis | 2023-05-22Try out Google Earth Engine and browse through it's catalogue to get a feel for what's available. GEE allows you to work with global datasets and immediately see a preview of the results (there's also geemap if you prefer doing this from a Python notebook instead of the online JS editor)
-
leafmap
A Python package for interactive mapping and geospatial analysis with minimal coding in a Jupyter environment
-
-
segment-geospatial
A Python package for segmenting geospatial data with the Segment Anything Model (SAM)
Maybe try reporting as a GitHub issue? https://github.com/opengeos/segment-geospatial/issues
-
-
-
Or maybe you want to create your own unique style? The Maputnik map style editor has some free styles to get you started.
-
proj4js
JavaScript library to transform coordinates from one coordinate system to another, including datum transformations
It is needed to link the required JS scripts in the section of the HTML page. These scripts include the Core and Geo Maps modules and the file that contains geodata for the world map, all of which are available on the CDN. I'll also use two more script files to connect the data to the choropleth map. One is the Data Adapter, which will help load the data, and the other is Proj4js, a JavaScript library that will transform the coordinates from one coordinate system to another so the data can be plotted on the map accurately.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Geospatial related posts
- H3: Hexagonal hierarchical geospatial indexing system
- Geospatial Nix – create, use and deploy today
- Waterway Map
- 10th Anniversary of the OpenOrienteering Project and Mapper App (2022)
- What hydrology tool would you use to model streamflow and pollutants of waterways in a watershed?
-
GeoDesk for Python VS GeoDesk - a user suggested alternative
2 projects | 25 Nov 2023
- Does anyone else wish the geospatial community was more open (like GitHub)?
-
A note from our sponsor - InfluxDB
www.influxdata.com | 29 Mar 2024
Index
What are some of the best open-source Geospatial projects? This list will help you:
Project | Stars | |
---|---|---|
1 | Cesium | 11,715 |
2 | kepler.gl | 9,953 |
3 | Tile38 | 8,869 |
4 | BlenderGIS | 7,160 |
5 | RediSearch | 5,144 |
6 | osmnx | 4,633 |
7 | Graphhopper | 4,628 |
8 | h3 | 4,547 |
9 | buntdb | 4,357 |
10 | Apache Calcite | 4,320 |
11 | geopandas | 4,121 |
12 | awesome-gis | 4,079 |
13 | Awesome-Geospatial | 3,803 |
14 | PHP-CRUD-API | 3,509 |
15 | L7 | 3,435 |
16 | geemap | 3,135 |
17 | leafmap | 2,880 |
18 | cartodb | 2,715 |
19 | segment-geospatial | 2,610 |
20 | torchgeo | 2,188 |
21 | 3d-tiles | 1,974 |
22 | maputnik | 1,951 |
23 | proj4js | 1,923 |