fx VS todo-api-microservice-example

Compare fx vs todo-api-microservice-example and see what are their differences.


A dependency injection based application framework for Go. (by uber-go)


Go microservice tutorial project using Domain Driven Design and Onion Architecture! (by MarioCarrion)
Our great sponsors
  • Nanos - Run Linux Software Faster and Safer than Linux with Unikernels
  • Scout APM - A developer's best friend. Try free for 14-days
  • SaaSHub - Software Alternatives and Reviews
fx todo-api-microservice-example
8 10
2,351 267
2.4% -
8.3 8.2
2 days ago 7 days ago
Go Go
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.


Posts with mentions or reviews of fx. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-11-17.


Posts with mentions or reviews of todo-api-microservice-example. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-12-01.
  • Golang for backend
    13 projects | reddit.com/r/golang | 1 Dec 2021
    One word of advise I can give you is that building a production-grade microservice in Go takes a bit; not because of the language but because you have consider the tradeoffs when choosing different packages to connect everything to make it work (because there's no Django, Ruby on Rails or Spring), I have an educational repository (still work in progress) trying to describe what I've learned from the last 5 years after successfully deploying multiple services to production where multiple engineers contribute and collaborate together; perhaps that could help you.
  • How to avoid "import cycle not allowed" when defining related models in different packages?
    2 projects | reddit.com/r/golang | 25 Nov 2021
    With all of that being said I have an educational repository demonstrating this structure, I've been using it in real life for about 5 years already and I've successfully delivered services to production multiple times where multiple engineers contribute and collaborate together.
  • Good example of production grade rest api without an ORM
    3 projects | reddit.com/r/golang | 22 Oct 2021
    You may want to checkout the "Exposure Notifications Server" project; I also have a similar (educational) project that uses the Repository Pattern.
  • Idiomatic Go project strucutre
    5 projects | reddit.com/r/golang | 21 Oct 2021
    Similar to the "Exposure Notifications Server", I maintain a project for doing something like that with my own opinionated choices and tradeoffs, I know those work for sure because the systems I've built follow that structure and are still running and maintained by myself and a group of engineers, so perhaps you find it useful.
  • I'm curious about developer dependencies for library projects
    7 projects | reddit.com/r/golang | 16 Oct 2021
    I recently updated my project to cover that.
  • Microservices in Go: Events and Background jobs using Kafka
    1 project | dev.to | 2 Sep 2021
    Kafka is an event streaming platform, it allows us to publish, subscribe, store and process events. An Event indicates something that happened, if we use our To Do Microservice as example, we could define events to indicate a TaskCreated or TaskUpdated when a Task is created or when a Task is updated, respectively.
  • [Question] How to split main.go into separate packages/files whilst maintaining Dependency Injection?
    8 projects | reddit.com/r/golang | 26 Aug 2021
    I maintain an educational repository that describes the approach I've been taking for building proprietary production-ready services for years, it may or may not satisfy what you're asking for but at least it should give you another approach to think about structuring your service.
  • Perfect app architecture for dynamic, testable and predictable code ie. help me I'm in a rewrite loop
    3 projects | reddit.com/r/golang | 13 Aug 2021
    Hello, you may want to refer to this example repository; it's still a work in progress and perhaps does not answer all your questions but is a real-life example that refers to my professional experience when building scalable services.
  • confluent-kafka-go or Shopify/sarama
    3 projects | reddit.com/r/golang | 16 Jul 2021
    I've been using confluentinc/confluent-kafka-go for a while already in production and zero problems; I don't know if you are already exploring concrete examples but I have a commit that you may want to take a look at.
  • Organization, importing, and exporting
    1 project | reddit.com/r/golang | 6 May 2021
    One way I like organizing code for big and complex services is leverage concepts coming from Domain Driven Design and Hexagonal Architecture, I have a repository describing that approach, keep in mind that repo is not a template nor a framework, it's just an example that describes different concepts that have worked for me building real-life production systems; I'm mentioning all of that because the decisions made in that repo considered different tradeoffs and the concrete domain I was trying to model.

What are some alternatives?

When comparing fx and todo-api-microservice-example you can also consider the following projects:

dig - A reflection based dependency injection toolkit for Go.

wire - Strict Runtime Dependency Injection for Golang

captcha - :sunglasses:Package captcha provides an easy to use, unopinionated API for captcha generation

container - A lightweight yet powerful IoC dependency injection container for Go projects

svc-fizzbuzz - A simple fizzbuzz microservice

deckmaster - An application to control your Elgato Stream Deck on Linux

watermill - Building event-driven applications the easy way in Go.

franz-go - franz-go contains a feature complete, pure Go library for interacting with Kafka from 0.8.0 through 3.0.0+. Producing, consuming, transacting, administrating, etc.

archiver - Easily create & extract archives, and compress & decompress files of various formats

linker - Dependency Injection and Inversion of Control package

gocontainer - Simple Dependency Injection Container

di - ๐Ÿ›  A full-featured dependency injection container for go programming language.