Releases

Alpha v0.3.11 (January 2024)

Relay v0.3.11 brings significant performance enhancements to the Figma plugin, particularly on large Figma files. Collaborate seamlessly as you can now see real time changes instantly made by others in the Figma plugin. Additionally, we've added support for scrolling inside rows and columns. This release also includes a range of bug fixes to the Figma and Android Studio plugins.

New Features

  • Improved performance - enjoy lightning-fast performance for an uninterrupted workflow. You'll especially notice this when working with large files.
  • Multi-Player Editing - See your teammates' changes instantly with our new multiplayer feature. No more manual refreshes or waiting your turn. Relay now supports real-time, multiplayer collaboration within Figma.
  • Figma Scroll Property - Relay now supports vertical scrolling on columns and horizontal scrolling on rows. The scroll property is now carried over to the generated code.

Bug Fixes

  • Figma Plugin

    • Fixed issue where values couldn't be set on custom parameters that are exposed from nested instances.
    • Fixed issue where Relay plugin would error if a variant name is invalid in Figma.
    • Fixed splash screen that was missing a title.
    • Fixed issue where image content parameters couldn't be added to frames with image fills.
    • Fixed issue where when parameters are added to multiple variants, only one of the variants is shown in the Layer section of the parameter details page. Now all variants bound are shown.
    • Fixed issue where packages can be removed from Dev Mode, a view only mode.
    • Fixed issue where "share with developer" section is enabled in Dev Mode, a view only mode.
  • Android Studio Plugin and Generated Code

    • When Android Studio imports fail, Relay now produces more informative error messages.
    • Fixed issue where Relay would cause an IDE error if it couldn't render a preview for a UI package.
    • Fixed issue where variants that start with numbers would generate incorrect code.
    • Fixed error message to be more informative when font fails to download from a Figma component
    • Fixed issue where banner is not responsive to resize.
    • Fixed issue where mapping targets with lower case causes an error during build
    • Fixed bug where generated code would sometimes not set parameter values when calling other generated Composables.
    • Relay now supports Gradle configuration cache
    • Relay header now has an accessible label
    • General stability improvements to the Android Studio plugin

Alpha v0.3.10 (October 2023)

Relay v0.3.10 includes several bug fixes in the Figma and Android Studio plugins.

Bug fixes

  • Figma Plugin
    • The Figma plugin now displays all the variants to which a parameter is bound.
    • The share button no longer shows when the Figma plugin is opened in developer mode or when there are no packages to be shared.
    • Packages cannot be removed in the read-only developer mode.
    • UI package details are no longer shown when a component's parent layer is selected.
    • The errors and warning page title no longer overlaps with the list when scrolling.
  • Android Studio
    • The preview dimensions are calculated correctly in the generated code.

Alpha v0.3.09 (September 2023)

Relay v0.3.09 implements a walkthrough for creating UI packages using the Figma plugin, and adds support for packaging multiple Figma components at the same time. The Figma plugin has improved performance, while the Android Studio plugin includes improvements to the mapping workflow.

This release also includes bug fixes around Figma parameters and Android Studio import and build errors.

Android Studio compatibility

  • Relay now requires Android Studio Flamingo or later. Update if you are using an earlier version.
  • Relay now requires Android Gradle plugin 8.0 or later. Follow the instructions to upgrade your Android Gradle plugin.

New features

  • There's a new instruction walkthrough in the Figma Plugin to guide you through the process of creating a UI package in your Figma file.
  • Using the Figma plugin, you can package multiple Figma components at the same time.
  • In Android Studio, developers can search for available composables to map to UI packages in the mapping dialog.
  • Developers can generate stub @Composable mapping targets for UI packages using the mapping dialog.
  • The performance of the Figma plugin has been improved. Opening the plugin or changing selections is up to 2x faster on large files.
  • The Relay Figma plugin declares its network access policy. Relay's community page reports "restricted" network access (rather than "unknown").

Bug fixes

  • Figma Plugin

    • Figma plugin correctly detects and errors if there are duplicate parameter names with different parameter types.
    • Fixed an issue where the Figma plugin would steal keyboard focus from the Figma canvas, depending on canvas selection.
  • Android Studio

    • Fixed an issue where builds were failing on Linux and macOS if the import operation happened on Windows, due to differences in path formats.
    • Fixed an issue where import would fail in Android Studio if a component had only numbers in the summary or description field.
    • Fixed an issue where an import failed in Android Studio if a component had a preview image with 0 height or width size.
    • Fixed an issue where UI packages sometimes couldn't be updated in Android Studio on Windows.
    • Fixed an issue where the Android Studio import dialog would stop responding on import when a styles translation file was provided.
    • Fixed an issue where an import failed if a value was not provided to a custom parameter for a nested component instance.

Alpha v0.3.08 (July 2023)

Relay v0.3.08 makes it even easier to work with mapped components. You can now use the Relay for Android Studio plugin UI to generate and manage mapping files in your projects. This release also includes multiple bug fixes for generated code quality and SVG rendering.

Feature Highlights

  • We've added a new dialog for generating mapping files in Android Studio. This UI makes it simple to set up and configure component mappings for UI Packages.

  • You can now create and open package mapping files from the UI Package detail view in Android Studio.

Bug Fixes

  • Figma Plugin

    • Fixed issue where duplicate layer errors were not reported correctly.
    • Added additional UI enhancements in support of Figma DevMode.
  • Android Studio

    • Fixed an issue where Relay did not build properly on Windows and Linux.
    • Fixed several issues with SVG rendering.
    • Fixed an issue where null sizes caused errors in code generation.
    • Fixed an issue where Images were not properly recognized in code generation.

Alpha 0.3.07 (June 2023)

Relay v0.3.07 implements UI support for the new Figma developer mode announced at the Figma Config Conference. This release also includes multiple bug fixes that further enhance the performance, usability, and stability of the Relay Figma plugin and Android Studio plugin.

Feature Highlights

The Figma plugin now features a developer mode user interface; this integrates directly with Figma's new developer view.

Bug Fixes

  • Figma Plugin
    • Fixed issue with improper focus after activating the "Create Relay Component" button.
    • Fixed issue that is observed when tab-navigation back to Relay heading after navigating away from it.
    • Menu popup button next to the "Property" field is now announced properly as a menu popup, as opposed to selectable text.
    • The errors and warning link now handles focus appropriately.
    • Updated error page user interface.
  • Android Studio Plugin
    • Scrollable regions have been fixed to have accessible names that clearly identify the type of content in those regions. This helps screen reader users understand if they want to interact further with that region, without actually having to navigate within it.

Alpha 0.3.06 (April 2023)

For Relay v0.3.06, we've focused on resolving performance and usability issues. Changes include UI usability features and improvements that streamline the user experience when importing UI component packages. Compose 1.2 is now the minimum required version for Relay. This change is needed to align the interpretation of line height between Figma and Compose.

Feature Highlights

We've updated the playground file in the Relay plugin for Figma with new exercises and examples to aid designers in familiarizing themselves with using Relay.

Notes

The new minimum version of Compose is now v1.2

Bug Fixes

  • Reduced incongruity of layouts between Figma and Compose due to different interpretations of line height between the two applications.
    • Relay now requires Compose 1.2 to apply this fix.
  • "Fix it" button on the Figma plugin is now properly positioned.
  • The Figma plugin now only checks for duplicate package names on the current page, not the entire Figma file.
  • Resolved issue in Figma plugin where focus does not move to the first element in the application on launch.
  • Improved tooltip accessibility for screen reader and keyboard users when importing UI packages with the Android Studio plugin.
  • Improved launch speed of Figma plugin.
  • Resolved issue with the Figma plugin's "Fix It" feature not properly addressing solid fill areas. It now takes the first color of the gradient or alternatively, black, as fallback.
  • Resolved issue where The "Import UI packages" text was not passed to screen readers.
  • Fixed edge case that caused spurious "file not found" errors during UI package import using the Android Studio plugin.
  • Fixed issue where build warnings were not displayed properly in Android Studio.

Alpha 0.3.05 (March 2023)

New Features

  • Generate mapping files
    • Developers can now right-click a UI package in Android Studio and select "Generate mapping file" to create a default mapping file. This file is a starting point which the user can edit to set up their own custom component mapping. A README.md file is also generated with instructions for how to use mapping files. If a mapping file already exists for a UI package then the context menu instead says "Open mapping file".
    • Three new custom parameter types have been added to allow mapped components to report when values change.
  • From the Issues page in the Figma plugin, designers can apply one-click fixes to a packaged component for seamless issue resolution. This release offers solutions to the following three distinct problems:
    • Replace unsupported gradients in fills with a solid fill.
    • Replace unsupported gradients in strokes with a solid fill.
    • Remove unsupported image in fill.

Bug Fixes

  • Generated code and translation issues
    • Fixed cases where Figma auto layout frames with positioned children that have opaque or translucent backgrounds would have double backgrounds.
    • Fixed issue with boolean (show/hide) component properties not being translated on component instance layers.
    • Fixed issue where tap handers would respond slowly in generated code.
    • Fixed issue where interaction handlers in nested Figma components were not properly translated.
    • Fixed issue with nested components not receiving the correct layout-related and tap handler values.
    • Fixed issue with using tap callbacks on multiple Relay components where some callbacks would be invoked with the wrong arguments.
  • Android Studio experience
    • When changes are made in styles translation files, Android Studio now rebuilds all UI packages.
    • Fixed issue where import could fail due to a missing preview image, such as when a network error occurred.
    • Relay now ignores empty ui-packages subfolders during builds.
    • Added the ui-package-resources folder to Android Studio's Android view.
  • Figma and Figma plugin experience
    • Fixed issue with components with design variants where custom parameters were not reliably be exposed.
    • Fixed issue where removing packaging in Figma plugin from components did not remove all Relay metadata.
    • Fixed issue where Figma component properties of unpackaged components were automatically shown in parent component when added to the parent component.
  • A11y improvements
    • Fixed issue where "Fetching UI Components" message during import in Android Studio was not visible to screen readers.
    • "Set Figma Access Token" dialog now returns list items when using VoiceOver.
    • Read-only input fields in the Figma plugin now have not-allowed cursors to indicate that it's non-editable.

Improvements

  • Android Studio plugin now remembers theme and style transition information, so this doesn't need to be specified on every import.
  • Improved readability of the Gradle output by outputting all messages associated with one operation together; previously, they could be interleaved with messages from other operations. In addition, the default logging level is now INFO instead of LIFECYCLE.
  • Generated composable functions now contain default values for all parameters.

Alpha 0.3.04 (February 2023)

New Features

  • The "Share with developer" page in Figma plugin was revamped to allow you to search for any blocking issues on your packaged components. If everything checks out, then you can save a new entry in the version history from the plugin UI without any hassle! See the Share UI Packages page for more details
  • Relay now supports Figma component properties. Figma component properties are very similar to Relay parameters; Relay now recognizes component properties as their parameter equivalent where applicable, and has expanded support for component properties for cases where no equivalent parameter exists. See our Figma component properties documentation for more details.
  • Conflicting imports in Relay's implementation are now resolved, so Jetpack Compose applications can now use both Relay and Material 3 in the same project.

Bug Fixes

  • Improved the performance of the Figma for Relay plugin on large Figma documents.
  • Long layer names correctly wraps in the Relay for Figma plugin.
  • Several accessibility fixes have been applied to the Android Studio plugin:
  • Persistent labels are now added to Android Studio import dialog.
  • A11y labels have been added to banner and component images in the Android Studio import dialog.
  • Fixed the translation of text content containing dollar signs. Previously, this would cause a build error.
  • Fixed an issue with fetching a remote component without a named version: If a remote component has no named version, the latest remote component is fetched.
  • Fixed the translation of components whose top-level layers are set to auto layout with an absolute positioned child. This would previously cause import or build errors.
  • Custom parameters allows "Type" to be edited instead of "Properties" (since custom parameters are not associated with a layer property).
  • Fixed issue in Figma UI representing deeply nested components with children parameters.
  • Fixed issue where deeply nested components with children parameters may fail to import.

Alpha 0.3.02 (December 2022)

Bug Fixes

  • Autolayout frames with positioned children are now handled correctly when set to "hug".
  • Autolayout frames with positioned children are now handled correctly at the root of a component.

Alpha 0.3.01 (November 2022)

Android Studio plugin is now supported on Android Studio Electric Eel.

Bug Fixes

  • Windows: style mapping files can now be located on different drives than Android Studio. This previously blocked the import operation.
  • The Create UI Package button is now only enabled when a single valid UI package is selected in the Figma plugin.
  • Users using larger font sizes (For example, 16+ in AppleSystemUIFont) now no longer see text that is cut off in the Settings dialog of the Android Studio plugin.
  • The Import UI Packages menu item in Android Studio is now always enabled, unless your project has more than one module and either no file is selected or the selected file is not in any module.
  • The Figma plugin now correctly handles adding parameters to a component that uses variants and contains multiple instances of child components.

Alpha 0.3.00 (October 2022)

Android Developer Summit Alpha launch