Best apps for self-hosted developer tools on desktop in 2026 (7 tested)

XDA’s piece on building an entire developer workflow around Docker containers landed on a real pattern. The team’s stack pulled a self-hosted Git, a self-hosted CI runner, a containerized IDE, and a few smaller tools into one workflow that didn’t depend on GitHub, GitLab.com, or Replit being up. We tested 7 of the best apps for self-hosted developer tools on desktop in 2026. The list mixes Git hosts, CI engines, and full coding environments that run on a workstation, NAS, or rented VPS.

The brief: pick tools that install in an evening, run inside containers, and don’t ask for a license server at scale.

What to look for in a self-hosted developer tool

The category is broad; treat the picks as a stack, not a single replacement. Match each layer to what you actually need:

Quick comparison

AppBest forFree planLicenseStack layer
GiteaLightweight full forgeYes, fullySplit MIT / proprietaryGit host + CI + packages
ForgejoCommunity-governed Gitea forkYes, fullyAGPLGit host + CI + packages
CoderContainerized dev environmentsOpen source core, paid EnterpriseAGPLCoding environment
code-serverVS Code in the browserYes, fullyMITCoding environment
GitpodCloud-style ephemeral dev envsSelf-hosted: paid; SaaS free tierAGPL (legacy)Coding environment
Woodpecker CILightweight CI for forgesYes, fullyApache 2.0CI engine
Drone CIContainer-native CIOpen source core, paid EnterpriseApache 2.0 (CE)CI engine
JenkinsThe everything CIYes, fullyMITCI engine

1. Gitea — the default lightweight forge

Gitea is the most-deployed self-hosted Git forge in homelab and small-team setups. It ships as a single static binary in Go, runs happily on 512 MB of RAM, and covers Git hosting, code review, issues, projects, container registry, package registry, LFS, SSH access, and a GitHub-Actions-compatible CI system (Gitea Actions). The web UI is closer to GitHub than to GitLab and the onboarding is the shortest in the category.

Where it falls short: Governance is the recurring criticism since the 2024 split. The fork (Forgejo) sits in the same role for users who want a community-only project.

Pricing:

Platforms: Linux, Windows, macOS, Docker, FreeBSD

Download: Gitea or GitHub

Bottom line: The default forge for any homelab or small team that wants a single, batteries-included binary.

2. Forgejo — the community-governed Gitea fork

Forgejo is the soft-fork of Gitea created in late 2024 in response to Gitea’s corporate governance shift. It is fully compatible with Gitea (migrations are a database swap), feature-equivalent on the Git, issues, PRs, packages, and CI surface, and run by the Codeberg e.V. nonprofit. If governance and license clarity matter, this is the pick.

Where it falls short: Smaller community than Gitea by headcount, though growing fast. Some third-party integrations still ship “Gitea” branding by default.

Pricing:

Platforms: Linux, Windows, macOS, Docker

Download: forgejo.org or Codeberg

Bottom line: Pick Forgejo over Gitea when license clarity and community-only governance matter to you.

3. Coder — containerized dev environments

Coder is the self-hosted platform for spinning up developer workspaces inside containers, VMs, or Kubernetes pods. Each workspace is defined by a Terraform template, persists across sessions, and is accessible from the browser, a local VS Code, or JetBrains Toolbox. The open-source core handles auth, templates, and access; the paid Enterprise tier adds RBAC, audit logging, and high availability.

Where it falls short: Requires real infrastructure to be useful (Kubernetes or a server with enough headroom for several workspaces). Onboarding the first template is a half-day project.

Pricing:

Platforms: Linux server (Docker, Kubernetes, VM); clients on Windows, macOS, Linux, browser

Download: coder.com or GitHub

Bottom line: The right pick when “what’s my dev environment?” is the question slowing the team down.

4. code-server — VS Code in the browser

code-server is the most-deployed way to run VS Code in a browser tab. It runs as a single binary or Docker container, opens any folder, and supports the full VS Code extension marketplace via the Open VSX registry. On a $5 VPS or a NAS, it gives you full editor parity from any browser, including iPads and Chromebooks.

Where it falls short: It is the editor only; CI, builds, and runners are your problem. Some extensions that depend on Electron-only APIs are unavailable.

Pricing:

Platforms: Linux server (Docker or native); clients on any modern browser

Download: code-server on GitHub

Bottom line: The simplest way to get VS Code on any machine that has a browser.

5. Gitpod — cloud-style ephemeral dev envs

Gitpod is the prebuilt-dev-environment platform. Each workspace boots from a Dockerfile and a .gitpod.yml, dependencies are pre-installed by the prebuild step, and a fresh workspace is two clicks away. The hosted version has a generous free tier; the self-hosted Enterprise version (Gitpod Flex) targets larger teams.

Where it falls short: The fully self-hosted free path narrowed in 2024; for new deployments, Coder is usually the more obvious open-source choice. The Flex pricing is per-user, not flat.

Pricing:

Platforms: Linux (Kubernetes), browser clients

Download: gitpod.io

Bottom line: The pick for teams already on Gitpod’s hosted tier who want a paid self-hosted upgrade path.

6. Woodpecker CI — lightweight CI for self-hosted forges

Woodpecker CI is the community-friendly fork of Drone that stayed Apache 2.0. It pairs with Gitea, Forgejo, GitLab, GitHub, and Bitbucket; pipelines are YAML in the repo, steps run inside containers, and runners scale horizontally. The footprint is small enough that the server and one runner run inside a single Docker Compose file.

Where it falls short: Smaller plugin catalog than Jenkins. Some niche use cases (Android builds with signed AABs, for example) need extra plumbing.

Pricing:

Platforms: Linux server (Docker preferred), runners on Linux, Windows, macOS

Download: woodpecker-ci.org or GitHub

Bottom line: The CI engine to pair with Gitea or Forgejo if you don’t want to use the forge’s built-in Actions runner.

7. Drone CI — container-native CI engine

Drone CI is the original container-native CI engine and the parent project of Woodpecker. The Community Edition is Apache 2.0 and ships features sufficient for small teams; the Enterprise license adds advanced RBAC, audit logging, and commercial support. Runners are first-class and Docker-native by default.

Where it falls short: Harness (the parent company) has focused commercial attention on its broader DevOps platform; Drone’s community pace cooled compared to Woodpecker. New self-hosted deployments often pick Woodpecker for that reason.

Pricing:

Platforms: Linux server (Docker preferred), runners on Linux, Windows, macOS

Download: Drone CI or GitHub

Bottom line: Worth keeping if you already run it. New deployments lean Woodpecker.

8. Jenkins — the everything CI

Jenkins is the elder statesman of CI and still the most-deployed CI engine in enterprise environments. The plugin ecosystem is larger than every other entry on this list combined (2,000+ plugins), declarative pipelines via Jenkinsfile are the recommended path, and every major language and platform has a community-maintained build runner. If you need to build a signed iOS app inside an enclave VM, Jenkins is what does it.

Where it falls short: The plugin sprawl is the trade-off. Older plugins decay, the configuration surface is wide, and the JVM footprint is the largest in this list. Onboarding a new Jenkins is a project, not an afternoon.

Pricing:

Platforms: Linux, Windows, macOS, Docker

Download: jenkins.io

Bottom line: Pick Jenkins when the build matrix is the part of the stack that has the most edge cases.

How to pick the right one

If you want the simplest self-hosted Git, install Gitea. If you want the same thing but community-governed, install Forgejo. If you want the editor as a service, start with code-server on a small VPS; move to Coder when the team grows.

If you want CI to live next to your forge, use Forgejo Actions or Gitea Actions. If you want a separate CI engine, install Woodpecker. If your build matrix is large and weird, accept Jenkins.

Stay on managed GitHub, GitLab, or Bitbucket if the team is bigger than 20 and the platform team is one person. Self-hosting at scale is a real job.

FAQ

Is Gitea or Forgejo a better self-hosted Git server?

Both are technically equivalent. Forgejo is community-governed under the Codeberg nonprofit and AGPL-licensed; Gitea is run by Gitea Limited and has a mixed-license future. Pick Forgejo when license clarity and governance matter; pick Gitea when you want the slightly larger third-party integration catalog by default.

Can I run my entire dev workflow self-hosted for free?

Yes. The combination of Forgejo (Git + issues + PRs + Actions), Woodpecker CI (additional runners), and code-server (browser editor) covers the full workflow at zero cost. Add Coder when the team needs templated workspaces.

What is the lightest self-hosted Git server?

Gitea and Forgejo each run on 512 MB of RAM. For a single user, Gogs (the predecessor) is lighter still but receives fewer updates. Plain Git over SSH is the absolute minimum.

Is Jenkins still relevant in 2026?

Yes, in environments with large or unusual build matrices. New self-hosted teams without those constraints usually pick Forgejo Actions, Gitea Actions, or Woodpecker.

Do I need Kubernetes for Coder?

No. Coder runs on Docker hosts, single-VM setups, and Kubernetes alike. For homelab use, Docker on a single beefier machine is the most common pattern. Kubernetes is the recommended path when more than 10 active users share the cluster.