項(xiàng)目推薦:快速生成一個(gè)全棧 Web 項(xiàng)目
今天推薦的這個(gè)項(xiàng)目叫 Goxygen,項(xiàng)目地址:https://github.com/Shpota/goxygen,Star 數(shù):2k。
Goxygen 致力于節(jié)省你搭建一個(gè)項(xiàng)目的時(shí)間。它自動(dòng)生成一個(gè)完全配置好的項(xiàng)目骨架,以方便你可以立即著手實(shí)現(xiàn)你的業(yè)務(wù)邏輯。Goxygen 生產(chǎn)后端的 Go 代碼,并將其與前端組件相連,并且為生成的項(xiàng)目提供 Dockerfile 和 docker-compose 文件,以便項(xiàng)目在開(kāi)發(fā)環(huán)境和生產(chǎn)環(huán)境快速運(yùn)行起來(lái)。
支持的技術(shù):
Supported Technologies
Front EndAngularReactBack EndGo
DatabaseMongoDBMySQL
簡(jiǎn)單使用
注意,請(qǐng)使用 Go1.11+。 
- go get -u github.com/shpota/goxygen
 - go run github.com/shpota/goxygen init my-app
 
這會(huì)在你的 my-app 目錄下生成一個(gè)項(xiàng)目。
這個(gè)項(xiàng)目已經(jīng)可以用 docker-compose 來(lái)運(yùn)行了: 
- cd my-app
 - docker-compose up
 
之后,就可以在 http://localhost:8080 查看你的 Web 項(xiàng)目了。
你可以在生成的項(xiàng)目里的 README 里查看更多細(xì)節(jié)信息。
生成的項(xiàng)目的結(jié)構(gòu) (基于 React/MongoDB 的項(xiàng)目)。 
- my-app
 - ├── server # Go項(xiàng)目文件
 - │ ├── db # MongoDB通信
 - │ ├── model # 領(lǐng)域?qū)ο?nbsp;
 - │ ├── web # REST APIs, web server
 - │ ├── server.go # 后端入口
 - │ └── go.mod # 后端依賴
 - ├── webapp
 - │ ├── public # icons, static files, 和 index.html
 - │ ├── src
 - │ │ ├── App.js # React main組件
 - │ │ ├── App.css # App組件樣式
 - │ │ ├── index.js # 前端應(yīng)用入口
 - │ │ └── index.css # 全局樣式
 - │ ├── package.json # 前端依賴
 - │ ├── .env.development # 包含開(kāi)發(fā)環(huán)境的API endpoint
 - │ └── .env.production # 包含生產(chǎn)環(huán)境的API endpoint
 - ├── Dockerfile # 前后端build Dockerfile
 - ├── docker-compose.yml # 生產(chǎn)環(huán)境的docker-compose
 - ├── docker-compose-dev.yml # 開(kāi)發(fā)使用的docker-compose
 - ├── init-db.js # 創(chuàng)建一個(gè) MongoDB collection,并寫入測(cè)試數(shù)據(jù)
 - ├── .dockerignore # 指明Docker build的時(shí)候要忽略的文件
 - ├── .gitignore
 - └── README.md # 如何使用生成repo的教程
 
注意 Goxygen 只是為你生成一個(gè)項(xiàng)目的基本框架,但不強(qiáng)迫你使用任何特定的工具。它不會(huì)為你的項(xiàng)目添加任何不必要的依賴,僅有的依賴只有后端的 database driver 和前端的 axios。
















 
 
 










 
 
 
 