Ask your question and get a summary of the document by referencing this page and the AI provider of your choice
Version History
- "Move Live Sync section to its own page (live-sync.md), keep a short intro + link here"v9.0.008/07/2026
- "Add Self-Hosting section"v9.0.030/06/2026
- "Add live sync documentation"v6.0.122/09/2025
- "Replace `hotReload` field with `liveSync`"v6.0.004/09/2025
- "Initialise history"v5.5.1029/06/2025
The content of this page was translated using an AI.
See the last version of the original content in EnglishIf you have an idea for improving this documentation, please feel free to contribute by submitting a pull request on GitHub.
GitHub link to the documentationCopy doc Markdown to clipboard
Intlayer Content Management System (CMS) Documentation
The Intlayer CMS is an application that allows you to externalise the content of an Intlayer project.
For this, Intlayer introduces the concept of 'remote dictionaries'.

Table of Contents
Understanding remote dictionaries
Intlayer distinguishes between 'local' and 'remote' dictionaries.
A 'local' dictionary is a dictionary that is declared in your Intlayer project. Such as the declaration file of a button, or your navigation bar. Externalising your content does not make sense in this case because this content is not supposed to change often.
A 'remote' dictionary is a dictionary that is managed through the Intlayer CMS. It could be useful to allow your team to manage your content directly on your website, and also aims to use A/B testing features and SEO automatic optimisation.
Visual editor vs CMS
The Intlayer Visual editor is a tool that allows you to manage your content in a visual editor for local dictionaries. Once a change is made, the content will be replaced in the code-base. This means that the application will be rebuilt and the page will be reloaded to display the new content.
In contrast, the Intlayer CMS is a tool that allows you to manage your content in a visual editor for remote dictionaries. Once a change is made, the content will not impact your code-base. The website will automatically display the updated content.
Integrating
For more details on how to install the package, see the relevant section below:
Integrating with Next.js
For integration with Next.js, refer to the setup guide.
Integrating with Create React App
For integration with Create React App, refer to the setup guide.
Integrating with Vite + React
For integration with Vite + React, refer to the setup guide.
Configuration
Run the following command to login to the Intlayer CMS:
Copy the code to the clipboard
npx intlayer loginThis will open your default browser to complete the authentication process and receive the necessary credentials (Client ID and Client Secret) to use Intlayer services.
In your Intlayer configuration file, you can customise the CMS settings:
Copy the code to the clipboard
import type { IntlayerConfig } from "intlayer";
const config: IntlayerConfig = {
// ... other configuration settings
editor: {
/**
* Required
*
* The URL of the application.
* This is the URL targeted by the visual editor.
*/
applicationURL: process.env.INTLAYER_APPLICATION_URL,
/**
* Required
*
* Client ID and client secret are required to enable the editor.
* They allow the identification of the user who is editing the content.
* They can be obtained by creating a new client in the Intlayer Dashboard - Projects (https://app.intlayer.org/projects).
* clientId: process.env.INTLAYER_CLIENT_ID,
* clientSecret: process.env.INTLAYER_CLIENT_SECRET,
*/
clientId: process.env.INTLAYER_CLIENT_ID,
clientSecret: process.env.INTLAYER_CLIENT_SECRET,
/**
* Optional
*
* In the case you are self-hosting the Intlayer CMS, you can set the URL of the CMS.
*
* The URL of the Intlayer CMS.
* By default, it is set to https://intlayer.org
*/
cmsURL: process.env.INTLAYER_CMS_URL,
/**
* Optional
*
* In the case you are self-hosting the Intlayer CMS, you can set the URL of the backend.
*
* The URL of the Intlayer CMS.
* By default, it is set to https://back.intlayer.org
*/
backendURL: process.env.INTLAYER_BACKEND_URL,
},
};
export default config;If you do not have a client ID and client secret, you can obtain them by creating a new client in the Intlayer Dashboard - Projects.
To see all available parameters, refer to the configuration documentation.
Using the CMS
Push your configuration
To configure the Intlayer CMS, you can use the intlayer CLI commands.
Copy the code to the clipboard
npx intlayer config pushIf you use environment variables in yourintlayer.config.tsconfiguration file, you can specify the desired environment using the--envargument:
Copy the code to the clipboard
npx intlayer config push --env productionThis command uploads your configuration to the Intlayer CMS.
Push a dictionary
To transform your locale dictionaries into a remote dictionary, you can use the intlayer CLI commands.
Copy the code to the clipboard
npx intlayer dictionary push -d my-first-dictionary-keyIf you use environment variables in yourintlayer.config.tsconfiguration file, you can specify the desired environment using the--envargument:
Copy the code to the clipboard
npx intlayer dictionary push -d my-first-dictionary-key --env productionThis command uploads your initial content dictionaries, making them available for asynchronous fetching and editing through the Intlayer platform.
Edit the dictionary
You will then be able to view and manage your dictionary in the Intlayer CMS.
Live sync
Live Sync allows your app to reflect CMS content changes at runtime. No rebuild or redeploy is required. When enabled, updates are streamed to a Live Sync server that refreshes the dictionaries your application reads.
For the full setup guide (configuration, starting the Live Sync server, the local development workflow, and constraints), see the Live Sync documentation.
Self-Hosting
Intlayer can run entirely on your own infrastructure. A one-liner bootstraps the full stack (dashboard, API, database, object storage, and email) with Docker Compose:
Copy the code to the clipboard
curl -fsSL https://intlayer.org/install.sh | shFor the complete setup guide, environment variable reference, upgrade instructions, and backup/restore procedures, see the Self-Hosting Guide.
Debug
If you encounter any issues with the CMS, check the following:
The application is running.
The
editorconfiguration is correctly set in your Intlayer configuration file.- Required fields:
- The application URL should match the one you set in the editor configuration (
applicationURL). - The CMS URL
- The application URL should match the one you set in the editor configuration (
- Required fields:
Ensure that the project configuration was pushed to the Intlayer CMS.
The visual editor uses an iframe to display your website. Ensure that the Content Security Policy (CSP) of your website allows the CMS URL as
frame-ancestors('https://app.intlayer.org' by default). Check the editor console for any errors.