git clone https://github.com/dejavuzhou/felix cd felix go mod download go install echo "添加 GOBIN 到 PATH环境变量" echo "或者" go get github.com/dejavuzhou/felix echo "go build && ./felix -h"
text/template
生成swagger.yaml, GORM 模型文件, GIN handler 文件 ...go fmt ./...
格式化代码archive/zip
打包*.go config.toml ...
代码,提供zip文件下载(命令行模式没有)GET<pagination>/POST/GET<one>/PATCH/DELETE
)[root@ericzhou felix]# felix ginbro -h generate a RESTful APIs app with gin and gorm for gophers Usage: felix ginbro [flags] 示例: felix ginbro -a dev.wordpress.com:3306 -P go_package_name -n db_name -u db_username -p 'my_db_password' -d '~/thisDir' Flags: --authColumn string 使用bcrypt方式加密的用户表密码字段名称 (default "password") --authTable string 认知登录用户表名称 (default "users") -a, --dbAddr string 数据库链接的地址 (default "127.0.0.1:3306") -c, --dbChar string 数据库字符集 (default "utf8") -n, --dbName string 数据库名称 -p, --dbPassword string 数据库密码 (default "password") -t, --dbType string 数据库类型: mysql/postgres/mssql/sqlite (default "mysql") -u, --dbUser string 数据库用户名 (default "root") -d, --dir string golang代码输出的目录,默认是当前目录 (default ".") -h, --help 帮助 -l, --listen string 生成go app 接口监听的地址 (default "127.0.0.1:5555") --pkg string 生成go app 包名称(go version > 1.12) 生成go.mod文件, eg: ginbroSon [root@ericzhou felix]#
对于那些喜欢使用命令行的同窗,大家能够选择使用web界面来操做前端
git clone https://github.com/dejavuzhou/felix cd felix go mod download go install echo "添加 GOBIN 到 PATH环境变量" echo "go build && ./felix -h" echo 打开Web界面 felix sshw -h felix sshw echo "三秒钟以后会自动帮助你打开浏览器,若是若是你使用的windows或者mac系统"
默认用户名和密码都是 admin
vue
archive/zip
写入到bytes.buffer
中$ felix ginbin -h 示例: felix ginbin -s dist -p staticbin Usage: felix ginbin [flags] Flags: -c, --comment string 代码注释说明. -d, --dest string 出输go代码到目录. (default ".") -f, --force 是否覆盖输出. (default true) -h, --help 帮助 -m, --mtime 是否修改文件时间戳. -p, --package string 输出的包名称. (default "felixbin") -s, --src string 前端静态文件的目录地址. (default "dist") -t, --tags string go 语言的标签. -z, --zip 是否zip压缩.
vuejs/dist 使用 felix ginbin
生成的go文件
https://github.com/dejavuzhou/felix/blob/master/staticbin/gin_static.gomysql
gin 路由应用二进制化的前端代码中间件以下:nginx
import "github.com/dejavuzhou/felix/staticbin" //导入felix ginbin 生成的二进制化包
git
https://github.com/dejavuzhou/felix/blob/master/ssh2ws/ssh2ws.gogithub
r := gin.Default() r.MaxMultipartMemory = 32 << 20 //sever static file in http's root path binStaticMiddleware, err := staticbin.NewGinStaticBinMiddleware("/") if err != nil { return err } r.Use(binStaticMiddleware)