> ## Documentation Index
> Fetch the complete documentation index at: https://docs.textsetu.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Import & Export

> Bootstrap a project from existing files and pull finished translations back out.

TextSetu reads and writes **40+ industry file formats**, so it fits into whatever
your app and toolchain already use. You can bootstrap a project from existing
translation files, and pull finished translations back out at any time.

For the complete list of formats, see the
[Supported File Formats](/docs/reference/file-formats) reference.

<Note>
  **Automate it.** Import and export can be scripted or wired into CI — see the
  `POST /sources` (import) and `GET /translations` (export) endpoints in the
  [API Reference](/api/introduction).
</Note>

***

## Importing

Open a project's **Import** page (glossaries and translation memories have their
own Import pages too).

1. **Upload a file.** TextSetu reads the file extension and **auto-selects the
   format** when the extension maps to exactly one format. If several formats
   share that extension (e.g. `.json`, `.xml`), it leaves the choice to you — pick
   the right one from the format list.
2. **Choose the target language** the file's values belong to (for single-language
   formats), or let multi-language formats (CSV/Excel) map several at once.
3. **Review and import.** Matching keys are **updated**; new keys are **created**.

Because import **merges** by key, re-importing an updated file fills in or updates
values rather than creating duplicates — ideal for round-tripping with
translators who work in files.

<Note>
  **Import vs. export formats.** A few best-effort document formats — **HTML**,
  **Markdown**, and **Plain text** — are **export-only**; they aren't offered when
  importing, because round-tripping them reliably isn't possible.
</Note>

### What you can import

* **Project translations** — JSON, XLIFF, CSV/TSV/Excel, Android XML, Apple
  `.strings` / `.stringsdict` / `.xcstrings`, Gettext `.po`/`.mo`, ARB, YAML,
  RESX, i18next, FormatJS, Java properties, INI, TOML, and many more.
* **Glossary terms** — CSV with `term`, language columns, and metadata
  (`do_not_translate`, `forbidden`, `notes`).
* **Translation memory** — CSV (`source_text`, `context`, language columns) or
  **TMX**.

## Exporting

Open the **Export** page, then:

1. **Choose a format** for your platform (e.g. Android XML for Android, `.strings`
   for iOS, JSON for web).
2. **Choose the language(s)** to export.
3. **Download** the generated file(s).

Plug the exported files into your app and ship.

## Round-tripping tips

* **Keys are the anchor.** Keep keys stable so imports map cleanly to existing
  rows. Renaming a key looks like a delete + add.
* **Use multi-language CSV/Excel** to move all languages at once — handy for
  offline translation in a spreadsheet.
* **Export before destructive changes** (deleting a language, big merges) so you
  always have a backup.
* **Demo / sample files** for common formats live in the application's
  `demo/samples/` directory if you want examples to practice with.

## Choosing a format

| Your platform                       | Use                                            |
| ----------------------------------- | ---------------------------------------------- |
| Web (i18next, react-intl, vue-i18n) | JSON (nested/flat), i18next, FormatJS, ARB     |
| Android                             | Android XML                                    |
| iOS / macOS                         | Apple `.strings`, `.stringsdict`, `.xcstrings` |
| Backend / Gettext                   | Gettext `.po` / `.mo`                          |
| .NET                                | RESX                                           |
| Rails / Ruby                        | YAML                                           |
| Spreadsheet / exchange              | CSV, TSV, Excel                                |
| TM interchange                      | TMX                                            |

See the [full list](/docs/reference/file-formats) for everything supported.

***

Related: [Supported File Formats](/docs/reference/file-formats) · [Glossary](/docs/guides/glossary) · [Translation Memory](/docs/guides/translation-memory)
