---
id: "data-portability"
date: "2026-03-25"
title: "Your data, your way — backup anywhere"
summary: "Export everything to a local file, Azure Blob Storage, or any S3-compatible service. Your settings, conversations, and indexed sites travel with you — your secrets don't."
image: "/medias/export.import.png"
header: "Feature"
tags: ["feature", "backup", "data", "cloud", "privacy"]
---

## A local-first tool should give you local-first control

Daneel runs on your machine. Your conversations, your indexed sites, your vault documents — they live in your browser's storage, not on our servers. That's the promise.

But local storage has a weakness: it's tied to one browser, on one machine. Reinstall Chrome, switch laptops, or clear your data — and everything is gone.

Data portability fixes that. Starting today, you can export your entire Daneel workspace to a portable file and restore it anywhere. And if you want automated cloud backup, we support Azure Blob Storage and any S3-compatible service — without a single external SDK.

## One-click local backup

The simplest path: open Settings, go to Data, and click "Export to file." Daneel gathers your settings, conversations, and all indexed site data, compresses everything into a timestamped ZIP, and downloads it to your machine.

To restore, click "Import from file," pick the ZIP, and everything comes back — settings, chat history, embeddings, vault metadata. A progress bar tracks each stage so you know exactly where the import stands.

The ZIP is self-contained and versioned. You can store it in your own backup system, share it across machines, or keep it as a snapshot before experimenting with settings.

## What's inside — and what's not

Transparency matters when you're moving data around. Here's exactly what an export contains:

**Included:**
- All user settings and preferences
- Every conversation (page chats and vault chats)
- Indexed site data with full embeddings (stored as efficient binary, not bloated JSON)
- Vault metadata and document references
- MCP server registrations and agent definitions

**Excluded by design:**
- API keys (Claude, Azure OpenAI) — encrypted at rest, never serialized
- MCP credentials (OAuth tokens, API keys for connected services)
- Telemetry identifiers
- Backup provider credentials themselves (no circular leaks)
- Downloaded model files (too large, re-downloaded on demand)

This separation is deliberate. Your workflow travels with you. Your secrets stay behind, exactly where they should be.

## Azure Blob Storage

If you use Azure, backup is straightforward. Generate a Container SAS token in the Azure portal (read + write + list permissions), paste the URL into Daneel, and click "Test Connection." Once validated, "Upload to Azure" exports and uploads in one step.

Daneel talks directly to the Azure REST API — no Azure SDK, no npm packages, no intermediary services. The SAS token authenticates every request. Your backup lands as `daneel.backup.zip` in your container, overwritten on each upload.

Restoring is the reverse: "Download from Azure" pulls the ZIP and imports everything. The same progress tracking shows upload and download stages in real time.

## S3-compatible — AWS and beyond

For S3-compatible storage, enter your access key, secret key, bucket name, and region. Optionally set a custom endpoint URL for services that aren't AWS:

- **AWS S3** — the default, virtual-hosted bucket URLs
- **Cloudflare R2** — set the R2 endpoint, zero egress fees
- **Backblaze B2** — set the B2 S3-compatible endpoint
- **MinIO** — self-hosted, point to your own server

The same "Test Connection" then "Upload" then "Download" flow works identically across all four. Daneel auto-detects whether to use virtual-hosted or path-style URLs based on whether you've set a custom endpoint.

Your IAM user needs just three permissions: `s3:GetObject`, `s3:PutObject`, and `s3:ListBucket` on the target bucket. Nothing more.

## Built from scratch — zero dependencies

Both the Azure and S3 integrations are built on pure browser APIs. No SDKs, no bundled libraries, no supply chain risk.

The S3 client includes a complete AWS Signature Version 4 implementation written entirely against the Web Crypto API. SHA-256 hashing, HMAC-SHA256 signing, four-step key derivation — all running in your browser's native crypto engine. It passes the AWS reference test vectors, and you can read every line in a single file.

For a Chrome extension that prides itself on minimal dependencies, this matters. Every byte in the bundle is code we wrote and can audit.

## Large files, no problem

Chrome extensions have a CORS constraint: content scripts can't make cross-origin requests to cloud storage providers. And Chrome's message-passing has a 64 MB per-message limit — a problem when your export ZIP contains thousands of embedded pages.

We solved both. All cloud requests route through the background service worker via a long-lived port, bypassing CORS entirely. The ZIP payload is chunked at 30 MB boundaries, base64-encoded, and reassembled on the other side before uploading. This handles exports well over 100 MB without hitting any Chrome limits.

You don't need to think about any of this. Click "Upload," watch the progress bar, done.

## Progress and control

Every operation — local or cloud — shows real-time progress. The progress bar parses each stage: gathering settings, exporting domains (with counts), compressing, uploading, downloading. Determinate progress shows a percentage; indeterminate stages show an animated shimmer.

Success shows a green confirmation. Errors display inline with the full message so you can diagnose issues (expired SAS token, wrong IAM permissions, network timeout) without digging through console logs.

All three backup methods are gated behind a premium license, but the local file export gives you a complete, portable snapshot of your Daneel workspace regardless.

## What's next

We're exploring incremental backups — only syncing what changed since the last export — and scheduled automatic cloud backup on a timer. For now, one click gets you a full snapshot anywhere you want it.

Your data lives on your machine. Now it can also live wherever you choose.

---

[Read on site](https://daneel.injen.io/news/data-portability.html?utm_source=extension_news_reader&utm_medium=extension_settings&utm_campaign=extension)
