Philosophy

Handoff is part of the new practice called Design Operations. Here is a high-level overview of Handoff - what it is, why we built it, and what its limitations are.

Handoff's mission is to reduce the friction between design and frontend development by building high-quality information pipelines and sophisticated design systems. We're calling this Design Operations.

Figma is an excellent web and application design tool. Handoff is developer-focused tooling on top of the Figma RestAPI to help developers translate design into accurate, consistent, and maintainable code.

Handoff has several user personas in mind:

For Developers

  • Handoff extends Figma to help developers pull just the essential tokens out of a design.
  • Handoff starts with a well-formed template, maximizes development speed, and minimizes ambiguity.
  • Handoff makes building frontend documentation easy, so developers have a common reference.
  • Handoff is easily customizable so developers can ensure that the documentation matches the conventions and standards.
  • Handoff is tightly integrated with developer and operational tools like NPM and CI/CD to support existing workflows.

For Designers

  • Handoff makes it easy to express exactly what designers want from a Component in a developer-friendly way.
  • Handoff provides a common web interface for designers to check how designed Components look and act on the web, prior to development.

Limitations

Handoff is highly inflexible. This is partially because extraction of tokens from Figma is difficult, and partially because imposing a very rigid structure on design produces better engineering results. Handoff comes from a belief that the Foundations and Components of a web application should be designed with a high degree of rigor, and then expressive designs can be built on top of that foundation. The expressive design will be better in every facet, if the foundational objects are well-built.

Handoff is designed to be fully modular, allowing you to use only the portions you need, and to extend the framework as desired. The toolchain consists of the following pieces:

  • Figma REST Extractor
    • Foundations (Colors, Typography, Logos, Icons)
    • Components
  • SASS Variable Token Transformer
  • CSS Variable Token Transformer
  • Bootstrap Preview Generator
  • Static Site Generator