Taking Back Control: Why Your Static Site Deserves a European Home
Let's be honest: GitHub Pages is魔力. You push code, and somehow your website appears on the internet. No servers to configure, no CI/CD pipelines to debug at 2 AM, no deployment scripts that mysteriously fail on Fridays. It's the kind of simplicity that makes you forget anything exists underneath.
But here's the uncomfortable truth hiding behind that convenience: every time you use GitHub Pages, you're placing your code, your deployment infrastructure, and your data under American jurisdiction. And in 2024, that's starting to matter more than most developers realize.
The Cloud Act Problem Nobody Talks About
The US Cloud Act, passed in 2018, gives US federal authorities the power to compel US-based companies to provide access to data—even when that data sits on servers physically located in Frankfurt, Amsterdam, or Dublin. GitHub (owned by Microsoft) and GitLab Inc. are both US companies. They're subject to this law, full stop.
Now, before you dismiss this as paranoia, consider what actually lives in your repository:
- Unpublished blog posts with product announcements
- Internal team documentation
- Client project details in issues and wikis
- Deployment credentials and access tokens
- Access logs showing who's been poking around your projects
None of this is public. All of it is technically accessible under the right (or wrong) circumstances. For a corporate blog, this might be an acceptable trade-off. For a startup with unreleased features, a consultancy with client projects, or anyone handling sensitive source code, it should raise an eyebrow.
The Transparency Gap
Here's what frustrates me most about the big platforms: the opacity around data collection.
GitHub, GitLab, and Cloudflare all offer GDPR compliance and have Data Processing Agreements you can sign. This feels reassuring until you realize you have no idea what they actually log. IP addresses? User agents? Timestamps with geolocation? The default terms are vague, and the actual server logs are never shown to you.
Compare this with smaller providers like statichost.eu, which openly documents exactly what hits their server logs: no IP addresses, no user agents, just aggregated response sizes for billing purposes. They even include a sample log entry in their documentation. That's the kind of transparency that builds trust.
And then there's the legal quagmire of the EU-US Data Privacy Framework. This is the successor to Privacy Shield, the mechanism US companies use to legitimize data transfers from Europe. Here's the kicker: the framework rests substantially on the independence of the FTC—and the US Supreme Court recently cast doubt on that very independence. The legal ground beneath transatlantic data transfers is shifting. European infrastructure on European servers isn't just a nice-to-have; it's increasingly becoming the only stable foundation.
The Seamlessness Trap
GitHub Pages is so elegantly integrated that you stop thinking of "code hosting" and "website deployment" as separate concepts. They're just... GitHub. This seamless experience is brilliant UX, but it creates a hidden dependency.
You're not locked in the hard sense—migrating is technically straightforward. But if you've never mentally separated these concerns, you also never optimize them independently. You accept whatever GitHub offers for deployment because that's just how websites work.
This is the seams-based architecture argument applied to infrastructure: coupling creates hidden costs, even when it feels convenient.
The European Alternative Stack
Here's the good news: static sites are inherently portable. The whole point of a static site generator is that your content becomes plain files. Moving hosting is rarely as painful as migrating a database-backed application.
The emerging alternative stack looks something like this:
For Git hosting:
Codeberg runs on Forgejo (a community fork of Gitea) and is operated by a non-profit in Berlin. It's free, fully open source, and the infrastructure lives in Germany. For public repositories and open-source projects, it's an obvious choice. Their terms explicitly welcome open-source work.
Codefloe is the commercial counterpart—also Forgejo-based, but without usage restrictions. Private repositories? Commercial projects? Enterprise teams? All welcome. If your source code shouldn't be public, this is your European option.
Both platforms speak standard Git. Switching from GitHub means changing one remote URL. Import tools transfer your entire history.
For deployment:
statichost.eu builds and hosts static sites in European data centers. Connect your repository via webhook, specify your build process (they support Docker images, so virtually any static site generator works), and push to deploy. Custom domains, SSL certificates, the whole package.
The separation isn't just philosophical—it's practical. You can switch your Git host without touching your deployment, or migrate your hosting without moving your code. Two independent components, two independent decisions.
Making the Switch
If you're convinced but worried about complexity, let me reassure you: this stack is genuinely as convenient as GitHub Pages. Zola builds sites in milliseconds. Codeberg or Codefloe handles your repository. statichost.eu pulls the trigger on builds. The developer experience is nearly identical.
The difference is that when you sleep, your data lives in Europe, governed by European law, logged with European transparency, and controlled by European organizations.
For some projects, GitHub Pages is fine. For projects where data sovereignty, privacy, or professional discretion matters, the European alternative stack deserves serious consideration.
Static sites are portable by nature. Maybe it's time your infrastructure reflected that.