Need advice about which tool to choose?Ask the StackShare community!

goa

18
42
+ 1
0
Micro

68
55
+ 1
2
Add tool

goa vs Micro: What are the differences?

Developers describe goa as "A design driven approach for building microservices in Go". goa is a framework for building microservices in Go using a unique design-first approach. goa provides a novel approach for developing microservices that saves time when working on independent services and helps with keeping the overall system consistent. On the other hand, Micro is detailed as "A microservice toolkit". Micro provides the core requirements for building and managing microservices. It consists of a set of libraries and tools which are primarily geared towards development in the programming language Go, however looks to solve for other languages via HTTP using a Sidecar.

goa and Micro can be categorized as "Microservices" tools.

Some of the features offered by goa are:

  • Creating a service with goa starts with the design. The goa DSL lets you describe the global properties, types and endpoints that make up the service API. The apidsl package docs provides a quick reference to all the DSL functions.
  • Once the design of the API is in place goagen generates the corresponding data structures, validation code and handlers. Handlers are defined as interface methods. Implementing the service is thus as simple as implementing the generated interfaces.
  • The best part about the goa DSL is that the engine is completely decoupled. Plugins can implement custom DSLs to extend the concepts described in the design. Plugins can also generate arbitrary outputs.

On the other hand, Micro provides the following key features:

  • API
  • CLI
  • Web UI

goa and Micro are both open source tools. It seems that Micro with 6.45K GitHub stars and 528 forks on GitHub has more adoption than goa with 3.46K GitHub stars and 389 GitHub forks.

Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of goa
Pros of Micro
    Be the first to leave a pro
    • 1
      Great flexibility
    • 1
      Nice tooling

    Sign up to add or upvote prosMake informed product decisions

    What is goa?

    goa is a framework for building microservices in Go using a unique design-first approach. goa provides a novel approach for developing microservices that saves time when working on independent services and helps with keeping the overall system consistent.

    What is Micro?

    Micro is a framework for cloud native development. Micro addresses the key requirements for building cloud native services. It leverages the microservices architecture pattern and provides a set of services which act as the building blocks

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use goa?
    What companies use Micro?
    See which teams inside your own company are using goa or Micro.
    Sign up for StackShare EnterpriseLearn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with goa?
    What tools integrate with Micro?
      No integrations found
      What are some alternatives to goa and Micro?
      JavaScript
      JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
      Git
      Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
      GitHub
      GitHub is the best place to share code with friends, co-workers, classmates, and complete strangers. Over three million people use GitHub to build amazing things together.
      Python
      Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best.
      jQuery
      jQuery is a cross-platform JavaScript library designed to simplify the client-side scripting of HTML.
      See all alternatives