feat: Implement Swagger documentation and integrate Gin framework for API

This commit is contained in:
2025-03-09 14:57:50 +00:00
parent 2f469c1830
commit 98d21724ee
6 changed files with 322 additions and 4 deletions
+55
View File
@@ -0,0 +1,55 @@
// Package docs Code generated by swaggo/swag. DO NOT EDIT
package docs
import "github.com/swaggo/swag"
const docTemplate = `{
"schemes": {{ marshal .Schemes }},
"swagger": "2.0",
"info": {
"description": "{{escape .Description}}",
"title": "{{.Title}}",
"contact": {},
"version": "{{.Version}}"
},
"host": "{{.Host}}",
"basePath": "{{.BasePath}}",
"paths": {
"/": {
"get": {
"description": "Get a hello message",
"produces": [
"text/plain"
],
"summary": "Say hello",
"operationId": "hello",
"responses": {
"200": {
"description": "Hello from the Time Tracker Backend!",
"schema": {
"type": "string"
}
}
}
}
}
}
}`
// SwaggerInfo holds exported Swagger Info so clients can modify it
var SwaggerInfo = &swag.Spec{
Version: "1.0",
Host: "localhost:8080",
BasePath: "/",
Schemes: []string{},
Title: "Time Tracker API",
Description: "This is a simple time tracker API.",
InfoInstanceName: "swagger",
SwaggerTemplate: docTemplate,
LeftDelim: "{{",
RightDelim: "}}",
}
func init() {
swag.Register(SwaggerInfo.InstanceName(), SwaggerInfo)
}
+31
View File
@@ -0,0 +1,31 @@
{
"swagger": "2.0",
"info": {
"description": "This is a simple time tracker API.",
"title": "Time Tracker API",
"contact": {},
"version": "1.0"
},
"host": "localhost:8080",
"basePath": "/",
"paths": {
"/": {
"get": {
"description": "Get a hello message",
"produces": [
"text/plain"
],
"summary": "Say hello",
"operationId": "hello",
"responses": {
"200": {
"description": "Hello from the Time Tracker Backend!",
"schema": {
"type": "string"
}
}
}
}
}
}
}
+21
View File
@@ -0,0 +1,21 @@
basePath: /
host: localhost:8080
info:
contact: {}
description: This is a simple time tracker API.
title: Time Tracker API
version: "1.0"
paths:
/:
get:
description: Get a hello message
operationId: hello
produces:
- text/plain
responses:
"200":
description: Hello from the Time Tracker Backend!
schema:
type: string
summary: Say hello
swagger: "2.0"