I recently migrated my personal JAMstack projects from Github and Netlify to European alternatives. In this article, I’ll share which European service providers I went for and why I sleep much better now. Before we begin, though, let’s quickly review what we mean when we use the term JAMstack!
What is JAMstack?
A JAMstack is a software architectural approach that is solely based on frontend JavaScript, APIs and Markup (typically generated by a static site generator). This blog is an excellent example of a JAMstack website, as the client-side contains all the application logic (primarily search), while the backbone is composed entirely of static files. There is no classical database or backend application – everything is static files delivered to user agents. Following this architectural design yields significant benefits:
- minimal attack surface,
- effortless maintainability,
- blazingly fast performance, and
- easy scalability.
The term JAMstack was initially coined by the US SaaS provider Netlify. They and Github Pages are two of the most prominent service providers in that ecosystem. However, there are European alternatives.
My European JAMstack
For my European JAMstack setup that is based on the excellent static site generator Hugo, I looked for service providers that not only provide great service but also support data privacy and open-source principles, where applicable.
Codeberg: My New Home for Code
For code hosting and deployment, I opted for Codeberg. Github, while ubiquitous, is a US-based company owned by Microsoft, and I wanted to move my repositories to a European alternative. Codeberg is a non-profit organization based in Germany dedicated to providing a free and open-source Git code hosting platform. It’s powered by Forgejo, which in turn is a hard-fork of Gitea.
Codeberg.org offers a familiar interface for anyone used to Github and Github Actions. It is incredibly reassuring to know that my code resides on a community-driven and open-source platform rather than a “Big Tech” for-profit one.
→ The source files of this blog are public.
Bunny CDN: Fast and European Hosting
Replacing Netlify was a crucial step, as it used to handle the deployment and hosting of my static files. Based in Slovenia, Bunny CDN offers amazing CDN capabilities that easily outperform Netlify. It’s a super robust and comprehensible content delivery platform and an ideal solution for hosting static sites. Their global network ensures excellent performance with the added benefit of being a European company.
Bunny’s user interfaces are generally easy to use, and their prices are reasonable – I am paying single digit Euros every month for serving all my projects. Knowing my websites are hosted with a European-headquartered provider, with a clear focus on GDPR compliance, significantly contributes to my peace of mind.
As JAMstack deployment essentially means triggering a static site generator build process and copying the resulting static files onto a file server or CDN, it was straightforward to replace Netlify builds with Forgejo Actions provided by Codeberg. The resulting Forgejo Actions deployment config is almost identical to a Github Actions deploy job.
→ I began sharing some of my Bunny onboarding learnings as part of my Eurostack posts.
Plausible Analytics: Privacy-First Insights
Website analytics are an integral part of understanding user engagement. Using a third-party analytics provider fits nicely into the JAMstack architecture. I replaced Google Analytics with Plausible Analytics already years ago. Based in Estonia, Plausible offers a lightweight, open-source, and privacy-focused analytics solution.
Unlike “Big Tech” analytics solutions, it doesn’t use cookies and is fully GDPR-compliant by default. This means I can gather valuable insights into my website’s performance without compromising on user privacy or worrying about complex consent banners. It’s a testament to how privacy-conscious alternatives can deliver powerful functionality.
JAMstack Migration & Service Responsibilities
Service Responsibility | Previous Provider | New Provider | Key Benefit of New Provider |
---|---|---|---|
Code Hosting | Github (USA) | Codeberg (Germany) | Non-profit, open-source, privacy-friendly, community-driven |
Static Site Deployment | Netlify (USA) | Codeberg (Germany) | Codeberg leverages Forgejo Actions, providing CI/CD similar (but not identical) to GitHub Actions |
Static Site Hosting & CDN | Netlify (USA) | Bunny CDN (Slovenia) | European-headquartered, competitive pricing, GDPR compliant |
Web Analytics | Google Analytics (USA) | Plausible Analytics (Estonia) | Privacy-focused, no cookies, GDPR compliant |
In conclusion, my European JAMstack migration reflects a deliberate move towards a more privacy-conscious and open-source friendly internet. By choosing European providers like Codeberg, Bunny CDN, and Plausible Analytics, I’ve improved the performance of my projects and gained significant peace of mind.
For anyone looking to minimize their reliance on large US tech companies and embrace services with strong privacy commitments, exploring these European alternatives is a highly recommended step towards a more secure and ethically aligned online presence.
FAQ
Why is it important to switch to European alternatives for personal projects, even if they don’t handle highly sensitive data?
While personal projects might not always involve highly sensitive data, switching to European alternatives has several benefits beyond just immediate data privacy concerns:
- Firstly, it aligns with the principles of data sovereignty, meaning data is governed by European regulations like GDPR, which are generally more stringent than those in other regions. This proactive approach can give greater peace of mind and prepare projects for potential future growth where data sensitivity might increase.
- Secondly, it supports a more diverse and decentralised tech ecosystem, reducing reliance on a few dominant US-based “Big Tech” companies. This creates healthy competition and encourages the development of open-source and community-driven platforms, which can lead to more innovation and ethical practices in the long run.
Are there any performance trade-offs when switching from US-based providers like Netlify to European alternatives?
Not really. A European content delivery network like Bunny CDN can actually outperform Netlify in terms of raw CDN capabilities due to its robust network and focus on content delivery. As of 2025, Bunny CDN operates over 100 global Points of Presence (PoPs) while Netlify leverages 16 data centers. Offering broader geographical coverage results in lower latency and faster load times.
What are potential challenges when migrating existing JAMstack projects from Netlify’s build process to Codeberg’s Forgejo Actions?
Moving from Netlify’s built-in environment, which often offers zero-config setups for common static site generators, to a more explicit CI/CD setup with Forgejo Actions is a fundamentally different deployment approach. Challenges might include:
- Environment Variables: Ensuring all necessary environment variables used in Netlify builds are correctly configured in Forgejo Actions.
- Build Commands: While similar, specific commands or paths might need adjustments.
- Netlify-specific Features: If a project heavily relies on Netlify-specific features like Netlify Functions, Netlify Forms, or specific redirects/headers configurations, it is necessafy to find alternatives or implement similar logic within Forgejo Actions and Bunny CDN setup.
What other European JAMstack services or categories should be considered for a fully European setup?
More complex projects might need additional solutions for dynamic functionalities that go beyond just static site hosting and analytics:
- Serverless Functions: Keep an eye out for European cloud providers offering Function-as-a-Service (FaaS) or serverless computing, like Clever Cloud (France), Exoscale (Switzerland), or specific services from IONOS (Germany).
- Form Handling: Use solutions like Formspark (Estonia) or build on serverless functions (hosted on a European FaaS platform) to receive form submissions to replace services like Netlify Forms.
- Authentication: When it comes to user authentication, consider Identity as a Service (IDaaS) providers based in Europe, or maybe self-hosting an open-source solution like Keycloak on a European server.
- Headless CMS: It’s not exactly a “migration” from a US provider but for projects based on a Headless CMS, consider to check out some European options like DatoCMS (Italy), Storyblok (Austria), or Strapi (France - open-source, can be self-hosted).
What are the main benefits of “open-source principles” for users of providers like Codeberg, compared to proprietary platforms?
The open-source nature of platforms like Codeberg has a lot of advantages for individual users:
- Transparency and Trust: The code is publicly auditable, meaning everyone can check it for security vulnerabilities or unwanted tracking. This makes people more likely to trust it than proprietary systems, where the ins and outs are kept secret.
- Community-Driven Development: Codeberg is a non-profit, community-driven organisation, so its priorities are more aligned with its users than profit maximisation. This often means features that are developed based on what the community needs and a focus on making sure it’ll last.
- Longevity and Control: It is less likely to get caught in a “vendor lock-in” situation or to have service terms or prices suddenly changed. If the platform changes direction, the open-source code (theoretically) allows to fork the project and continue development independently.
- Learning and Contribution: For developers, hosting code on an open-source platform can be a great way to learn from others’ code, contribute back to the platform itself, and gain experience in a truly open development environment.