Prerequisites #️⃣

  • Ensure you run the project on Directus v11 or v12. (Using Directus 10? Pin the plugin to its 1.x line — see the compatibility note below.)
  • Ensure that your Directus instance is prepared for localization. You must have a languages collection and use the translations field type for translatable content. Read more on the Directus content translations guide.
  • Create a Localazy account.

Two extensions #️⃣

Localazy for Directus ships as two extensions:

  • @localazy/directus-extension-localazy — the main UI module. This is all you need for manual import & export. It installs from the Marketplace with no extra configuration.
  • @localazy/directus-extension-localazy-automation (optional) — a server-side bundle that enables hands-off, webhook-driven import (see the Automation page). It is not required for manual sync.

Installation via Marketplace (Recommended) #️⃣

Visit Directus’s Marketplace in your instance and search for Localazy.

Once installed, navigate to Settings -> Project Settings -> Modules and enable the Localazy module.

The automation bundle is a non-sandboxed extension, so the Marketplace hides it unless the host operator sets MARKETPLACE_TRUST=all in the Directus configuration and restarts. This flag is not needed for the main module, nor for manual (npm install) installs of the bundle. See the Automation page for details.

Installation via NPM #️⃣

Both extensions are published on NPM:

  • Main module: @localazy/directus-extension-localazy
  • Automation bundle: @localazy/directus-extension-localazy-automation

Run in the root of your project:

npm i @localazy/directus-extension-localazy
# optional, for automated import:
npm i @localazy/directus-extension-localazy-automation

Running in Docker #️⃣

If you run Directus via Docker, the easiest way to include extensions is to extend the official Directus image with your own.

Below is an example for Directus version 11, but you may replace the version with any other that the Directus team has released on Docker hub.

FROM directus/directus:11

USER root
RUN corepack enable \
  && corepack prepare pnpm@latest --activate \
  && chown node:node /directus

USER node
RUN pnpm install @localazy/directus-extension-localazy@latest \
  && pnpm install @localazy/directus-extension-localazy-automation@latest

Once you’ve released a Docker image with the desired version, replace the target image in the docker-compose.yml file with it. We maintain some images ourselves with the Localazy plugin pre-installed:

services:
  directus:
    image: localazy/directus:11

Compatibility #️⃣

Plugin version Directus
2.x (current) ^11.0.0 || ^12.0.0 (Directus 11 and 12)
1.x (frozen) ^10.10.0

If you can’t upgrade Directus yet, pin the 1.x line: npm i @localazy/directus-extension-localazy@^1.

Support #️⃣