Static Sites Without Big Tech Hosting

mcp_1 pts0 comments

Daniel Westheide – Static Sites Without Big Tech Hosting

Static Sites Without Big Tech Hosting

If you run a static website, you rarely think twice about hosting. GitHub Pages works, costs nothing, and the code is already there anyway. But "works" and "sovereign" are two different things. This recipe shows how to build a stack with statichost.eu plus Codefloe or Codeberg that is just as convenient, but stays in European hands, treats visitor data transparently, and does not depend on a transatlantic legal basis that is currently starting to wobble.

Daniel Westheide<br>Senior Consultant

Static websites can be run sovereignly without giving up any convenience: European providers for Git hosting and deployment keep the entire stack independent.

What you’ll learn in this article

The problem: GitHub Pages and GitLab Pages tie code hosting and deployment inseparably together, both sit with US providers under US law, and on top of that come opaque server logs and a shaky legal basis.

The idea: Because static websites are portable, you can separate Git hosting from deployment and replace each with a European alternative.

The ingredients: A static site generator like Zola, a European Git host (Codeberg or Codefloe), and statichost.eu for deployment.

The result: A stack as convenient as GitHub Pages, entirely in European hands, sparing with visitor data, and built from components you can swap out independently.

Content

If you run a static website or a blog, you often reach reflexively for GitHub Pages or GitLab Pages. All it takes is a Git repository hosted there, and a git push immediately triggers the site to be rebuilt and deployed. But behind this convenience lies a problem that is easy to overlook: code hosting and website deployment are inseparably coupled, and both sit with US companies under US law.<br>Microsoft (GitHub) and GitLab Inc. are subject to the US Cloud Act. That means US authorities can, under certain circumstances, access data even if the servers are physically located in Europe. The content of a public static website is the least of the concerns here, since it is freely accessible anyway. But here is what actually sits at GitHub or GitLab and is not public: the source code (for private repositories), unpublished drafts, deployment logs, account and access credentials, and access statistics. For a company blog, that could be, for example, unpublished content, internal structures, or hints about client projects.<br>GitHub, GitLab, and Cloudflare all have Data Processing Agreements and formally address GDPR compliance. As a website operator, however, you do not know which visitor data, IP addresses, user agents, timestamps, is actually collected. statichost.eu transparently documents what ends up in server logs: no IP addresses, no user agents, only aggregated response sizes for billing, backed up by a real log entry in their documentation. What GitHub, GitLab, or Cloudflare actually log remains unclear. On top of that comes the legal basis: the EU-US Data Privacy Framework, which US providers invoke for data transfers, rests substantially on the independence of the FTC, which the US Supreme Court declared unconstitutional at the end of June 2026. European law on European servers is no small matter right now.<br>There is also a subtler form of dependency: GitHub Pages is so seamlessly integrated into the GitHub workflow that you barely notice the coupling between code hosting and deployment. This is not a hard lock-in. As this recipe shows, switching is technically straightforward. But if you have never consciously separated the two, you also never think to optimize or replace the components independently of one another.<br>The good news: static websites are portable by nature. The idea behind this recipe is simple: separate Git hosting and website hosting and replace each with a European alternative. The result is a stack that is just as convenient as GitHub Pages, is entirely in European hands, and where both components can be swapped independently of one another.<br>Concretely, we show how to port an existing website to Codeberg or Codefloe as the Git host and statichost.eu for deployment.<br>Ingredients<br>A static site generator<br>For this recipe we use Zola, a generator written in Rust that stands out for short build times and needs no external dependencies. But the principle works just as well with any other generator, for example Hugo, Eleventy, or Jekyll. statichost.eu builds the site with a Docker image of your choice. That gives maximum freedom, even for unusual build setups.<br>A European Git host<br>Instead of GitHub or GitLab, we recommend two alternatives here, both based on Forgejo, a community fork of Gitea:<br>Codeberg is a non-profit association based in Berlin. Codeberg is free, fully open source, and its infrastructure is located in Germany. For open-source projects it is an obvious choice. If you host your website's source code publicly, you are clearly within the terms of use. According to the terms...

github static hosting european website pages

Related Articles