Gatsby Contentful i18n is a Gatsby v2 starter template that adds bilingual content support and a language switcher to a Contentful-powered site, built on the official using-contentful example and the gatsby-plugin-i18n community plugin.
What is Gatsby Contentful i18n?
This starter repo, created by GitHub user mccrodp, takes the official Gatsby "using-contentful" example and pairs it with the gatsby-plugin-i18n community plugin from angeloocana. It accepts Contentful content localized into two locales — en-US and de — and outputs a static Gatsby site that renders only the content for the currently selected language. The template includes a language switcher component and is upgraded to Gatsby v2. A live demo is hosted on Netlify at gatsby-starter-contentful-i18n.netlify.com.
Key Features
- Gatsby v2 upgrade — The starter is explicitly upgraded to Gatsby v2, so it uses the current React-based architecture of Gatsby at the time of release.
- Built on the official using-contentful example — It starts from the canonical Gatsby example for Contentful, making the integration structure familiar to Gatsby developers.
- gatsby-plugin-i18n integration — Uses the community plugin by angeloocana to handle locale routing and content filtering for the active language.
- Language switcher UI — The site includes a working language switcher that lets visitors toggle between en-US and de, showing only the bilingual content for the selected locale.
- Bilingual content scope — Out of the box, content is localized for two language codes: en-US and de; the switcher filters to show content for one language at a time.
- Quick start via gatsby new — You can scaffold a new site with
gatsby new my-fun-sitepointing to this repository's URL. - One-click Netlify deployment — A Deploy to Netlify button is included, so the starter can be published to Netlify without manual configuration.
- Open-source contribution path — The repository has an issue queue for feedback and accepts pull requests.
Who is it for?
Developers who want a bilingual Gatsby site backed by Contentful will find this starter a ready-made foundation. It is also useful for teams evaluating how gatsby-plugin-i18n works with Contentful's localization feature. The template suits those who prefer starting from an official example rather than wiring i18n from scratch.
What can you do with Gatsby Contentful i18n?
- Multilingual marketing sites: Set up a landing page or company site that serves content in en-US and de, with a toggle for visitors.
- Learning i18n in Gatsby: Understand how to pair the gatsby-plugin-i18n plugin with a headless CMS like Contentful to filter content by locale.
- Rapid prototyping: Use the Netlify deploy button to publish a bilingual demo in minutes, then extend the starter with more pages and locales.
How does the starter work?
The quick start is three commands: run gatsby new with the repository URL to create a new project, run npm install to install dependencies, then gatsby develop to start the development server. The Netlify deploy button handles the build and hosting setup automatically.
FAQ
Is the Gatsby Contentful i18n starter free?
Yes, it is an open-source starter hosted on GitHub. There are no paid tiers or subscription requirements; you pay only for any hosting or CMS services you choose to use (Contentful itself has its own pricing).
Which languages are supported by default?
The starter ships with two locales: en-US and de. The language switcher toggles between these two codes, and the site shows content only for the selected language.
Is it compatible with Gatsby v2?
Yes, the repository description explicitly says it is upgraded to Gatsby v2.
What does the gatsby-plugin-i18n plugin do in this starter?
It is a community plugin by angeloocana that adds i18n routing and content filtering. The starter uses it to determine which localized Contentful entries to display based on the active language.
Can I add more languages?
The starter is configured for en-US and de, but because it uses gatsby-plugin-i18n and Contentful localization, you can extend the configuration to include additional locales if you have the corresponding content in Contentful.








