Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/mukhriddin-dev/go-blog-app

A blog site structure written in Go
https://github.com/mukhriddin-dev/go-blog-app

aws docker go google-cloud postgresql postman

Last synced: about 2 months ago
JSON representation

A blog site structure written in Go

Awesome Lists containing this project

README

        

# My Blog Posts Platform (Back-End)
![image](https://github.com/mukhriddin-dev/Go-blog/assets/66181316/ea53bb09-2e84-4508-9443-207632139f50)

In my Golang Back-End, I executed advanced SQL queries, ensured data normalization, db migrations, and established proper indexes. Developed a suite of middlewares for, secureHeaders and client-based rate limiting, to manage request traffic. I handled race conditions using mutual exclusion locks in app and a versioning system in DB. Established a graceful shutdown process for the server, systematically formatted JSON responses, ensured proper error handling, and implemented automated API versioning using git.

Tests are written using Go and API is tested end-to-end using Postman. Application metrics are displayed and load-tested properly. The codebase is maintained on GitHub with dependency injection and third-party dependency security ensured. The CI/CD pipeline is implemented with GitHub workflow and Google Cloud Run. Mailtrap is used as the SMTP server for email dispatching.

Adopted multi-stage Docker file, and leveraged AWS ECR and RDS services. Implemented a stateful authentication process using tokens. Viper and cmd-flags are employed for app configuration. Load balancing is handled in Google Cloud Run, with support for HTTPS and TLS certificates.

## Technologies Used
Golang, Google Cloud, AWS, PostgreSQL, Docker, Postman

## Available Scripts
All the available commands are mentioned in Makefile in the root directory.

## Link to Front-End source code
https://github.com/mukhriddin-dev/Go-blog