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)