How to Hand Assets to a Developer Without Slack Soup
By Khushi Yadav
Engineering does not need another screenshot of a screenshot. The soup looks like this: a Slack thread with image.png, image (1).png, a 2× export that is actually 1×, a hex pasted without the token name, and a Figma link with "you'll see it." Two sprints later nobody can prove which file shipped.
A clean handoff is named files, one canonical location, and structured tokens from the design tool — not a clipboard history dump. Windows will store 25 bits of text, HTML, or bitmap, each under 4 MB, and it will forget unpinned items at restart. That is a personal scratch pad. It is not a release.
What developers actually consume
| Deliverable | Canonical form | Weak form |
|---|---|---|
| Icon / illustration | SVG or 1×+2× PNG in the repo | Slack preview, Win+V bitmap |
| Photo / marketing raster | Named PNG/WebP in public/ or DAM | Recaptured chat image |
| Color | Token in the system (Figma variable / CSS) | Ten swatch screenshots |
| Type | Licensed files + CSS stack | "it's the one in the PDF" |
| Spacing / type scale | Variables or a spec table | A marked-up PNG only |
| Motion | MP4/GIF file plus spec | A still frame in history |
| The layout | Figma frame + Dev Mode inspect | A full-page screenshot |
Figma's export help is the official raster path: export selected objects or slices, set scale (1x, 2x, custom w/h), format PNG/SVG/PDF/JPG. Default image DPI is 72; 2× is 144. Exporting @1x and @2x Without Losing the Pair. Copy as PNG is a 2× clipboard convenience, not a handoff.
Figma also documents Copy as code (CSS, iOS, Android) from the right-click Copy/Paste as menu. That is a starting point for a single node, not a design system. Prefer variables and a published library when the team has one. When Figma Components Replace Copied Assets.
The location beats the message
Pick one of these as the system of record:
- The repo —
src/assets/icons/chevron-right.svgopened in the same PR as the component - The design file — Dev Mode inspect, official exports attached to the frame
- The DAM / cloud folder the contract already uses, with names that match the ticket
Slack, Teams, and email point at that location. They do not store the master. Slack's own help is about adding files to a conversation; inline previews even skip very large images. Workspace retention may delete the upload. Avoiding Compressed Chat Images in Final Decks.
A ticket comment with a path is more durable than a 40-message thread:
Icons: repo /src/assets/icons/nav-*
Export: Figma Checkout / v12 — export settings 1x+2x PNG
Tokens: color.cta.bg = #0B6E4F (token color/cta/bg)
Naming that survives a merge
icon-search-24.svgnotsearch final FINALhero-home@2x.pngnext tohero-home.pnglogo-lockup-on-dark.svg- No spaces if the stack is picky; kebab-case travels
If Photoshop is the source, Export As with those names into the repo working copy, then open the PR. Do not Copy Merged into Slack. How to Move an Export From Photoshop to a Browser Mock. Best Clipboard Setup for Photoshop Users.
Affinity: export the file; Paste Special is a Windows editor convenience, not a handoff. Affinity Photo and Designer on Windows: Paste Notes.
Canva: download the export, rename, put it in the folder. Upload-only thinking is fine inside Canva; engineering still wants a file in git or the CDN pipeline. Canva Desktop vs Canva Web Clipboard Limits.
What to do with color and type
A screenshot of a palette is a last resort. A text list of tokens is better. A variable collection is best. Color Palettes: Hex Lists vs Visual Swatches.
Example of a paste-friendly list that is still not the system of record:
color/bg/page #F7F5F2
color/cta/bg #0B6E4F
color/cta/text #FFFFFF
Pin that list in Win+V only while writing the CSS. Do not pin it as the brand bible. Brand Guidelines PDFs Do Not Belong in History.
Font files go with a specimen and a license note. How to Keep Font Files With the Specimen Image. Do not copy-paste a font file into chat.
Desktop versus browser Figma
Handoff should not depend on which Figma surface the designer had open. Export and inspect live on both. Paste of OS bitmaps does not. If a developer cannot paste a PNG into the web file, the answer is upload/drop the exported file, not a debate about the designer's clipboard. Figma Desktop vs Figma Web: Paste Behavior Differs.
Figma resizes pasted assets over 4096 px. Export the size engineering asked for.
A 15-minute handoff checklist
- Lock the frame name to the ticket ID
- Confirm 1× size in CSS pixels, then export 2× if the target is a high-density screen
- SVG for simple icons; PNG for photographs and complex raster
- Write tokens in the ticket or the token file — not only on a slide
- Put files in the repo or DAM
- Post one Slack message with links and names
- Clear unpinned clipboard history if it holds production URLs or unreleased UI. Client Feedback: Collect Marked-Up Shots in One Place
When a shelf is useful — and when it is not
During the hour of exporting, a visual stack of the three files about to land in the PR can reduce Explorer bouncing. Optional local tools such as Edge-Drop drag files. They do not version assets and they do not notify the reviewer.
A DAM (Eagle, Brandfolder, DAM in the enterprise) wins when marketing and product share the same pictures for months. Eagle, Billfish, and Asset Managers vs Clip History. Git wins when the asset ships with the code. Win+V wins when a single hex must be typed into two files in the next five minutes.
Worked example: five icons and a color bump
Ticket: NAV-188. Designer work:
- Confirm icons are components in the library. If they are still loose PNGs, promote first. When Figma Components Replace Copied Assets.
- Export
icon-search.svg,icon-cart.svg,icon-account.svg,icon-help.svg,icon-menu.svginto a working clone of the repo atsrc/assets/icons/. - Add 2× PNG only if the platform is raster (older native shells). Otherwise SVG is the pair-killer in a good way.
- Put the new
color/nav/activehex in the ticket and in the token file, not only in a screenshot. - Open a PR or attach a zip of those paths if the designer cannot push.
- Slack: "NAV-188 icons in PR #412; token color/nav/active #0B6E4F."
- Clear history if the ticket copied a staging password (it should not have).
Engineering should never need to open Win+V on the designer's machine.
Troubleshooting
| Symptom | Fix |
|---|---|
| Dev says the icon is blurry | They used a chat preview; point at the repo path |
| SVG looks different in the app | Stroke vs fill, viewport box; fix the file, do not send a PNG of the Figma zoom |
| 2× missing | Re-export both; do not "just scale in CSS" if the pipeline expects @2x files |
| Wrong hex in production | Token file was not updated; a pasted screenshot is not a token |
The soup is optional. Named files are not. Handoff is a publishing step: export, name, place, link. The clipboard is allowed to help for one sitting. It is not allowed to be the package.
Windows limits on the handoff desk
The designer's Win+V list is still 25 items and still forgets unpinned clips at reboot. A 2x marketing still will often miss the 4 MB history cap. That is why the repo or DAM is the handoff, not a shared look at someone's clipboard.
If engineering must work offline on a train, zip the named exports and the token file. A zip is a file. Copying that zip in Explorer is a file-list paste. History will not keep it as a card. Windows Clipboard History Does Not Store Files.
Do not enable clipboard sync so a developer can "just pick it up on the other PC." Microsoft syncs text. Icons will not arrive. Unreleased UI strings might.
Related reading
- Color Palettes: Hex Lists vs Visual Swatches
- Exporting @1x and @2x Without Losing the Pair
- Best Clipboard Setup for Photoshop Users
- Best Clipboard Habits for Developers in 2026
Sources
- Export static designs from Figma — official export, Copy as PNG/SVG mention.
- Export formats and settings for static designs (Figma) — 1x/2x, 72 DPI base.
- Copy and paste objects (Figma) — Copy as PNG at 2×; Copy as code; 4096 px resize.
- Add files to Slack — chat is a file transport, not an archive.
- Using the clipboard (Microsoft Support) — why Win+V cannot be the drop folder.
- Quick Export as in Photoshop (Adobe) — file-first export when Photoshop is the source.
Khushi Yadav is a B.Tech Computer Science Engineering student interested in technology, software, and exploring practical applications of computer science. She enjoys learning new concepts and contributing to technology-focused projects.
GitHub · LinkedInCopy. Stack. Drop.
Transform your clipboard into an interactive edge shelf. Stack, pin, and drag assets into any app with zero friction.
Download for Windows Get from Microsoft Store
How to Install Guide · First 10 Minutes Guide · Drag & Drop Guide · Edge-Drop vs Win+V · Support
Free · Lightweight · Privacy First