# Integrations

Every connector uses a project token. Create the project, copy the `lfs_...` token, and paste it into the plugin or CLI.

## Content systems

- WordPress. Upload the plugin, paste a project token, then push posts and pages. Pull writes translations that follow `get_locale()`. Path: `wp-content/plugins/localesfs`.
- Contentful. Push and pull Symbol and Text fields with a CMA token. Fields map to `cf.entry.{id}.{field}`. Command: `npx @localesfs/contentful push`.
- Shopify. Create a custom app with `write_translations`. The CLI registers translations with the required content digest. Command: `npx @localesfs/shopify push`.
- Strapi 5. Install the plugin and enable it in `config/plugins`. i18n content types sync from the admin. Command: `npm install @localesfs/strapi`.

## Apps

Generate locales with the CLI and include them in the app. Optional over-the-air refresh uses `GET /api/projects/:id/bundle`.

- React Native. Bundle locales at build time and call `t()` in components. Works with Expo. Package: `@localesfs/react-native`.
- Flutter. Dart package with `t()` interpolation and an optional bundle refresh. Command: `npx @localesfs/sdk bundle --out ./assets/locales`.
- iOS. Add the Swift package, load the bundle, then call `LocalesFS.shared.t("key")`.
- Android. Copy `LocalesFS.kt` or include the module. It reads the same bundle JSON as the other apps.
