🎉 DevOps Interview Prep Bundle is live — 1000+ Q&A across 20 topicsGet it →
All Articles

DevStream Review 2026: Open Source Developer Platform Toolkit Worth Using?

DevStream automates developer platform setup — install ArgoCD, Grafana, GitHub Actions, and more with one config file. Honest review after testing it.

DevOpsBoys4 min read
Share:Tweet

DevStream (dtm) is an open-source developer platform manager — a CLI and config-driven tool that installs and manages the tools in your developer platform. Think of it as Terraform for your developer toolchain.

What DevStream Does

DevStream's key concept is plugins. Each plugin manages one tool (ArgoCD, Grafana, GitHub Actions, Jira, Trello, etc.). You describe what you want in a YAML config, and DevStream installs/updates/removes the tools.

yaml
# config.yaml
config:
  state:
    backend: local
    options:
      stateFile: devstream.state
 
tools:
  - name: argocd
    instanceID: default
    dependsOn: []
    options:
      repo:
        url: https://argoproj.github.io/argo-helm
        name: argo
      chart:
        chartPath: argo/argo-cd
        chartVersion: 5.51.0
        namespace: argocd
        wait: true
  
  - name: grafana-operator
    instanceID: default
    dependsOn: []
    options:
      chart:
        chartVersion: 5.4.0
        namespace: grafana
  
  - name: github-actions
    instanceID: backend-service
    dependsOn: []
    options:
      owner: your-github-org
      repo: backend-service
      language:
        name: golang
        version: "1.22"
      branch: main
      build:
        enable: true
      docker:
        enable: true
        registry:
          type: dockerhub
          username: yourusername

Apply the config:

bash
dtm apply -f config.yaml

DevStream installs ArgoCD, Grafana Operator, and a GitHub Actions CI workflow for your Go service — all from one file.

The State Concept

Like Terraform, DevStream maintains state. If you change a config, it diffs against the last state and only applies the delta. Run dtm destroy to clean up.

bash
# See what will change
dtm plan -f config.yaml
 
# Apply changes
dtm apply -f config.yaml
 
# Current state
dtm list plugins
 
# Destroy everything
dtm destroy -f config.yaml

State can be stored locally, in S3, or in a Kubernetes secret.

What's Actually Good

Idempotent Tool Management

Running dtm apply multiple times is safe. It's smart enough to detect what's already installed. This is valuable for platform teams who want reproducible environments:

bash
# First run - installs everything
dtm apply -f config.yaml
# → Installing ArgoCD... Done
# → Installing Grafana... Done
# → Creating GitHub Actions workflow... Done
 
# Second run - nothing to do
dtm apply -f config.yaml
# → ArgoCD: no changes
# → Grafana: no changes  
# → GitHub Actions: no changes

GitHub Actions Workflow Generation

This is genuinely useful for platform teams. DevStream generates opinionated, ready-to-use CI/CD workflows for multiple languages:

yaml
tools:
  - name: github-actions
    instanceID: java-service
    options:
      owner: my-org
      repo: my-java-app
      language:
        name: java
        version: "17"
      test:
        enable: true
        coverage:
          enable: true
          minLines: 80
      docker:
        enable: true
        registry:
          type: ecr
          url: 123456789.dkr.ecr.us-east-1.amazonaws.com
      deploy:
        enable: true
        type: gitops  # generates ArgoCD Application too

Running this creates a complete Java CI/CD pipeline — compile, test, coverage check, Docker build, push to ECR, and an ArgoCD Application object. What usually takes a junior engineer 2 days takes 10 minutes with DevStream.

Plugin Library

DevStream has 40+ plugins:

  • CI/CD: GitHub Actions, GitLab CI, Jenkins
  • GitOps: ArgoCD, FluxCD
  • Monitoring: Grafana, Prometheus stack
  • Security: Trivy, SonarQube
  • Project management: Jira, Trello
  • Dev tools: Backstage, Harbor

What's Not Great

Limited Kubernetes-Native Integration

DevStream is a CLI tool that wraps Helm charts and GitHub APIs. It's not a Kubernetes controller — you can't declare "I want ArgoCD installed" in a CRD and have it reconcile continuously. For teams wanting Kubernetes-native infrastructure management, Crossplane is more appropriate.

Small Community

DevStream was created by a Chinese open-source company (Merico/DevLake). The community is growing but small, with most activity on GitHub issues and WeChat groups. Stack Overflow coverage is very limited.

Config Language Is Basic

Unlike Terraform, DevStream's config format doesn't support variables, loops, or conditionals (yet). If you want the same setup across 10 repos, you write 10 blocks or script around the CLI. Terraform modules this isn't.

Still Maturing

Some plugins are well-tested; others are thin wrappers that break with minor version updates. Check the plugin quality before relying on it in production.

DevStream vs Alternatives

DevStreamKubefirstCrossplaneManual Helm
ConceptConfig-driven CLIFull bootstrapK8s-native operatorYou manage everything
ScopeTool managementComplete platformInfrastructure + appsAnything
K8s operatorNoNoYes (CRDs)N/A
Plugins/providers40+Fixed (opinionated)300+ providersN/A
State managementLocal/S3/K8s secretGit + ArgoCDK8s CRsHelm state
MaturityMediumMediumHighHigh
Best forPlatform teams, CI scaffoldingQuick platform bootstrapProduction infrastructureFull control

My Verdict

Score: 6.5/10

DevStream is useful for specific workflows — particularly generating GitHub Actions pipelines for many repos quickly. The config-as-code model for tool management is sound, and the state management works well.

But it's not a replacement for Kubefirst (full platform bootstrap) or Crossplane (production infrastructure management). The community is small, the plugin quality varies, and the lack of advanced config features limits reuse.

Use DevStream if:

  • You manage 10+ repos and want to standardize CI/CD pipelines without writing workflows from scratch
  • Your team is small and wants one config file to manage your entire toolchain
  • You want to explore the "platform management as code" concept

Skip DevStream if:

  • You need production-grade infrastructure management (use Crossplane or Terraform)
  • You want a complete platform in one command (use Kubefirst)
  • You're on a small project (manual Helm is fine)

DevStream GitHub | DevStream docs | Kubefirst (more complete alternative)

🔧

Today I Fixed

Short real fixes from production — posted daily

Browse fixes
Newsletter

Stay ahead of the curve

Get the latest DevOps, Kubernetes, AWS, and AI/ML guides delivered straight to your inbox. No spam — just practical engineering content.

Related Articles

Comments