Recent searches

in

Introduction

Migrate from CloudCannon's deprecated built-in internationalization to Rosey.

This guide is for teams migrating from CloudCannon's deprecated built-in i18n feature to Rosey. If you are adding internationalization to your Site for the first time without a prior i18n setup, see the Add internationalization with Rosey guide instead.

CloudCannon's built-in i18n feature translated your Site at build time. You enabled it on the I18n page in your Site Settings using the Use I18n checkbox and set a Default Locale for the base language. You tagged translatable content in your HTML templates with data-i18n attributes and stored translation files in a _locales directory. CloudCannon built a translated version of your site for each locale and routed visitors based on their language settings.

You can continue using CloudCannon's built-in i18n feature, but it is no longer actively supported and will not receive updates. CloudCannon recommends migrating to Rosey.

Rosey is an open-source i18n tool for static sites, developed and maintained by CloudCannon. It works with any static site generator and supports translating text content, images, and HTML attributes such as alt text and meta descriptions. Rosey also tracks stale translations, flagging strings that need updating when your source content changes, and you can test your translated site locally before pushing to CloudCannon.

In this guide, we'll walk through migrating your Site to Rosey. You'll rename your locale directory, convert your translation files to JSON, and retag your HTML elements. Your existing translation content carries over.

When Rosey runs as a postbuild step, it moves your output files to language-prefixed paths — for example, /en/about/ instead of /about/. CloudCannon uses the output URL to find each page, so until you update your Collection URLs to match, the webpage preview in the Visual Editor won't load correctly. You'll fix this later in the update the output URL for Rosey step of this guide.

Before we begin, this guide assumes:

  • Your Site uses CloudCannon's built-in i18n feature, with data-i18n attributes in your HTML templates and translation files in a _locales directory.
  • You have npm available, or can initialize it on your project with npm init.
Migrate from legacy internationalization to Rosey (1/4)
Introduction
Open in a new tab