PHPackages                             mariohamann/statamic-figma-assets - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. mariohamann/statamic-figma-assets

ActiveStatamic-addon

mariohamann/statamic-figma-assets
=================================

A Statamic addon to import assets from Figma.

v1.2.0(1y ago)3326↓66.7%MITPHP

Since Apr 19Pushed 1y ago1 watchersCompare

[ Source](https://github.com/mariohamann/statamic-figma-assets)[ Packagist](https://packagist.org/packages/mariohamann/statamic-figma-assets)[ Docs](https://github.com/mariohamann/statamic-figma-assets)[ RSS](/packages/mariohamann-statamic-figma-assets/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (4)Dependencies (2)Versions (6)Used By (0)

Statamic Figma Assets
=====================

[](#statamic-figma-assets)

> Statamic Figma Assets is an addon that allows you to import assets from Figma into your Statamic site.

Features
--------

[](#features)

- 🎨 **Import** icons, illustrations, photos, and other assets from Figma
- 🗂️ **Flexible configuration** for asset container, format, size, and more
- 🔄 **"Smart" Importing** – import all assets or only new ones
- 🏎️ **Optimized performance** with batched generation pooled downloads
- 🛠️ **Transformers** for fine-grained filtering and naming of assets
- ♾️ **Unlimited configurations** for multiple Figma files, asset containers, formats etc.

Setup
-----

[](#setup)

You can install this addon via Composer:

```
composer require mariohamann/statamic-figma-assets
```

Once installed, head over to `Utilities > Figma Assets` in the Statamic control panel to start importing.

Configuration
-------------

[](#configuration)

### Quick setup (via .env)

[](#quick-setup-via-env)

If you're fine with using the defaults, it's enough to set some configuration values in your `.env` file, for example:

```
FIGMA_TOKEN=fig_token-here
FIGMA_FILE_ID=file-id-here
FIGMA_PAGE_TITLE="🎉 Assets"
FIGMA_FRAME_TITLE="Components"
FIGMA_ASSETS_CONTAINER="assets"
FIGMA_FORMAT="svg"
FIGMA_SCALE=1
FIGMA_EXPORT_CHILDREN=true
FIGMA_OPTIMIZE_VARIANT_NAMES=true
FIGMA_BATCH_SIZE=100
FIGMA_DOWNLOAD_BATCH_SIZE=15
```

### Advanced setup

[](#advanced-setup)

For more advanced configuration and multiple configurations, you can publish the config file:

```
php artisan vendor:publish --provider="MarioHamann\StatamicFigmaAssets\ServiceProvider" --tag="config"
```

This will create a `config/statamic-figma-assets.php` file where you can set the default values for the addon.

From there, you can define multiple configurations and tweak every option to your needs.

### Example configuration

[](#example-configuration)

```
return [
    [
        'title' => 'SVG Icons',
        'token' => env('FIGMA_TOKEN'),
        'file_id' => env('FIGMA_FILE_ID'),
        'page_title' => 'Marketing Assets',
        'frame_title' => 'Logos',
        'assets_container' => 'assets',
        'format' => 'svg',
        'scale' => 1,
        'export_children' => true,
        'optimize_variant_names' => true,
        'assets_transformer' => null,
        'figma_batch_size' => 100,
        'download_batch_size' => 15,
    ]
    // ... more configurations
]
```

### Example `assets_transformer`

[](#example-assets_transformer)

The `assets_transformer` is a callable that allows you to filter and rename assets before they are fetched from Figma. It receives the asset data as an array and should return the modified data.

Here's an example that filters out assets starting with an underscore (e. g. `_icon` or `icons/_icon`):

```
return [
    [
        // ... other configuration options
        'assets_transformer' => function ($assets) {
            $assets = array_filter(
                $assets,
                fn($asset) => !preg_match('/(^_|\/_)/', $asset['name'])
            );
            return $assets;
        },
    ],
];
```

### Example `before_upload`

[](#example-before_upload)

The `before_upload` callback allows you to modify the asset before it is uploaded to the Statamic assets container. This can be useful for optimizing images or performing other transformations.

Here we're using it to optimize SVG files using SVGO. If you want to use this, ensure to use the correct path to SVGO (e. g. via `which svgo`).

```
return [
    [
        // ... other configuration options
        'before_upload' => function ($path) {
            exec("~/Library/pnpm/svgo $path");
            return $path;
        },
    ],
];
```

###  Health Score

30

—

LowBetter than 65% of packages

Maintenance48

Moderate activity, may be stable

Popularity17

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity41

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

5

Last Release

384d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/6780bbe98e3d42fd1809b256affd8ef43e92a5e959394c153b4492f6536b8ca2?d=identicon)[mariohamann](/maintainers/mariohamann)

---

Top Contributors

[![mariohamann](https://avatars.githubusercontent.com/u/26542182?v=4)](https://github.com/mariohamann "mariohamann (5 commits)")

---

Tags

assetsaddonstatamicfigma

### Embed Badge

![Health badge](/badges/mariohamann-statamic-figma-assets/health.svg)

```
[![Health](https://phpackages.com/badges/mariohamann-statamic-figma-assets/health.svg)](https://phpackages.com/packages/mariohamann-statamic-figma-assets)
```

###  Alternatives

[visuellverstehen/statamic-classify

A useful helper to add CSS classes to all HTML tags generated by the bard editor.

20116.8k](/packages/visuellverstehen-statamic-classify)[marcorieser/statamic-livewire

A Laravel Livewire integration for Statamic.

2381.5k10](/packages/marcorieser-statamic-livewire)[withcandour/aardvark-seo

Save time and get your Statamic site to rank better with the SEO addon for Statamic.

13128.3k](/packages/withcandour-aardvark-seo)[marcorieser/statamic-live-search

A Statamic Live Search realized with Laravel Livewire.

2210.5k](/packages/marcorieser-statamic-live-search)[visuellverstehen/statamic-picturesque

A Statamic tag for building HTML-only responsive images.

1016.9k](/packages/visuellverstehen-statamic-picturesque)[justkidding96/aardvark-seo

Save time and get your Statamic site to rank better with the SEO addon for Statamic.

141.6k](/packages/justkidding96-aardvark-seo)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
