不知道如何組織項(xiàng)目結(jié)構(gòu),這個(gè)項(xiàng)目也許可以給你啟發(fā)
現(xiàn)在流行全棧。什么是全棧?一般指一個(gè)人同時(shí)把服務(wù)端和前端(或客戶端)都搞定。今天推薦的這個(gè)項(xiàng)目,適合 Go 全棧程序員,它能夠幫助你創(chuàng)建一個(gè)應(yīng)用框架,包含后端(Go)、前端(JavaScript、TypeScript)和自動(dòng)化部署,這只需要一個(gè)命令。
項(xiàng)目地址:https://github.com/create-go-app/cli,Star 數(shù)不多。
該項(xiàng)目的目標(biāo)是,讓你專注業(yè)務(wù)邏輯開發(fā),其他的它幫你搞定。
如何開始
請(qǐng)使用 Go1.1+ 版本,因?yàn)樾枰褂?module。推薦安裝方式:
go get github.com/create-go-app/cli
建議將 cli 重命名為 cgapp。以下使用 cgapp。
$ cgapp
A powerful CLI for the Create Go App project.
Create a new production-ready project with backend (Golang),
frontend (JavaScript, TypeScript) and deploy automation
(Ansible, Docker) by running one CLI command.
-> Focus on writing code and thinking of business logic!
<- The Create Go App CLI will take care of the rest.
A helpful documentation and next steps -> https://create-go.app/
Usage:
cgapp [command]
Available Commands:
create Create a new project via interactive UI or configuration file
deploy Deploy your project to a remote server via interactive UI or configuration file
help Help about any command
init Init a configuration file for the Create Go App project
Flags:
-h, --help help for cgapp
-v, --version version for cgapp
Use "cgapp [command] --help" for more information about a command.
創(chuàng)建一個(gè)項(xiàng)目試試:
$ cgapp create
* * * Create a new project via Create Go App CLI v1.6.7...
[?] Choose a backend framework: [Use arrows to move, type to filter]
net/http
> Fiber
Echo
Gin
可見,后端它將支持 net/http、Fiber 框架、Echo 框架和 Gin 框架(目前 Echo 和 Gin 的支持還在開發(fā)中)。這是一個(gè)交互界面,選完后端框架后,會(huì)讓選前端 UI 庫(kù):
[?] Choose a frontend UI library: [Use arrows to move, type to filter]
none
React
Preact
> Vue
Angular
Svelte
Sapper
接著是選擇 Web Server:
[?] Choose a web/proxy server: [Use arrows to move, type to filter]
> none
Nginx
還讓你選擇:
[?] Do you want to create Ansible playbook for deploy your project?
全部 OK 后會(huì)創(chuàng)建響應(yīng)的目錄結(jié)構(gòu)。
試用建議
雖然說(shuō)已經(jīng)可以為生產(chǎn)環(huán)境使用,但試用下來(lái),感覺還不完善,而且有些支持還沒完成。實(shí)話說(shuō),不支持的,交互式菜單中就不應(yīng)該有,否則總是錯(cuò)誤,有點(diǎn)掉價(jià)~
所以感興趣的,可以看看這個(gè)組織下的模板,看看它是怎么組織目錄結(jié)構(gòu)的:https://github.com/create-go-app。
文末「閱讀原文」可直達(dá)項(xiàng)目首頁(yè)。
今天的項(xiàng)目大家覺得怎么樣嗎?如果你喜歡,請(qǐng)?jiān)谖恼碌撞苛粞?、點(diǎn)贊或關(guān)注轉(zhuǎn)發(fā),你的支持就是我持續(xù)更新的最大動(dòng)力!
推薦閱讀
