LayerPort

Guide · Maintain

How Source Sync preserves edits after a re-capture.

The naive way to update a captured site is to capture it again, which deletes every edit you made since. Source Sync exists so that never happens. This is the exact order it applies things in, what it carries, what it refuses to guess, and what you see afterwards.

In brief

  1. Edits are layers, not baked bytes

    Text, images, hidden sections and reorders are stored as content layers on top of the capture. A recapture replaces the tree; the layers come back on top.

  2. The old tree is kept as a backup

    Before anything else, the pre-sync tree is preserved on the same volume. The sync reads from it and never has to hold your work in memory.

  3. Five passes, in a fixed order

    Uploads and CMS decisions, then deleted and duplicated pages, then layers and renamed routes, then redirect stubs, then collections and a verification pass.

  4. Collisions are reported, not resolved

    A page you created at a route the source now occupies is a decision for you. The sync flags it; it never overwrites a source page.

  5. History carries forward

    The pre-sync state is a restorable version. Rolling back is a save, so it can itself be undone.

The problem, stated precisely

You capture a client's Framer site, spend a week in Live Edit -- new copy on the pricing page, a hero image swapped, a section hidden, a route renamed from /team-2 to /team -- and deploy. Two months later they add a case study in Framer. To get it, you capture again. A capture is a fresh download; your week is gone.

Most tools stop there and call the result “a snapshot”. LayerPort stores everything you do in Live Edit as content layers keyed to the page and the element, separate from the captured files. That separation is what makes a recapture survivable: the tree can be thrown away and the layers reapplied. Source Sync is the procedure that does the reapplying without losing the things that are not layers.

What Source Sync does, in order

  1. Keep the old tree

    The pre-sync tree is preserved as a same-volume backup before a byte is downloaded. Every later pass reads from it; nothing depends on memory or on the sync finishing.

  2. Capture the source again

    The origin is downloaded fresh -- routes, assets, the module graph, all three breakpoints -- as if for the first time. New pages arrive; removed pages do not.

  3. Carry assets and curated decisions

    Your uploads (assets/uploads), page capsules, and the collections you confirmed as CMS are copied across. Which collections you confirmed is a decision, not a detection result, so it is carried verbatim.

  4. Re-delete, then re-duplicate

    Pages you had deleted are deleted again so the routes they cleared stay free; then the pages you duplicated are carried -- before renames, so their internal links are rewritten with everything else.

  5. Reapply layers and routes

    The content layers land on the new tree. Then, because the pages came down at their original URLs, your renames are performed again and the redirect stubs a rename leaves behind are placed once the routes they sit on are free.

  6. Collections, then verify

    CMS collections are detected again and reconciled with your decisions. A verification pass walks the result and writes the review list.

What survives, what waits for you

The right column is the honest one. A sync that reported success while silently dropping any of the left column would be worse than no sync.
Your workAfter a syncWhy
Text, link and image editsReappliedLayers keyed to page and element
Uploaded images and filesCarriedCopied from the backup tree
Hidden or reordered sectionsReappliedLayers, same as text
Renamed routesRe-performedPages come down at original URLs; renames run again
Duplicated pagesCarriedPlaced before the rename pass
Deleted pagesDeleted againSo the routes stay free
Confirmed CMS collectionsCarried verbatimA decision, not a detection
An edit on a section the source removedOn the review listThere is nothing to place it on
A page you created at a route the source now usesReported as a collisionThe sync never overwrites a source page

The rule that makes it trustworthy

Where history fits

Every save in LayerPort is atomic and version zero -- the original capture -- is always reachable. The pre-sync state is itself a version, so a sync you regret is a restore. And because a restore is a save, it can be undone too; there is no one-way door anywhere in the sequence. Solo keeps ten saved versions per project, Studio forty, Pro a hundred; version zero and named checkpoints are always kept.

In practice the loop for a maintained site is: the client changes something in Framer → you run Source Sync → you glance at the review list (usually empty) → you redeploy the same folder. It is a chore of minutes, which is the difference between a site you can keep and a snapshot you eventually abandon.

After a sync, before you redeploy

  • Open the review list. Empty is normal; anything on it names the page and the element.
  • Diff the route list against the previous capture: new pages from the source, renames re-performed.
  • Spot-check the pages you edited most -- they are the ones with layers to reapply.
  • Redeploy the same way as last time; the host does not need to know a sync happened.

FAQ

Do I lose my edits when the source changes?

No. Edits are content layers reapplied after the recapture, and the pre-sync tree is kept as a backup the sync reads from. What cannot be placed with confidence goes on a review list.

What happens if the source removed a section I edited?

The edit has nothing to attach to, so it is listed for review with the page and element named. It is not silently dropped and not applied somewhere wrong.

Is the original capture always reachable?

Yes. Version zero is kept regardless of the plan's version count, and the pre-sync state is a version you can restore.

Which plan includes Source Sync?

Solo and above. The Site Pass is a one-time capture for a single site; Solo ($19 / mo) adds Source Sync and ten saved versions.

Does it work for Webflow and static sites too?

Yes. The procedure is the same; only detection differs. Webflow markup has no data-framer-name to anchor on, so anchors use authored classes and position.

Features · Workflow · Pricing · FAQ