https://github.com/guifernandess7/geofile-uploader-api
Microservices application for visualization, processing, and uploading geospatial data and files
https://github.com/guifernandess7/geofile-uploader-api
bucket echo gcp geospatial golang microservice pubsub
Last synced: 13 days ago
JSON representation
Microservices application for visualization, processing, and uploading geospatial data and files
- Host: GitHub
- URL: https://github.com/guifernandess7/geofile-uploader-api
- Owner: GuiFernandess7
- Created: 2025-02-22T23:55:51.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-05-03T22:14:36.000Z (about 1 year ago)
- Last Synced: 2025-11-20T19:05:39.442Z (7 months ago)
- Topics: bucket, echo, gcp, geospatial, golang, microservice, pubsub
- Language: Python
- Homepage:
- Size: 26.3 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Microservices Application for Visualization, Processing, and Uploading Geospatial Files šŗļø

This repository is part of a larger application that follows a microservices architecture. Currently, it includes an API developed using the Echo framework in Go (Golang), which is the first service implemented. The API is responsible for reading, processing, and uploading geospatial files in KML format to a bucket on Google Cloud Platform (GCP). Once a file is uploaded, the system triggers a message via GCP Pub/Sub to notify other services about the availability of the new geospatial file.
The application is designed to streamline the integration of services that need to handle geospatial data, ensuring that the upload and notification processes occur efficiently. Firebase authentication provides robust access control, while GCP and Pub/Sub integration ensure scalability and real-time communication between the processing service.
Key features:
- User authentication with Firebase.
- KML file processing.
- Upload of KML files to a GCP bucket.
- Pub/Sub message emission for notifying new files.
- This solution is ideal for systems that require real-time integration with geospatial data, leveraging Google Cloud's infrastructure.
### Architeture
https://github.com/user-attachments/assets/ab27f2d3-9466-465f-8988-27da1d488e6f
### Aplicação de Microserviços para Visualização, Processamento e Upload de Arquivos Geoespaciais
š§š·
Este repositório faz parte de uma aplicação maior que segue uma arquitetura de microserviços. Atualmente, conta com uma API desenvolvida utilizando o framework Echo em Go (Golang), sendo o primeiro serviço implementado. A API é responsÔvel por ler, processar e fazer o upload de arquivos geoespaciais no formato KML para um bucket no Google Cloud Platform (GCP). Assim que um arquivo é enviado, o sistema dispara uma mensagem via GCP Pub/Sub para notificar outros serviços sobre a disponibilidade do novo arquivo geoespacial.
A aplicação foi projetada para facilitar a integração de serviços que precisam lidar com dados geoespaciais, garantindo que os processos de upload e notificação ocorram de forma eficiente. A autenticação via Firebase oferece um controle de acesso robusto, enquanto a integração com GCP e Pub/Sub garante escalabilidade e comunicação em tempo real entre os serviços de processamento.
**Principais funcionalidades:**
- Autenticação de usuÔrios com Firebase.
- Processamento de arquivos KML.
- Upload de arquivos KML para um bucket GCP.
- Emissão de mensagens via Pub/Sub para notificação de novos arquivos.
Essa solução é ideal para sistemas que exigem integração em tempo real com dados geoespaciais, aproveitando a infraestrutura do Google Cloud.
https://github.com/user-attachments/assets/e112d3c2-4fcd-40f5-9180-9b553c09226a