go web skeleton
1.0.0
Un squelette d'application Web Golang complet.
中文说明
Contient:
gookit/slog Configuration utiliséego mod pour installer les dépendances de gestion Github Project https://github.com/inhere/go-web-skeleton
api/ API interface application handlers
|- controller/
|- middleware/
|_ routes.go
app/ Common directory (public methods, application initialization, public components, etc.)
cmd/ CLI command line application commands
|_ cliapp/ command line application entry file (main)
config/ Application configuration directory (basic configuration plus various environment configurations)
model/ Data and logic code directory
|- form/ Request form structure data definition, form validation configuration
|- logic/ Logic processing
|- mongo/ MongoDB data collection model definition
|- mysql/ MySQL data form model definition
|_ rds/ Redis data model definition
resource/ Non-code resources used by some projects (language files, view template files, etc.)
runtime/ Temporary file directory (file cache, log files, etc.)
static/ Static resource directory (js, css, etc.)
main.go Web application entry file
Dockerfile Dockerfile
Makefile Has written some common shortcut commands to help package, build docker, generate documentation, run tests, etc.
...
Rendre par
tree -d 2 ./
Utiliser ✅ Marque Current Used GO Package
Fournir un service HTTP et un routage
Autre :
Application de ligne de commande
Gestion de la configuration
Mysql:
MongoDB:
Redis:
Demander la validation des données
Bibliothèque de sérialisation haute performance
JSON:
Centre de registre de configuration:
Dockerfile : Script de construction d'image docker pour l'environnement de production, basé sur Alpine, construisez une image de projet d'une taille estimée d'environ 30 mmakefile : certaines commandes de Make Quick-On ont été construites pour aider à générer rapidement des images de documentation et de construire. go-web-skeleton au nom de votre projet.github.com/inhere/go-web-skeleton par le nom de votre projet (pour le fichier go)go-web-skeleton par le nom de votre projet (principalement Dockerfile, Makefile)go mod tidy pour installer des bibliothèques dépendantesgo run main.gogo run ./cmd/appinitinstallation:
go get -u github.com/swaggo/swag/cmd/swagVeuillez vérifier la documentation et les exemples de
swaggo/swag
Généré pour le répertoire spécifié:
swag init -o static
# This file will be generated at the same time. It can be deleted if it is not needed.
rm static/docs.goAvis:
swaggo/swagest le champ d'analyse description des informations du commentaire du champ
type SomeModel struct {
// the name description
Name string `json:"name" example:"tom"`
} Go test
// output coverage
Go test -covergofmt -s -l ./
go fmt ./...Remarque: vous devez d'abord installer
GoLint.
golint ./...Mit