Skip to content

Golang Gin Starter & Boilerplate with Clean Architecture

License

Notifications You must be signed in to change notification settings

JordanMarcelino/go-gin-starter

Repository files navigation

Golang Gin Starter & Boilerplate 🚀

A robust and scalable starter template for building backend applications using Golang and the Gin framework, designed with clean architecture principles.

🛠️ Tech Stack

  • ⚙️ Golang: v1.23 – Efficient, statically typed, compiled language.
  • 🗄️ PostgreSQL: PostgreSQL – Reliable and powerful SQL database.

📚 Framework & Libraries

  • 🌐 Gin: Gin – Fast and flexible HTTP web framework.
  • 🐘 Pgx: Pgx – High-performance Postgres driver.
  • ⚙️ Viper: Viper – Powerful configuration management.
  • 🗃️ Golang Migrate: Golang Migrate – Database migrations made easy.
  • 📝 Zerolog: Zerolog – Blazing fast, structured logging.
  • 🔄 Air: Air – Live reload for Go apps.

🚀 Getting Started

1️⃣ Clone the Repository

Clone the repository using the command below:

git clone https://github.com/JordanMarcelino/go-gin-starter

Or you can also use this repository as template

2️⃣ Move into the Directory

Navigate to the project directory:

cd go-gin-starter

3️⃣ Run the Local Server with Hot Reload

Use Air to start the development server with hot reload:

air

4️⃣ Build & Run the Docker Container

Deploy your application using Docker Compose:

docker compose up -d --build

Happy coding! 🧑‍💻🎉