Search packages, repositories and app categories

GitHub repositoryamatkivskiy/figma-frame-inspector

figma-frame-inspector

A Flutter plugin to verify how accurately the Figma frame was implemented in the app.

figma-frame-inspector project cover
Stars
6
Forks
2
Last push (UTC)
Jul 8, 2023
Project status
Active

Original README

English project snapshot. Visit GitHub for the latest content.

Figma Frame Inspector

Pub Version

A Flutter plugin to verify how accurately the Figma frame was implemented in the app (whether paddings and elements sizes are correct).

With this tool any developer can verify all the paddings, font styles and elements sizes matches design specification in Figma.

recording

How it works

This plugin provides FigmaFrameInspector widget that renders provided Figma frame on top of child screen widget. This helps to check proper frame implementation.

PS: Example Figma frame was taken from here

Implementation Figma Diff

Installation

flutter pub add figma_frame_inspector

Usage

Get Figma Personal Access Token
  • In Figma go to Account -> Personal Access Tokens
  • Generate a new token
Get Figma Frame URL
  • In Figma open design file
  • On the left side in Layers section select a frame that you need to verify
  • Copy the URL of the frame

figma-copy-frame

Integration
  • import 'package:figma_frame_inspector/figma_frame_inspector.dart';
  • Wrap your app with FigmaFrameInspector widget:
class MyHomePage extends StatelessWidget {
  const MyHomePage({Key? key, required this.title}) : super(key: key);

  final String title;

  @override
  Widget build(BuildContext context) {
    return FigmaFrameInspector( // <-- Wrap your screen widget with this widget.
      frameUrl:
          "<figma-frame-url>", // <-- Specify the Figma frame url. Looks like this: https://www.figma.com/file/<file_key>/<file_name >?node-id=<node_id>
      figmaToken: '<figma-token>', // <-- Specify the Figma `Personal access token` from Account Settings page.
      // Optional parameters:
      scale: 3, // A number between `0.01` and `4`, the image scaling factor.
      initialOpacity: .3, // Opacity of the frame on the screen start (default `30%`).
      enabled: true, // Enable or disable the frame overlay (default `true`).
      isTouchToChangeOpacityEnabled: true, // Enable or disable vertical scroll to change the frame overlay opacity (default `true`).
      child: Scaffold(
        appBar: AppBar(
          title: Text(title),
        ),
        floatingActionButton: const FloatingActionButton(
          onPressed: null,
          tooltip: 'Increment',
          child: Icon(Icons.add),
        ),
      ),
    );
  }
}

Credits

This plugin was heavily inspired by flutter_figma_preview

Figma sample design taken from here https://www.figma.com/community/file/1060856334579637757

License

Can be found here.

Andrii Matkivskyi GitHub avatar
GitHub author

Andrii Matkivskyi ↗

Valtech_UkraineOfficial website ↗
LanguagesDartRubySwiftKotlinObjective-C

Packages published by this repository

Dependencies used

Dependency list 5 items

How do I choose a repository?

Start with your use case, compare repository activity, and check the original project before adopting it.

  1. Search by repository name, owner or description, then narrow the results by topic.
  2. Compare stars, forks and recent pushes. Stars show community interest, not a guarantee of quality.
  3. Read the README, license and issues on GitHub before using a project.

Sources and maintenance

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗