内容简介:Goxygen aims at saving your time while setting up a new project. It creates a skeleton of an application with all configuration done for you. You can start implementing your business logic straight away. Goxygen generates back end Go code, connects it with
Goxygen
Generate a Web project with Go, Angular/React/Vue, and MongoDB in seconds.
Goxygen aims at saving your time while setting up a new project. It creates a skeleton of an application with all configuration done for you. You can start implementing your business logic straight away. Goxygen generates back end Go code, connects it with front end components, provides a Dockerfile for the application and creates docker-compose files for convenient run in development and production environments.
How to use
You need to have Go 1.11 or newer on your machine.
go get -u github.com/shpota/goxygen go run github.com/shpota/goxygen init my-app
This generates a project in my-app
folder.
By default, a React-based project is generated. You can choose
from Angular, React and Vue by passing angular
, react
and vue
to the --frontend
flag. For example:
go run github.com/shpota/goxygen init --frontend vue my-app
The generated project is ready to run with docker-compose
:
cd my-app docker-compose up
After the build is completed, the application is accessible on http://localhost:8080 .
You can find more details on how to work with the generated project in its readme file.
Structure of a generated project (React-based app)
my-app ├── server # Go project files │ ├── db # MongoDB communications │ ├── model # domain objects │ ├── web # REST APIs, web server │ ├── server.go # the starting point of the server │ └── go.mod # server dependencies ├── webapp │ ├── public # icons, static files, and index.html │ ├── src │ │ ├── App.js # the main React component │ │ ├── App.css # App component-specific styles │ │ ├── index.js # the entry point of the application │ │ └── index.css # global styles │ ├── package.json # front end dependencies │ ├── .env.development # holds API endpoint for dev environment │ └── .env.production # API endpoint for prod environment ├── Dockerfile # builds back end and front end together ├── docker-compose.yml # prod environment deployment descriptor ├── docker-compose-dev.yml # runs local MongoDB for development needs ├── init-db.js # creates a MongoDB collection with test data ├── .dockerignore # specifies files ignored in Docker builds ├── .gitignore └── README.md # guide on how to use the generated repo
Files such as unit tests or sample components are not included here for simplicity.
Dependencies
Goxygen generates a basic structure of a project and doesn't force you to use a specific set of tools. That's why it doesn't bring unneeded dependencies to your project. It uses only mongo-go-driver on the back end side and axios in React and Vue projects. Angular projects use only Angular specific libraries.
How to contribute
If you found a bug or have an idea on how to improve the project open an issue and we will fix it as soon as possible. You can also propose your changes via a Pull Request. Fork the repository, make changes, send us a pull request and we'll review it shortly. We also have a Gitter chat where we discuss all the changes.
Credits
Goxygen's logo was created by Egon Elbre .
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
高性能MySQL
施瓦茨 (Baron Schwartz)、扎伊采夫 (Peter Zaitsev)、特卡琴科 (Vadim Tkachenko) / 宁海元、周振兴、彭立勋、翟卫祥,刘辉 / 电子工业出版社 / 2013-5-1 / 128.00元
《高性能mysql(第3版)》是mysql 领域的经典之作,拥有广泛的影响力。第3 版更新了大量的内容,不但涵盖了最新mysql 5.5版本的新特性,也讲述了关于固态盘、高可扩展性设计和云计算环境下的数据库相关的新内容,原有的基准测试和性能优化部分也做了大量的扩展和补充。全书共分为16 章和6 个附录,内容涵盖mysql 架构和历史,基准测试和性能剖析,数据库软硬件性能优化,复制、备份和恢复,高可......一起来看看 《高性能MySQL》 这本书的介绍吧!