# Overview

> What Douklar is, what it moves, how a move works, and what it deliberately does not do.

Douklar is a **self-hosted workspace for controlled moves of AWS data between
accounts and Regions**. It is a developer preview.

## What it moves

| Service | What moves | In one line |
|---|---|---|
| Amazon ECR | Container images with their OCI referrer graphs | Copies selected tags from the source digest and verifies the graph arrived |
| Amazon S3 | Objects | Four explicit paths: worker relay, server-side copy, S3 Batch Operations, local upload |
| AWS CodeCommit | Git repositories | Mirror or incremental push, with ref parity checked at the end |
| Amazon DynamoDB | Items | Insert-only seeding into an existing table |

Nothing else. Douklar does not move other resource types.

## How a move works

The workflow is the product. Every move follows the same route:

1. **Account profiles.** One profile per AWS account, each with its own
   credentials. See [Accounts and credentials](/docs/douklar/accounts-and-credentials).
2. **Discovery.** Cached catalogs of buckets and repositories per account.
3. **Mappings.** Source to destination per service, renames allowed. See
   [Discovery and mappings](/docs/douklar/discovery-and-mappings).
4. **Preflight.** Read-only checks before anything is written. See
   [Preflight and Review](/docs/douklar/preflight-and-review).
5. **Reviewed run.** You see what will be written, then start one queued run.
6. **Verification.** Each service checks what landed.
7. **Activity.** A durable record of what happened. See
   [Activity and evidence](/docs/douklar/activity-and-evidence).

Where Douklar may not change something itself, such as the source bucket's
policy, it shows the exact statement or command for the other account's
admin, who applies it.

## Two front ends, one core

![Douklar console Overview with service health, a run that needs attention, and recent runs](console:overview)

- **The web console**: a FastAPI backend serving a React app, with a sync
  worker that runs queued jobs from PostgreSQL.
- **The `douklar` CLI**: the same core logic, for terminals and scripts. See
  [The douklar CLI](/docs/douklar/cli).

## Good jobs for Douklar

- An account split, or a move into a new landing zone.
- Promoting images, objects and repositories from stage to prod.
- A carve-out or merger where the accounts share no AWS Organization.
- Seeding an existing environment's DynamoDB tables without replacing records.

## What Douklar is not

- **Not continuous replication or DR.** Native replication is the right tool.
- **Not a server or application migration platform.** AWS Transform covers that.
- **Not CI/CD or GitOps.**
- **Not an infrastructure tool.** It copies into buckets, repositories and
  tables that already exist. The one step that creates resources is S3 Batch
  Prepare, which you confirm.
- **Not hosted.** There is no SaaS and no hosted demo.

Source: https://douklar.app/docs/douklar/overview (Douklar docs, last checked 2026-10-23)
