|
--- |
|
title: geospatial-data-converter |
|
emoji: π |
|
colorFrom: green |
|
colorTo: blue |
|
sdk: docker |
|
app_port: 7860 |
|
pinned: true |
|
tags: [geospatial, streamlit, docker] |
|
--- |
|
|
|
# geospatial-data-converter |
|
|
|
[](https://opensource.org/licenses/MIT) |
|
[](https://www.python.org) |
|
 |
|
|
|
[](https://github.com/joshuasundance-swca/geospatial-data-converter/actions/workflows/docker-hub.yml) |
|
[](https://hub.docker.com/r/joshuasundance/geospatial-data-converter) |
|
|
|
[](https://github.com/joshuasundance-swca/geospatial-data-converter/actions/workflows/hf-space.yml) |
|
[](https://huggingface.co/spaces/joshuasundance/geospatial-data-converter) |
|
|
|
 |
|
 |
|
 |
|
|
|
[](https://github.com/pre-commit/pre-commit) |
|
[](https://github.com/charliermarsh/ruff) |
|
[](http://mypy-lang.org/) |
|
[](https://github.com/psf/black) |
|
|
|
[](https://github.com/PyCQA/bandit) |
|
 |
|
|
|
This project showcases a simple geospatial data converter using [Streamlit](https://streamlit.io) and [GeoPandas](https://geopandas.org/). |
|
|
|
# Features |
|
- User-friendly interface for easy data conversion |
|
- Supports conversion from the following input formats: |
|
- ArcGIS featurelayer URL |
|
- Uploaded file: KML, KMZ, GeoJSON, ZIP, etc |
|
- Provides data in the selected output format |
|
- Presents data preview (geometry omitted for display purposes) |
|
- Download button for the converted data |
|
|
|
# Deployment |
|
`geospatial-data-converter` is deployed as a [Docker image](https://hub.docker.com/r/<your-dockerhub-username>/geospatial-data-converter) based on the `python:3.11-slim-bookworm` image. |
|
|
|
## With Docker (pull from Docker Hub) |
|
1. Run in terminal: |
|
`docker run -p 7860:7860 <your-dockerhub-username>/geospatial-data-converter:latest` |
|
2. Open http://localhost:8501 in your browser |
|
|
|
## Docker Compose (build locally) |
|
1. Clone the repo. Navigate to cloned repo directory |
|
2. Run in terminal: `docker compose up` |
|
3. Open http://localhost:7860 in your browser |
|
|
|
## Run Tests (with local Docker container) |
|
1. Run in terminal: `docker compose run test` |
|
|
|
## Kubernetes |
|
1. Clone the repo. Navigate to cloned repo directory |
|
2. Run bash script: `/bin/bash ./kubernetes/deploy.sh` |
|
3. Get the IP address for your new service: `kubectl get service geospatial-data-converter` |
|
|
|
# Links |
|
- [Streamlit](https://streamlit.io) |
|
- [GeoPandas](https://geopandas.org/) |
|
- [Docker Hub](https://hub.docker.com/) |
|
|