head to head · open source

compose vs dtm

compose has 38,573 GitHub stars, 5,899 forks, 111 open issues and last shipped yesterday. dtm has 10,933 stars, 997 forks, 87 open issues and last shipped 10 months ago. compose leads on adoption by 253% (38,573 vs 10,933 stars). compose is written in Go under Apache-2.0; dtm is written in Go under BSD-3-Clause. compose has attracted 15% as many forks as stars, dtm 9%. compose was the more recently maintained of the two, and both are self-hostable with no licence fee. The two share 2 topic tags (go, golang), so they are genuine substitutes rather than adjacent tools.

Two open source projects, one decision. Both are free and self-hostable — the differences are community size, license terms, language stack and release pace.

compose ★ 39K dtm ★ 11K category Infrastructure & Operations

← all 20902 open source comparisons

Side by side

compose dtm
GitHub stars ★ 39K ★ 11K
License Apache-2.0 BSD-3-Clause
Written in Go Go
Last push 2026-11-02 2026-01-03
Forks ⑂ 5.9K ⑂ 997
Self-hosting Yes Yes
Data ownership Your server Your server

pick compose if

  • You weight community size — 39K stars and counting
  • You want the Apache-2.0 license terms
  • Your stack matches Go
  • You value the larger contributor base for long-term maintenance

full compose profile →

pick dtm if

  • You want the dtm feature set and don't need the biggest community
  • You prefer the BSD-3-Clause license terms
  • Your stack matches Go
  • You evaluated both and dtm fits your workflow better

full dtm profile →

About compose

Table of Contents Docker Compose Where to get Docker Compose + Windows and macOS + Linux Quick Start Contributing Legacy Docker Compose Docker Compose is a tool for running multi container applications on Docker defined using the Compose file format. A Compose file is used to define how one or more containers that make up your application are configured. Once you have a Compose file, you can create and start your application with a single command: docker compose up . Note : About Docker Swarm Docker Swarm used to rely on the legacy compose file format but did not adopt the compose specification so is missing…

read the full compose overview →

About dtm

English 简体中文 Distributed Transactions Manager What is DTM DTM is a distributed transaction framework which provides cross service eventual data consistency. It provides saga, tcc, xa, 2 phase message, outbox, workflow patterns for a variety of application scenarios. It also supports multiple languages and multiple store engine to form up a transaction as following: Who's using DTM (partial) Tencent Bytedance Ivydad More Features Support for multiple transaction modes: SAGA, TCC, XA, Workflow, Outbox Multiple languages support: SDK for Go, Java, PHP, C , Python, Nodejs Better Outbox: 2 phase messages, a more…

read the full dtm overview →

More in Infrastructure & Operations

Related comparisons

More Orchestration & Scheduling projects

Compare either of these against the rest of the Orchestration & Scheduling field.

Frequently asked questions

Is compose or dtm more popular?

compose has 38,573 GitHub stars and dtm has 10,933. compose has the larger community by that measure.

Are compose and dtm free?

Both are open source. compose is licensed under Apache-2.0 and dtm under BSD-3-Clause. Neither carries a licence fee.

What is the difference between compose and dtm?

compose is written in Go and dtm in Go. The practical differences are community size, licence terms, language stack and release cadence — all compared in the table above.

Which should I choose, compose or dtm?

Choose compose if you want the larger community (38,573 stars) or its Apache-2.0 licence terms. Choose dtm if its feature set, stack or BSD-3-Clause licence fits better. Both are self-hostable.