Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
51b166b
.fig fixtures
softmarshmallow Dec 3, 2025
6a9252b
bump api
softmarshmallow Dec 3, 2025
dc44326
build profile
softmarshmallow Dec 3, 2025
ec18e4b
ref: add fig kiwi
softmarshmallow Dec 4, 2025
f745804
wg: docs
softmarshmallow Dec 4, 2025
237e748
add pbdump
softmarshmallow Dec 4, 2025
f44afe4
fig clipboard fixtures
softmarshmallow Dec 4, 2025
09a04ff
produce fig.kiwi.d.ts
softmarshmallow Dec 4, 2025
d2efa2b
add fig-kiwi
softmarshmallow Dec 4, 2025
c0d2faa
blob parser impl
softmarshmallow Dec 4, 2025
14a0a4a
Add Figma clipboard support to Grida canvas editor
softmarshmallow Dec 4, 2025
424bd18
effects
softmarshmallow Dec 4, 2025
2d22b31
no transform
softmarshmallow Dec 4, 2025
670b612
traits
softmarshmallow Dec 4, 2025
f90fe7f
lfs workflow
softmarshmallow Dec 4, 2025
0516cd3
kiwi traits & user docs
softmarshmallow Dec 4, 2025
67b9f51
svg text paste
softmarshmallow Dec 4, 2025
799f010
doc: how to get fig file
softmarshmallow Dec 5, 2025
7b889ef
chore: fix sidebar hierarchy scroll
softmarshmallow Dec 5, 2025
3673069
feat: enhance fig-kiwi parser with inner files
softmarshmallow Dec 5, 2025
e3c0c93
update dropdown-menu
softmarshmallow Dec 5, 2025
0c5a2d1
chore
softmarshmallow Dec 5, 2025
875dc1e
fixtures and docs
softmarshmallow Dec 6, 2025
eb23908
kiwi frame => group inference
softmarshmallow Dec 6, 2025
01a15f8
feat: add Figma and Grida file import dialogs with enhanced functiona…
softmarshmallow Dec 6, 2025
62d8bfa
Merge branch 'main' of https://github.com/gridaco/grida into canary
softmarshmallow Dec 6, 2025
ef64afe
feat: implement image import functionality with file picker support
softmarshmallow Dec 7, 2025
4d59775
chore: ux
softmarshmallow Dec 7, 2025
ae0019f
chore
softmarshmallow Dec 7, 2025
f1ffa9d
feat: update Kiwi schema documentation with detailed node types and p…
softmarshmallow Dec 7, 2025
aa83732
shadcn@latest add empty
softmarshmallow Dec 7, 2025
7da836a
feat: add Figma .fig file parser and viewer tool with clipboard support
softmarshmallow Dec 7, 2025
53794ee
mv
softmarshmallow Dec 7, 2025
dfede21
chore
softmarshmallow Dec 7, 2025
a4b18c4
chore: sitemap & icon
softmarshmallow Dec 7, 2025
a393720
chore
softmarshmallow Dec 7, 2025
7fb53cb
feat: enhance file type validation and provide user guidance for .fig…
softmarshmallow Dec 7, 2025
0c17a42
chore
softmarshmallow Dec 7, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/workflows/test-crates.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
lfs: true

- name: Free up disk space
run: |
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ jobs:
steps:
- name: Checkout Repository
uses: actions/checkout@v4
with:
lfs: true
- name: Setup pnpm
uses: pnpm/action-setup@v4
- name: Setup Node.js
Expand All @@ -25,4 +27,3 @@ jobs:
run: pnpm turbo build --filter='./packages/*'
- name: Run Tests
run: pnpm turbo test --filter='!./crates/*'

42 changes: 40 additions & 2 deletions .ref/figma/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,42 @@
# Figma typings reference

- https://github.com/figma/plugin-typings/blob/master/plugin-api.d.ts
- https://github.com/figma/rest-api-spec/blob/main/dist/api_types.ts
| Type | Source | Description | Last Updated |
| ---------- | ------------------------------- | ------------------------------------------ | ------------ |
| Plugin API | [plugin-api.d.ts][plugin-types] | Official Figma Plugin API type definitions | 2025-06-07 |
| REST API | [api_types.ts][rest-types] | Official Figma REST API type definitions | 2025-06-07 |

## .fig File Format - Kiwi Schema

The `.fig` file format uses Kiwi, a schema-based binary encoding protocol. We maintain an extracted schema definition and custom tooling to work with it.

| File | Description | Last Updated |
| ----------------- | -------------------------------------------------- | ------------ |
| [fig.kiwi][] | Extracted Kiwi schema definition for .fig format | 2025-12-04 |
| [fig.kiwi.d.ts][] | TypeScript type definitions for .fig format | 2025-12-04 |
| [fig2kiwi.ts][] | Deno script to extract Kiwi schema from .fig files | 2025-12-04 |

### Schema Extraction

The schema files are extracted using `fig2kiwi.ts`, a standalone Deno script that:

1. Parses `.fig` files (handles both raw archives and ZIP-wrapped files)
2. Extracts the schema from the first chunk
3. Converts it to human-readable Kiwi schema format
4. Generates TypeScript type definitions

**Usage:**

```bash
# Generates fig.kiwi and fig.kiwi.d.ts
deno run --allow-read --allow-write --allow-net fig2kiwi.ts <input.fig> [output-name]

# Example with custom name
deno run --allow-read --allow-write --allow-net fig2kiwi.ts file.fig schema
# Outputs: schema.kiwi and schema.kiwi.d.ts
```

[plugin-types]: https://github.com/figma/plugin-typings/blob/master/plugin-api.d.ts
[rest-types]: https://github.com/figma/rest-api-spec/blob/main/dist/api_types.ts
[fig.kiwi]: ./fig.kiwi
[fig.kiwi.d.ts]: ./fig.kiwi.d.ts
[fig2kiwi.ts]: ./fig2kiwi.ts
Loading
Loading