Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/greppo-io/greppo

Build & deploy geospatial applications quick and easy.
https://github.com/greppo-io/greppo

data-analysis data-visualization developer-tools framework geospatial machine-learning python webapp

Last synced: about 1 month ago
JSON representation

Build & deploy geospatial applications quick and easy.

Lists

README

        

# Hey there, this is Greppo...

[![Discord](https://badgen.net/badge/icon/discord?icon=discord&label)](https://discord.gg/RNJBjgh8gz) ![Twitter URL](https://img.shields.io/twitter/url?style=social&url=https%3A%2F%2Ftwitter.com%2Fgreppo_io)

**A Python framework for building geospatial web-applications.**

Greppo is an open-source Python framework that makes it easy to build applications. It provides a toolkit to quickly integrate data, algorithms, visualizations and UI for interactivity.

**Documentation**: [docs.greppo.io](https://docs.greppo.io)

**Website**: https://greppo.io

**Discord Community**: https://discord.gg/RNJBjgh8gz

If you run into any problems, ping us on Discord, Twitter or open an issue on GitHub.

## Installation

```shell
$ pip install greppo
```

We suggest you use a virtual environment to manage your packages for this project. For more infromation and troubleshooting visit the [Installation Guide](https://docs.greppo.io).

**Windows users**: Installation of Fiona (one of Greppo's dependencies) on Windows machines usually doesn't work by default. A manual installation with e.g. [wheel files by Christoph Gohlke](https://www.lfd.uci.edu/~gohlke/pythonlibs/) the would be a work around.

## A simple example

```python
# inside app.py

from greppo import app
import geopandas as gpd

data_gdf = gpd.read_file("geospatial_data.geojson")

buildings_gdf = gpd.read_file("./data/buildings.geojson")

app.overlay_layer(
buildings_gdf,
name="Buildings",
description="Buildings in a neighbourhood in Amsterdam",
style={"fillColor": "#F87979"},
visible=True,
)

app.base_layer(
name="Open Street Map",
visible=True,
url="https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",
subdomains=None,
attribution='© OpenStreetMap contributors',
)
```

Then run the aplication using the `greppo` cli command:

```shell
greppo serve app.py
```

To view the app that is being served, enter this address of the localhost `localhost:8080/` in your web browser. (Note: the port of `8080` might be different depending on other programs you're running. Check the port indicated in the command line interface.)

## Support & Community

Do you have questions? Ideas? Want to share your project? Join us on discord [Invite Link](https://discord.gg/RNJBjgh8gz).

## Under the hood

Greppo is open-source and is built on open-source. Under the hood it uses [Starlette](https://github.com/encode/starlette), [Vue](https://github.com/vuejs/vue), [Leaflet](https://github.com/Leaflet/Leaflet), [ChartJS](https://github.com/chartjs/Chart.js), [TailwindCSS](https://github.com/tailwindlabs/tailwindcss) to name a few. A detailed list of the open-source projects used is listed [here](https://docs.greppo.io/under-the-hood.html).

Greppo is our contribution back to the geospatial community. We want to make the development of geosaptial apps easy, to make it easy for data-scientists to showcase their work.

## License

Greppo is licensed under Apache V2.