17 Designer Developer Collaboration and Handoff Tools For 2021

Bridge the design and development gap, to collaborate and build products better together.

Jonathan Saring
Bits and Pieces

--

I like this visual by Supernova

A successful handshake between developers and designers is a fundamental key to successful, timely, and high-quality product delivery.

A successful handshake, unlike just a handoff, means a mutual process where designers, and other stakeholders, can be included in the development process itself. This is the holy grail for a product team’s building workflow.

My own team uses a super-powerful combo of Figma + Zeplin + Bit. Figma is used to design components, define dependencies, and organize Scopes. Bit is used to turn designs into React components, define dependencies, organize Scopes, and easily manage them across projects. Zeplin is used to create a simple and smooth transition between the two. It works like magic.

Embed Figma design right in your production components MDX docs!

To compile this list, I’ve talked to dozens of designers, developers, and product builders in teams ranging from small startups to Fortune-100 companies. I’ve also tested and played hands-on with every tool on the list myself, to get a better feel of how it works and what it offers. I got to new some very exciting new tools like Abstract and Avocode this way. The list isn’t ranked, so please go ahead and explore it to try out any of the tools.

Feel free to comment below and add/comment on your own tools!.

1. Bit

Most tools handle the handoff from design to development. But, what about the other way around? How can designers inspect and take an active part in the UI development process? After all, code is what users get.

Bit is the only developer-to-designer handoff tool on the list. It’s a game-changer in the way designers can collaborate on UI development. Just imagine, your Figma designs embedded right in each React component’s MDX docs. See if design and code are the same, visually! Take a look here:

With Bit, your dev team gets a shared ecosystem of components that are shared and synced across all your projects. An awesome side affect is, all your components are always visualized on the cloud for everyone to see.

Bit helps developers to build modular applications from independent components. It provides powerful tools for developing and publishing components, and for collaborating on shared components as a team.

As part of working with Bit, components are visually rendered and documented. These visuals are a native part of each component, and always represent the exact state of any version of a component in your codebase.

All your components are shared in the component cloud, where developers can easily use them in new projects, and designers can visually see the exact visual state of the UI code. Designers see what developers really build.

The “base-ui” design system on Bit

It’s easy to search and explore any component in your codebase.

Designers can interact with the components, play with the examples, and even save visual examples to implement in new component versions.

Since Bit unlocks indepndant versioning for components, designers can easily see and monitor visual changes in every new version of a component.

You can even automate this process so that whenever a new component version is out, designers will get an Asana task to audit the changes!

Bit is a strong way to bridge the design-develop gap from the developer’s end, which also makes it a great combination with tools like Zeplin that do the same from the designer’s end. An integration is due in 2021.

Learn more:

2. Zeplin

I love Zeplin. It’s not perfect, but it’s the designer to developer handoff tool chosen by our team- and we really enjoy it. Zeplin saves a large portion of the effort around handing designs to developers, automating a lot of small yet painful details that developers need in order to implement designs.

Zeplin makes it easy for designers to export files in one click using our Sketch, Figma, Adobe XD, Adobe Photoshop CC plugins. Zeplin will generate mostly accurate tailored specs, assets and code snippets for developers.

Another super cool feature of Zeplin is Connected Components. It lets everyone access components in your codebase right on the designs, with links to GitHub or any other source of truth. As soon as this can be integrated with Bit, which controls the actual components in the code, then your entire team will be able to collaborate directly on UI code changes in a visual way in one smooth unified workflow for design and code. 2021 should be the year.

Zeplin’s Connected Components

3. Design Tokens

Design tokens have been around for a while and got on the front stage when introduced in Salesforce Experience and Design’s “Lightning” design system. Today, they can be found in many design systems like Adobe Design Lab’s Spectrum and Mozilla Open DesignPhoton.

Design Tokens in Adobe’s Spectrum Design System

Design tokens help product teams to collaborate and improve brand consistency. They are symbols used in the developer’s code, which represent a piece of UI information like color or font, which is controlled by a designer. The designer can replace the value of the stolen with a different value, and the developers will only have to pull an update. This gives designers the ability to independently make some visual UI changes and send these changes to all impacted screens and platforms. Sounds cool, right?

So, why isn’t everyone working with design tokens yet? Well mainly because you still need a Design Token Generator, like Salesforce’s Theo, which does not really communicate in a native way with most design tools (Sketch lets you generate a JSON file, which isn’t really designer-friendly).

This technology is only now starting to become mainstream, and it is the first step towards including designers in the development process in a truly collaborative way. Keep a close watch on Design Tokens when building your design system, especially if combined with the next tool on the list.

4. Figma Developers Platform (Figma API)

So Figma is my favorite design tool for many reasons, mainly because of how well it lets you work with components and manage the relationships between them. In many ways, Figma for UI design is like Bit for code, since it is a collaborative way to create modular applications in a modern web stack. This is why our own team builds the same components in both, to stay synced.

Features like code inspections, layout measurements, and shared styles make Figma a weapon of choice for many collaboration-oriented product teams.

Apart from being a widely popular and awesome design tool, Figma also provides a REST API for developers. This API for example, powers Uber Design’s “ShowCase” design gallery, which is very cool.

In a developer-facing approach, you can create plugins to automate tasks and improve your workflow and publish plugins for your team or to the world.

Another useful feature is that you can embed live Figma designs and prototypes wherever you need them. And, a bunch of integrations lets you connect Figma with other tools in your design workflow to work better.

One thing Figma did forget, was to add an image and description to their Medium sharing OG cards 😆 — but click this link none the less if you wish to explore more how Figma can improve collaboration for your team.

  • Check out Figma to React which is a very cool project that demonstrates Figma’s API to convert a Figma document to React Components. It’s FAR (!) from production-grade, but still cool.
  • Figma is also a powerful combination with Bit and Zeplin. You can design components on Figma and code with Bit. Organize Scopes with Figma and with Bit. Define and manage all dependencies with Figma and Bit. One system, design and code, always up to date. I’ll write about it soon.

5. Sketch Developers

So when I look at Sketch in terms of designer-developer handoff, I’m surprised to see how hard these guys worked to join the front-line.

Two exciting features of Sketch place it right in the front-line of designer and developers collaboration. The first is “Cloud Inspector” which to be honest reminds me a lot of an early-days Zeplin, and makes it easy for developers to get the information they need to turn pixels into code — all in the browser and, most importantly, for free. And there’s even layer measurement!

And here’s a short video demo:

More cool features of Sketch for designer-developer handshake are the Sketch API, Sketch Plugins, and Sketch assistants. Basically, you can write a Sketch plugin in JavaScript (with ES6!), access macOS frameworks, and use the Sketch APIs, to create and automate smart workflows around teamwork.

6. Invision Inspect

Inspect is InVision’s designer to developer handoff solution.

It translates design values in files like Invision Studio, Sketch, or even Photoshop into code specs for developers (value measurements, custom variables definition and more). It also lets developers annotate designs to signal to designers what should be amended, changed, or reiterated.

Invision’s Inspect offers integrations to tools like Jira, Confluence, Trello and, even Storybook. Not to Bit yet, but it should definitely have one too.

And, Inspect goes hand in hand with Invision’s Design System Manager so that useful annotations and code values can be delivered to developers for all components in your design system. Honestly, my team doesn’t use invasion at all, but I’ve been playing with it, and it looks and feels pretty awesome.

7. Abstract

Leveraged by teams like Cisco in the development of the momentum design system, Abstract is a tool that adds powerful capabilities on top of the design workflow and toolchain (i.e Sketch). For example, Abstract adds git-like version control with branches to design, which lets designers merge design changes into one file, like developers do with code. Magical, right?

A particularly cool feature is the developer-handoff. Since Abstract in inspired by Git and brings version control into design, it helps developers engage with the latest and most accurate versions of designs.

Abstract: Designer Developer Handoff

And just like on GitHub, commit history, comments, and annotations make it easy to interpret ‘the why’ behind design decisions. And, it even translates design values into code so that developers can just copy-paste the code like they do on Zeplin and similar tools. Git for designers- interesting, right? I’d like to see each componnet’s version aligned to its Bit version in code, so that when you bump a design version, a developer will bump the code version 🙏

8. FramerX

Framer Team is a very cool product that made a lot of buzz. It’s basically a powerful prototyping tool that provides many collaboration-driving features multi-player editing, easy sharing, inline commenting, reusable components, mobile preview, and developer handoff. Pretty cool IMO.

It works with files imported from any UI design tool, or you can go ahead and design right in Framer. Designing in Framer have some great advantages like “magical” motion animation design made very simple, and the ability to design and add interactive buttons and elements in your design.

This latest addition introduced in FramerX means you can design fully interactive components that are modular and reusable. And, there’s a component store where you can search for reusable components.

9. Avocode

Avocode’s goal is to “save time working with design files”. It offers a rich array of solutions for handoff of design files in a simpler way for developers which get all code values and measurements they need with standard inspection abilities, for designers which can save the overhead around creating complex Sketch layers, and for everyone else who can interact and even change things like texts right in the designs in a way that won’t break the design itself.

For developers, Avocode will auto-generate specs from Sketch, Figma, XD, PS, & AI files in one tool. This means you can open & inspect designs including sizes, distances, colors, custom variables, and more without design tools, which is a big plus. And, you can export layers in a click. Awesome.

And as with some of my favorite tools, Avocode lets you add annotations right where and when you need them, to communicate directly over the design!

10. Animaapp

Anima App is a super innovative tool that pushes the very frontier of the design and development intersection. It helps you go from high fidelity prototypes to developer-friendly code that engineers can build upon quickly.

It offers features like interactive prototypes which seamlessly transform your static screen designs into fully responsive, interactive, animated prototypes directly in Sketch, Figma or Adobe XD.

Then you can export Sketch, Figma, and Adobe XD to HTML or React. Get clean, responsive code components tailored to your team’s conventions, with zero dependencies and minimal code refactoring.

Perhaps the most amazing thing about this is that it outputs code that developers can actually use with support for TS, SCSS, LESS etc so that developers can adopt it into their stack and workflow.

Mind-blowing, right?

11. Supernova.io

Supernova is still in closed Beta. However, this new tool is aspiring to nail the very core of the design to the development workflow.

Developers can use code-enabled components, tokens, themes, and styles from Supernova in their production environment of choice — while designers can use those same design elements to create new prototypes in real-time.

Supernova aspires to generate code, which has always been a dreaded task for design tools (or any tool). To be on the safe side, it suggests merging between generated code and handwritten code. You can also extend Supernova’s exporters with webhooks and API calls to automate your workflow. And, it has a standard infrastructure for managing entire design systems as well.

Definitely interesting, if it will live up to its promise. Check it out here.

12. Visly

Visly is another tool that aims to let you build React components, visually. Meaning, you can rapidly design and build production-ready components without writing code.

It brings code-originated concepts such as props, state, and interactions into the design process to ensure code can be generated.

And, like other tools on the list, Visly aims to help your team manage a design system. You can manage your apps tokens, components, and an automatically-generated style guide in one place. Or, you can start adding Visly-generated components into any existing codebase and Ui system.

13. Webflow

Webflow is an A+ tool for building websites in a visual way, abstracting away all CSS and style manipulations into a powerful visual editor. All CSS goodies like CSS Grid and Flexbox are supported so that the experience is like writing CSS but without writing CSS, which is amazing once you get a grip of the bit complicated editor.

This puts Webflow on the list, despite the fact that it’s not really a collaboration tool, and it’s not suited for full-blown products with complex engineering systems behind them. Check out these 7 reasons why you should consider Webflow as a front-end developer, and this post about how Webflow can assist in the design-development gap crossing. Cool tool.

14. StoryBook & Styleguidist

StoryBook and StyleGuidist are two OSS tools that help to develop components in isolation while visually rendering and documenting them.

StoryBook is a development environment for UI components. It allows you to browse a component library, view different states of components, and interactively develop components. Add-ons make it easier to integrate with different tools and workflows. Developers can use the visual docs Storybook creates to let designers and other people view components examples.

StyleGuidist

StyleGuidist is an Isolated React component development environment with a living style guide. It provides a hot reloaded dev server and a living style guide that lists component propTypes and shows editable usage examples based on .md files. It supports ES6, Flow and TypeScript and works with Create React App out of the box. The auto-generated usage docs can help Styleguidist function as a documentation portal for your team’s different components.

15. Codesandbox, Stackblitz and Codepen

Component playgrounds are a neat way to play with components and learn how they work. When you can combine them as part of your documentation, playgrounds help you quickly learn how code works and see how it looks.

Codesandbox

Codesandbox is an online editor for quickly creating and playing-with small projects like components. After creating something interesting you can show it to others by just sharing the url. CodeSandbox features a live preview to show the result of the code while you’re typing and has extensions built to integrate into your different tools and your development workflow.

Stackblitz

Stackblitz is an “online IDE for web applications” powered by Visual Studio Code. Much like Codesnadbox, StackBlitz is an online IDE where you can create Angular & React projects that are made shareable via a URL link. Like Codesandbox, it automatically takes care of installing dependencies, compiling, bundling, and hot reloading as you type.

Codepen is a widely popular online development environment for FrontEnd developers to play and share snippets in a visual way. Here’s a useful Cheatsheet for setting up a React playground on Codepen.

16. Sketch2React

Sketch2React is a very cool tool that offers an all-glorious promise: Just drag and drop your Sketch2React Sketch files onto our new loader and it’ll instantly convert it into code — React & HTML! Just like that.

While this idea takes prototyping for React to the next level, obviously, the magical creation of logical code expressions from visual elements is far from ideal. Still, you can’t help but admire these awesome guys for taking on this challenge and tackling the design-developer gap as head-on as it gets.

So kudos and fingers crossed for this tool, and take it for a spin yourself!

17. Relate

Relate is an interesting new idea by Eden Vidal isn’t really a collaboration tool, but really a single tool that aspiers to do both — code and design.

This is a very bold claim, and it will take a lot of innovation to create a design tool, or visual tool, that outputs code accepted by developers. Still, such an inspiring attempt is hard to overlook, and is very interesting to explore.

As you design, Relate aims to output legible presentational code that you can sync to a codebase and share with your production environment. This, in theory, means there is no handoff between designers and developers.

While the product just recently got out of closed Beta, it’s definlty worth checking out and keeping a close eye on. It’s a step in the right way.

More Resources

--

--

I write code and words · Component-driven Software · Micro Frontends · Design Systems · Pizza 🍕 Building open source @ bit.dev