p.enthalabs

CodeFloe | Git hosting in Europe - for everyone

Git hosting in Europe. Built in the open.

A public Git service running on Forgejo, with a generous free tier, no feature behind a paywall, and infrastructure you can read.

Key facts

Hosted in Germany, under EU law

Everything runs and is stored on Hetzner in Germany, so your data falls under German data protection law and the GDPR.

Infrastructure you can read

The Ansible playbooks, OpenTofu modules, CI pipelines and monitoring configuration that drive CodeFloe are public repositories.

No feature gates

Private repositories, CI/CD, hosted pages, package registries and preview environments are free for everyone. Paid tiers only cover resource costs for storage and CI/CD.

Where we stand on AI

The most frequent questions about the innovation which moves tech the most.

We see AI as a tool, not a threat

We use AI tools ourselves, in this platform and in our own work. You are welcome to use them here too. Nothing about CodeFloe is built to make that harder.

Your code is never training data

We do not train models on anything you store here, and we do not sell or hand your data to anyone who would. Not now, and not later: it is not a business we intend to be in.

Abusive scrapers are not welcome

Aggressive crawlers can flatten a forge. We tackle them at the edge, so the platform stays fast for the people actually using it.

Forgejo on steroids

Forgejo is the complete software forge at CodeFloe's core, and most of what you use here is the Forgejo community's work: repositories, issues, pull requests, releases, packages, APIs and migrations.

We extend it in focused areas to create a more integrated developer experience, then run every change from a public fork. CodeFloe-specific work stays reviewable instead of disappearing into a private patch set.

Inspect how it runs

Most platforms ask you to trust a status page. The software, the servers and the pipelines behind CodeFloe are public repositories, so you can check instead.

```

Rate-limit by source, exempting the git protocol and package pulls

acl abusive_rate sc_http_req_rate(0) gt 100 acl is_git_protocol path_end /info/refs /git-upload-pack /git-receive-pack acl is_known_bot src -f /etc/haproxy/allowlist-good-bots.acl

http-request track-sc0 src table per_ip_rates http-request deny deny_status 429 if abusive_rate !is_git_protocol !is_known_bot ```

Excerpt from the HAProxy configuration that shields codefloe.com.

- The Forgejo fork that serves this site Every modification we run, in the open

- The Ansible and OpenTofu that build the servers How the machines are provisioned and configured

- The Kubernetes cluster behind the supporting services Status, single sign-on, Renovate and secrets

- The live status of every service Checked continuously, not self-reported

A fresh approach to costs

Running costs are partially covered by donations and by the extended tiers. Income and expenses are reported transparently, and donations are split between the people maintaining and developing the platform.

See what you get

Still deciding?

Where the data sits, whether you can migrate from GitHub, who is accountable, and why we ask for donations.

See all FAQ

Migrating from somewhere else?

Import an existing project from GitHub, GitLab or Bitbucket with its history, issues and pull requests intact. Planning to move a bunch of repositories? Our very own batch migration CLI imports many repositories in one run.