I love building quick, focused prototypes that feel alive—and I’ve refined a keyboard‑first Figma workflow that lets me design microinteractions and export production‑ready assets in about an hour. This isn’t a slow, pixel‑perfect tear‑down of motion theory; it’s a practical, repeatable sequence that emphasizes speed, clarity, and assets you can hand off to engineers.

Why keyboard‑first?

Working keyboard‑first keeps my hands on the tools and out of menus. It’s faster, more consistent, and helps me stay in a creative flow. Figma already has a rich set of shortcuts and features (Variants, Auto Layout, Smart Animate, Interactive Components) that I combine with a few plugins to move quickly from idea to working prototype and exported assets.

What you’ll need

Before we begin, install these free helpers that I use in almost every session:

  • LottieFiles (for exporting and previewing Lottie JSON)
  • Figmotion or Anima (optional if you prefer timeline-based motion inside Figma)
  • SVGOMG or the built‑in Figma SVG export settings (for optimizing SVG)
  • Rename It (useful for batch renaming layers before export)
  • And the essentials: a keyboard with comfortable shortcuts and Figma opened to a new file or your existing design system file.

    One‑hour roadmap

    I break an hour into four focused chunks. You can adapt the time per phase, but this breakdown keeps momentum:

  • 0–10 min: Setup and constraints
  • 10–30 min: Design microinteractions using Interactive Components and Variants
  • 30–45 min: Prototype flows (links, overlays, while‑hover, on‑press)
  • 45–60 min: Export production assets and handoff notes
  • 0–10 min: Setup and constraints

    Start by setting constraints and preparing your components. Keyboard shortcuts I use right away:

  • A — Frame tool (quick frames for screens and containers)
  • R — Rectangle (quick shapes for buttons, toggles)
  • Shift + A — Auto Layout (apply layout without hunting in panels)
  • Cmd/Ctrl + G — Group
  • Cmd/Ctrl + D — Duplicate
  • Work fast: create a frame for your target context (e.g., 375 × 812 for mobile). Sketch out key UI elements as simple shapes with text labels. Don’t obsess over visuals yet—focus on states and spacing. Convert elements into components early: select > Cmd/Ctrl + Alt + K (Create Component) so you can use Variants.

    10–30 min: Design microinteractions with Variants

    Interactive Components + Variants are the backbone of a keyboard‑first motion workflow. I create a single component with variants representing each state (default, hover, pressed, loading, success, error).

    Keyboard tips for variants:

  • Cmd/Ctrl + B — Toggle bounding box for quick selection
  • Enter — Edit text inline
  • Cmd/Ctrl + ] or [ — Bring forward/back (quick layering tweaks)
  • Example: a primary button with three variants

    VariantWhat to include
    DefaultBackground color, label, subtle drop shadow
    HoverSlightly darker background, scale 1.03, shadow elevated
    PressedInset shadow, scale 0.98, reduced elevation

    Use Smart Animate by keeping property names consistent across variants (same layer names). Use small transforms (< 10%) for scale and 40–120ms durations for subtle feedback. Accessibility note: ensure color contrast across states—my quick check is toggling a desaturated mode and eyeballing the contrast in a single frame.

    30–45 min: Prototype flows

    Now wire the interactions. Switch to the Prototype tab and use keyboard shortcuts to speed linking:

  • P — Start connecting (hold P to draw connection lines quickly)
  • Shift + Enter — Jump to the prototype preview
  • Cmd/Ctrl + \ — Quick toggle between Design and Prototype
  • Prefer Interactive Components? Use them for common element behaviors (hover, press). For multi‑step interactions (a button opens a small overlay, a success toast appears), connect frames with On Click → Navigate to and choose Smart Animate for transitions. For hover states on desktop prototypes, use While Hover → Change to, and for presses use On Press → Change to or After Delay actions.

    Microinteraction examples I implement in this phase:

  • Button hover/press with scale and shadow using Interactive Component
  • Toggle switch—drag vs. click: create two variants and use While Hover + On Click to animate the thumb
  • Inline form validation—On Submit, transition to a small red error state on the field, or show a success check with a short 600ms bounce
  • Tip: keep transitions short and consistent. I usually pick durations in a 120–320ms range and use ease‑in‑out for natural feeling motion.

    45–60 min: Export production assets and handoff

    This phase is about extracting what engineers need. Do it in a keyboard‑first way:

  • Cmd/Ctrl + Alt + E — Export selection (opens export modal)
  • Cmd/Ctrl + Shift + O — Outline stroke (prepare SVG shapes)
  • Cmd/Ctrl + Option + 2 — Zoom to selection (quickly inspect small elements)
  • Export checklist:

  • SVG icons: select icon → set export to SVG → use Clean SVG in options or post‑process with SVGOMG. Name files clearly (icon-check-filled.svg).
  • PNG/raster: export at 1x, 2x for retina if needed. Use slices only if an element doesn’t export cleanly as a layer.
  • Lottie: for more complex vector motion, use the LottieFiles plugin to export JSON. Remember to flatten unsupported effects (no filters, bitmaps), and keep shapes as vector paths.
  • Motion specs: create a small spec frame listing durations, easings, and property changes (ex: Button hover — scale 1.03 — 160ms — ease‑out). Copy text with Cmd/Ctrl + C and paste into your ticket or handoff doc.
  • Batch renaming before export is vital: use Rename It or the Figma layer rename shortcuts to keep names consistent. Engineers love predictable layer names because animation keyframes often reference them.

    Handoff artifacts I include

    I produce a compact handoff bundle that saves back‑and‑forth time:

  • A prototype link with hotspots enabled and short notes in the prototype description
  • Exported assets folder (SVGs, PNGs, Lottie JSON) organized by component
  • A small motion spec card inside the file with values and CSS equivalents (transform: scale(), opacity, transition timing)
  • Optional: a code snippet for simple interactions (e.g., CSS for hover/pressed states or a Lottie embed snippet)
  • Keyboard‑first efficiency tips

  • Learn the 20 Figma shortcuts you use most. I keep a cheatsheet in a file until they’re muscle memory.
  • Use components and variants as your single source of truth—changing one master changes every instance.
  • Name layers deliberately. Smart Animate relies on matching layer names across variants.
  • Keep motion small and purposeful. Microinteractions are about clarity, not spectacle.
  • When exporting SVGs for Lottie or code, avoid masks where possible—convert to groups or flattened paths if Lottie conversion fails.
  • When I follow this rhythm—set up, build variants, prototype flows, and export—I consistently ship usable microinteractions and assets in around an hour. The payoff is a crisp prototype you can test and hand off with minimal friction, plus a reusable component set that accelerates future work. Go make something that delights in the details.