Joshua Sundance Bailey
pin topojson & update readme
ca8380d
metadata
title: geospatial-data-converter
emoji: 🌎
colorFrom: green
colorTo: blue
sdk: docker
app_port: 7860
pinned: true
tags:
  - geospatial
  - streamlit
  - docker

geospatial-data-converter

License: MIT python GitHub tag (with filter)

Push to Docker Hub Docker Image Size (tag)

Push to HuggingFace Space Open HuggingFace Space

Code Climate maintainability Code Climate issues Code Climate technical debt

pre-commit Ruff Checked with mypy Code style: black

security: bandit Known Vulnerabilities

This project showcases a simple geospatial data converter using Streamlit and GeoPandas.

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 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