generator-gmd

0.1.1 • Public • Published

A golang code generator

A Yeoman generator for the golang programming language.

What is golang ?

See the Golang documentation

Why a generator ?

The Golang team defined guidelines to organize code and structure an application.

The generator builds a standard directory hierarchy complying with those guidelines.

Vendoring

This example relies on vendoring for all dependencies. It uses go dep for this purpose.

Versioning

Version is extracted from git tags using anything prefixed by v.

Usage

The following commands are available:

  • make help to get help
  • make to build the binary (in bin/)
  • make test to run tests
  • make test-verbose to run tests in verbose mode
  • make test-race for race tests
  • make test-xml for tests with xUnit-compatible output
  • make test-coverage for test coverage (will output index.html, coverage.xml and profile.out in test/coverage.*/.
  • make test PKG=helloworld/hello to restrict test to a package
  • make clean
  • make vendor to retrieve dependencies
  • make lint to run golint
  • make fmt to run gofmt

That's all folks !

This will generate a minimalist directory hierarchy, a makefile and a .gitignore.

myapp
  ├── hello
  │   ├── hello.go       # source file
  │   └── hello_test.go  # test file
  ├── main.go            # app entrypoint
  ├── Makefile
  ├── README.md
  ├── .dockerignore
  ├── Dockerfile
  ├── Gopkg.lock
  ├── Gopkg.toml
  └── .gitignore

How to contribute

  1. Fork the project

  2. Clone your forked project locally

$ sudo git clone https://github.com/your_repo/generator-gmd.git
$ cd generator-gmd
  1. Modify sources

  2. Symlink the package folder

$ sudo npm link
  1. Test your generator
$ yo gmd
  1. Submit a pull request

This project welcomes all contributors, feel free to apply !

Dependencies

This project depends on

Acknowledgment

This project is based on multiple project

Package Sidebar

Install

npm i generator-gmd

Weekly Downloads

3

Version

0.1.1

License

MIT

Unpacked Size

13.5 kB

Total Files

15

Last publish

Collaborators

  • abruneau