ling-baseling-base

lingcli 脚手架

一键生成集成 ling-base 的 Go 项目

在线 Playground

在浏览器中直接体验本页相关 API,无需本地安装 Go 环境。

lingcli

LingByte 项目脚手架 — 一键生成完整 Go 项目骨架。

安装

go install github.com/LingByte/ling-base/lingcli@latest

或从源码构建:

git clone https://github.com/LingByte/ling-base.git
cd ling-base/lingcli
go build -o /usr/local/bin/lingcli .

用法

# 交互模式(推荐)
lingcli create myapp

# 在当前目录初始化
lingcli create .

# 非交互模式
lingcli create myapp \
    --template web-api \
    --module github.com/me/myapp \
    --modules apidocs,limiter,circuitbreaker,middleware,jwt \
    --port 8080 \
    --author "Your Name"

# 列出可用模板
lingcli list

# 版本号
lingcli version

命令

命令说明
lingcli create <项目名>创建新项目
lingcli create .在当前目录初始化
lingcli list列出可用项目模板
lingcli version打印版本号
lingcli help显示帮助

create 参数

参数说明默认值
--template项目模板(web-api/grpc-service/cli-tool/library/worker)交互选择
--moduleGo module 路径交互输入
--author作者名称
--port服务端口(web-api/grpc-service)8080 / 50051
--modules要集成的 ling-base 模块(逗号分隔)
--docker生成 Docker 部署文件true
--no-docker不生成 Docker 部署文件-
--git初始化 git 仓库true
--no-git不初始化 git 仓库-

可用模板

模板说明
web-apiHTTP REST API 服务(Gin + GORM + Bootstrap)
grpc-servicegRPC 服务
cli-tool命令行工具
library可复用 Go 库
worker后台任务 / 消费者服务

可集成的 ling-base 模块

模块 ID说明
apidocsAPI 文档 UI + OpenAPI 3.1 spec
limiter令牌桶限流
circuitbreaker熔断 + 超时中间件
middlewareHTTP 中间件合集
jwtJWT 鉴权 + 登录/刷新路由
cache缓存抽象
lock分布式锁
retry重试策略
scheduler分布式定时任务
eventbus本地事件总线
stats统计采集
notification通知调度
mq消息队列
stores对象存储
search全文搜索
bloom布隆过滤器
captcha验证码
opentelemetryOpenTelemetry 链路追踪
i18n国际化

生成后的项目结构(web-api)

myapp/
├── cmd/server/main.go              # 入口
├── internal/
│   ├── app/app.go                  # 启动 + 路由注册
│   ├── auth/auth.go                # JWT 鉴权(选 jwt 时)
│   ├── config/config.go            # 配置(YAML + 环境变量覆盖)
│   ├── handler/handler.go          # HTTP 处理器(DTO 校验)
│   ├── middleware/middleware.go    # 中间件
│   ├── model/user.go               # 数据模型
│   ├── repository/                 # DAO 层
│   └── service/                    # 业务逻辑层
├── pkg/response/                   # 统一响应封装
├── configs/                        # YAML 配置
├── .github/workflows/ci.yml        # CI
├── Dockerfile                      # 多阶段构建
├── docker-compose.yml              # App + MySQL + Redis
├── Makefile                        # 构建命令
└── README.md

生成后操作

cd myapp
go mod tidy
make run          # 本地运行
make test         # 测试
make test-race    # 竞态检测
make lint         # golangci-lint
make docker-up    # Docker Compose 启动

License

MIT

On this page