Key Features

Library Import and Export

Export local library documents and import signed Zeeq export packages.

Summary

Library import/export moves hand-authored library documents between Zeeq organizations or environments.

The library editor includes an Import / Export tab for existing libraries. Create a library first, then open its edit panel to export or import documents.

Export Formats

Two export formats are available:

FormatPurposeImportable by Zeeq
.zeeq-exportSigned package for moving local documents into another Zeeq libraryYes
.zipStandard archive for backup or use outside ZeeqNo

Exports include only local documents. Documents imported from GitHub or owned by a repository sync are excluded because their lifecycle belongs to the sync process.

Zeeq export files are named:

{library-name-lower-alpha-numeric}-{yyyy-mm-dd}-{nanoid6}.zeeq-export

The zip archive uses the same prefix and a .zip extension. The six-character suffix is lowercase alphanumeric and keeps repeated downloads visually distinct.

Import Rules

Imports accept only .zeeq-export files. The backend rejects plain zip files and any file larger than 500 KB. A single document may use the full package budget; the importer enforces the aggregate decompressed document content limit instead of a separate per-document character limit.

Before importing, Zeeq verifies the signed wrapper. The internal package is not opened until the signature is valid. This prevents arbitrary zip files from being processed by the importer.

The import preview shows:

  • New paths that will be created.
  • Duplicate local paths that will be overwritten after confirmation.
  • Synced or remote paths that block the import.

Duplicate local paths are overwritten only after explicit confirmation. Synced or GitHub-imported documents cannot be overwritten by import.

Configuration

Signed export packages require a server-side HMAC signing key:

AppSettings:Documents:LibraryExportSigningKey

For local development, store it with ASP.NET user secrets:

dotnet user-secrets set AppSettings:Documents:LibraryExportSigningKey "$(openssl rand -base64 48 | tr -d '\n')"

For production, create the matching Secret Manager entry:

AppSettings__Documents__LibraryExportSigningKey