skip to content
Paul Babatuyi

UploadStream-gRPC

Tech Stack: Golang, gRPC, PostgreSQL, Kubernetes, Prometheus, Protocol Buffers
GitHub: UploadStream-gRPC

Overview

Production-ready file transfer service in Go leveraging gRPC streaming for efficient multi-GB file handling, capable of 10k+ daily uploads.

Key Features

High-Performance Streaming

  • gRPC client/server streaming for large file handling
  • Chunked bidirectional streaming (64KB default chunks)
  • Memory-efficient transfers without loading entire files
  • Resumable uploads and downloads

Data Management

  • PostgreSQL for ACID-compliant metadata storage
  • User ownership tracking and access control
  • Pagination support for file listings
  • Soft-delete with deleted_at timestamps
  • Filesystem abstraction for flexible storage backends

Validation & Tooling

  • proto-validate for input validation
  • Protocol Buffers managed with Buf toolchain
  • Makefile for build/test automation and database migrations

Cloud-Native & Observability

  • Kubernetes manifests for scalable deployment
  • Prometheus metrics and alerts for monitoring
  • Production-ready configuration
  • Modern Go practices (generics, gRPC ecosystem)
  • Cloud-native architecture and best practices