figspec

Unofficial static Figma frame/file viewer available as HTML CustomElement

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
# @figspec/components

CustomElements renders given Figma API's result into a rich preview.

## Installation

```sh
$ yarn add @figspec/components

# or

$ npm i @figspec/components
```

## Usage

Import the entry script (`import '@figspec/components'`) and it'll register our custom elements.
Then you can now use these on your page.

```js
// your script.js
import "@figspec/components";

// ...
```

```html
<body>
  <figspec-viewer nodes="..." rendered-image="..." />
</body>
```

To see examples and API docs, please check out [Storybook](https://figspec.netlify.app/?path=/docs/components-figspec-viewer--defaults).

NOTE: We don't provide bundled scripts yet. If you want to put the script in head tag, please build the files at your own.

## TypeScript support

This package ships with TypeScript definition file.

One of our "typing dependencies" is missing from `package.json#dependencies`, because it's not our "runtime dependency".
So, you need to install that package in order to get full types (otherwise some properties turns into `any`).

```sh
# By installing this package, FileNode related properties will get correct types.
yarn add -D figma-js
```

## Browser supports

Browsers supporting WebComponents v1 spec and ES2015 or later.
The bundled codes are emitted under `esm/es2015` and `cjs/es2016`.