其他
分分钟生成一个全栈 Web 项目(Go,Angular/React/Vue)
关注公众号 “转角遇到GitHub” ,每天推荐给你优秀开源项目
大家好,我是欧盆索思(opensource),每天为你带来优秀的开源项目!
今天推荐的这个项目叫 Goxygen,项目地址:https://github.com/Shpota/goxygen,Star 数:2k。
Goxygen 致力于节省你搭建一个项目的时间。它自动生成一个完全配置好的项目骨架,以方便你可以立即着手实现你的业务逻辑。Goxygen 生产后端的 Go 代码,并将其与前端组件相连,并且为生成的项目提供 Dockerfile 和 docker-compose 文件,以便项目在开发环境和生产环境快速运行起来。
支持的技术:
Supported Technologies | ||
---|---|---|
Front End | Angular | React |
Back End | Go | |
Database | MongoDB | MySQL |
简单使用
注意,请使用 Go1.11+。
go get -u github.com/shpota/goxygen
go run github.com/shpota/goxygen init my-app
这会在你的 my-app
目录下生成一个项目。
这个项目已经可以用 docker-compose 来运行了:
cd my-app
docker-compose up
之后,就可以在 http://localhost:8080 查看你的 Web 项目了。
你可以在生成的项目里的 README 里查看更多细节信息。
生成的项目的结构 (基于 React/MongoDB 的项目)。
my-app
├── server # Go项目文件
│ ├── db # MongoDB通信
│ ├── model # 领域对象
│ ├── 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 # 前端应用入口
│ │ └── index.css # 全局样式
│ ├── package.json # 前端依赖
│ ├── .env.development # 包含开发环境的API endpoint
│ └── .env.production # 包含生产环境的API endpoint
├── Dockerfile # 前后端build Dockerfile
├── docker-compose.yml # 生产环境的docker-compose
├── docker-compose-dev.yml # 开发使用的docker-compose
├── init-db.js # 创建一个 MongoDB collection,并写入测试数据
├── .dockerignore # 指明Docker build的时候要忽略的文件
├── .gitignore
└── README.md # 如何使用生成repo的教程
注意 Goxygen 只是为你生成一个项目的基本框架,但不强迫你使用任何特定的工具。它不会为你的项目添加任何不必要的依赖,仅有的依赖只有后端的 database driver 和前端的 axios。
文末「阅读原文」可直达项目首页。
今天的项目大家觉得怎么样吗?如果你喜欢,请在文章底部留言、点赞或关注转发,你的支持就是我持续更新的最大动力!
推荐阅读
转角遇到GitHub - 送给爱开源的你
Git · GitHub · GitLab · Gitee