Skip to content
EN/FR
Contact
EMDASH / IMPORT & EXPORT

Your content. In and out.

Import CSV, JSON or JSON Lines and export your collections as CSV or JSON, from one page in the EmDash admin. Built for the content work between spreadsheets and your website.

Get the plugin on npm ↗

Available now · Free · MIT licence · Native plugin

Preview before you write

See field mappings, warnings and the entries to create or update before the import starts.

Update existing content

Entries are matched by ID, then slug. Choose create and update, or create only, and control the publication status.

Export the version you need

Download CSV or JSON, choosing the latest editor version or published content. Start from an empty collection template.

GET STARTED

Install. Register. Transfer.

This native plugin is installed into your Astro project from npm, rather than the sandboxed EmDash registry. It runs with your site’s authority. Install it only on sites you control.

1. Add the package

pnpm add @sneaps/import-export

2. Register it in astro.config.mjs

import { importExport } from "@sneaps/import-export";

// Inside your existing emdash configuration:
emdash({
  plugins: [importExport()],
  // Keep your other plugins and settings.
});

3. Rebuild and deploy

Open Import/Export in the admin sidebar. No plugin settings are required. Access is reserved for administrators with the appropriate EmDash permissions.

A few things to know.

Which fields are supported?+

Text, numbers, booleans, dates, selects, multi-selects and JSON. Rich text accepts Markdown, HTML, plain text or Portable Text. Image, file, reference, repeater and blocks fields are not imported yet; skipped columns are reported in the preview.

What are the limits?+

Up to 8 MiB and 5,000 rows per import; 20,000 entries per export. Keep the browser tab open during an import. Closing it stops the operation, while entries already saved remain.

Does my content leave my site?+

The plugin reads files in your browser and sends content only to your own EmDash API. It makes no external network calls, has no analytics and stores no data of its own.

Anything to check before importing an export?+

Latest includes unpublished edits. Reimporting a Published only export can replace those edits with older published content. JSON preserves stored values; CSV converts rich text to Markdown and objects to JSON text. Review the preview and keep an export before changing content.

Make your next content move.

Read the full documentation on npm ↗