GitHub Hot Board

GitHub Hot Board · Repository archive

linzhengen/ddd-gin-admin

This repository is a sample web application using DDD (Domain-Driven Design) architecture and Gin framework. (This description comes from the repository itself.)

Data at October 26linzhengen

Best

#298

Underappreciated Gems

100

Total stars

11

Total forks

3

Days on boards (30d)

Project statusLicense: Apache-2.0Last push: October 5Open issues: 1

Collected since 2026-10-25; unknown = not yet harvested

Put your badge on the README · linzhengen/ddd-gin-admin[![Put your badge on the README](https://git.vaiox.xyz/api/badge/linzhengen/ddd-gin-admin.svg)](https://git.vaiox.xyz/en/repo/linzhengen/ddd-gin-admin)
<a href="https://git.vaiox.xyz/en/repo/linzhengen/ddd-gin-admin"><img src="https://git.vaiox.xyz/api/badge/linzhengen/ddd-gin-admin.svg" alt="Put your badge on the README" height="20"></a>

README

ddd-gin-admin

English | 简体中文 | 日本語

This repository is a sample web application using DDD (Domain-Driven Design) architecture and Gin framework. Here's an overview of the features and technology stack provided in this repository.

CI

Features

This web application provides the following features:

  • User registration, login, and logout
  • User list display, detailed display, editing, and deletion
  • Access control based on roles (administrator, general user)
  • API documentation using Swagger

Technology Stack

This web application uses the following technology stack:

  • Golang
  • Gin - Web framework
  • GORM - ORM library
  • MySQL - Database
  • Swagger - API documentation generation tool
  • K8s / Skaffold / Docker - Containerization

DDD Architecture

  • Domain: This is where the domain and business logic of the application is defined.
  • Infrastructure: The infrastructure layer describes technical concerns such as DB access. This layer depends on the domain layer. Therefore, the infrastructure layer implements the interface defined in the repository of the domain layer.
  • Application: This layer serves as a passage between the domain and the interface layer. The sends the requests from the interface layer to the domain layer, which processes it and returns a response.
  • Interfaces: This layer holds everything that interacts with other systems, such as web services, RMI interfaces or web applications, and batch processing frontend.

Swagger UI

Compiles and hot-reloads for development

make skaffold-dev

Starting tunnel via minikube for service ddd-gin-admin-web

minikube service ddd-gin-admin-web --url -n ddd-gin-admin

Lint

make lint

Build binary

make build

references

Current rankings

  • 298

    Underappreciated Gems

    100 stars · 11 fork · Total stars (ascending)

    Underrated →

Momentum, past 30 days

Cumulative stars

Rank movement

Daily star gain

← Back to boards