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

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

Awesome Lists containing this project

README

          

## Microservices Application for Visualization, Processing, and Uploading Geospatial Files šŸ—ŗļø

![0_LBq0zdAbrHuseS4g](https://github.com/user-attachments/assets/b8586096-cb78-4976-bb54-4b9cd4a77375)

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