{"id":16328980,"url":"https://github.com/penpot/penpot-exporter-figma-plugin","last_synced_at":"2026-01-30T17:02:16.576Z","repository":{"id":61260118,"uuid":"549635541","full_name":"penpot/penpot-exporter-figma-plugin","owner":"penpot","description":"Penpot exporter Figma plugin","archived":false,"fork":false,"pushed_at":"2026-01-23T12:18:25.000Z","size":12342,"stargazers_count":375,"open_issues_count":9,"forks_count":42,"subscribers_count":13,"default_branch":"main","last_synced_at":"2026-01-24T02:09:04.736Z","etag":null,"topics":["design-tools","exporter","figma-plugin","penpot"],"latest_commit_sha":null,"homepage":"https://www.figma.com/community/plugin/1219369440655168734/penpot-exporter","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/penpot.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-10-11T13:51:16.000Z","updated_at":"2026-01-23T12:18:28.000Z","dependencies_parsed_at":"2023-02-16T05:31:28.364Z","dependency_job_id":"b72bb5cc-fa88-4b54-bcb9-6d11566f5fb0","html_url":"https://github.com/penpot/penpot-exporter-figma-plugin","commit_stats":null,"previous_names":[],"tags_count":45,"template":false,"template_full_name":null,"purl":"pkg:github/penpot/penpot-exporter-figma-plugin","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/penpot%2Fpenpot-exporter-figma-plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/penpot%2Fpenpot-exporter-figma-plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/penpot%2Fpenpot-exporter-figma-plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/penpot%2Fpenpot-exporter-figma-plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/penpot","download_url":"https://codeload.github.com/penpot/penpot-exporter-figma-plugin/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/penpot%2Fpenpot-exporter-figma-plugin/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28915942,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-30T16:37:38.804Z","status":"ssl_error","status_checked_at":"2026-01-30T16:37:37.878Z","response_time":66,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["design-tools","exporter","figma-plugin","penpot"],"created_at":"2024-10-10T23:14:37.914Z","updated_at":"2026-01-30T17:02:16.560Z","avatar_url":"https://github.com/penpot.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"\u003cimg src=\"resources/penpot-exporter.jpeg\" alt=\"Penpot Exporter\"\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://www.mozilla.org/en-US/MPL/2.0\" rel=\"nofollow\"\u003e\u003cimg alt=\"License: MPL-2.0\" src=\"https://img.shields.io/badge/MPL-2.0-blue.svg\" style=\"max-width:100%;\"\u003e\u003c/a\u003e\n    \u003ca href=\"https://github.com/orgs/penpot/projects/1\" rel=\"nofollow\"\u003e\u003cimg alt=\"Managed with GitHub Projects\" src=\"https://img.shields.io/badge/managed_with-Github_Projects-blue\"  style=\"max-width:100%;\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://penpot.app/\"\u003e\u003cb\u003ePenpot Website\u003c/b\u003e\u003c/a\u003e •\n    \u003ca href=\"https://community.penpot.app/t/figma-to-penpot-export-plugin/5554\"\u003e\u003cb\u003eExport Figma to Penpot (Penpot community)\u003c/b\u003e\u003c/a\u003e •\n    \u003ca href=\"https://community.penpot.app/\"\u003e\u003cb\u003ePenpot Community\u003c/b\u003e\u003c/a\u003e •\n    \u003ca href=\"https://www.figma.com/community/plugin/1219369440655168734/penpot-exporter\"\u003e\u003cb\u003ePlugin in Figma community\u003c/b\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cbr /\u003e\n\n[Penpot Exporter video](https://github.com/penpot/penpot-exporter-figma-plugin/assets/165997885/44208d17-1ca0-4fe8-a541-4e68a24ee554)\n\n\u003cbr /\u003e\n\n## Table of contents\n\n- [Table of contents](#table-of-contents)\n- [Why a Penpot exporter](#why-a-penpot-exporter)\n- [Getting started](#getting-started)\n  - [Pre-requisites](#pre-requisites)\n  - [Building](#building)\n  - [Add to Figma](#add-to-figma)\n  - [To use the plugin](#to-use-the-plugin)\n- [Call to the community](#call-to-the-community)\n- [What can this plugin currently import?](#what-can-this-plugin-currently-import)\n- [Limitations](#limitations)\n- [Contributing](#contributing)\n- [License](#license)\n\n## Why a Penpot exporter\n\nThe aim of this plugin is to help people migrate their files from Figma\nto [Penpot](https://penpot.app/). Migrating work from one design tool to another was never an easy\ntask due to the abundance of closed and non-standard formats, and this is not a different case. Our\napproach to better solve this situation is to build a Figma plugin that can convert a Figma file\ninto a .zip file that can be imported to Penpot.\n\nThere is a sense of urgency for this capability because there is a feeling that Adobe might force\nFigma to limit exports and interoperability via plugins very soon.\n\n## Getting started\n\nThis plugin makes use of npm, webpack and react, and is written on TypeScript. It also includes a\nPenpot file builder library.\n\n### Pre-requisites\n\nTo use this plugin, you will need to have `node` and `npm` installed on your computer. If you don't\nalready have these, you can download and install them from the official website\n([https://nodejs.org/en/](https://nodejs.org/en/)).\n\nOnce you have `node` and `npm` installed, you will need to download the source code for this plugin.\nYou can do this by clicking the \"Clone or download\" button on the GitHub page for this project and\nthen selecting \"Download ZIP\". Extract the ZIP file to a location on your computer.\n\n### Building\n\n#### For Windows users:\n\n1.  Open the terminal by searching for \"Command Prompt\" in the start menu.\n2.  Use the `cd` command to navigate to the folder where the repository has been extracted. For\n    example, if the repository is located in the `Downloads` folder, you can use the following\n    command: `cd Downloads/penpot-exporter-figma-plugin`.\n3.  Once you are in the correct folder, you can run the `npm install` command to install the\n    dependencies, and then the `npm run build` command to build the plugin.\n\n#### For Mac users:\n\n1.  Open the terminal by searching for \"Terminal\" in the Launchpad or by using the `Command + Space`\n    keyboard shortcut and searching for \"Terminal\".\n2.  Use the `cd` command to navigate to the folder where the repository has been extracted. For\n    example, if the repository is located in the `Downloads` folder, you can use the following\n    command: `cd Downloads/penpot-exporter-figma-plugin`.\n3.  Once you are in the correct folder, you can run the `npm install` command to install the\n    dependencies, and then the `npm run build` command to build the plugin.\n\n#### For Linux users:\n\n1.  Open the terminal by using the `Ctrl + Alt + T` keyboard shortcut.\n2.  Use the `cd` command to navigate to the folder where the repository has been extracted. For\n    example, if the repository is located in the `Downloads` folder, you can use the following\n    command: `cd Downloads/penpot-exporter-figma-plugin`.\n3.  Once you are in the correct folder, you can run the `npm install` command to install the\n    dependencies, and then the `npm run build` command to build the plugin.\n\n#### Building for production:\n\nFollow the same steps as above, but instead of running `npm run build`, run `npm run build:prod`.\n\n### Add to Figma\n\n`Figma menu` \u003e `Plugins` \u003e `Development` \u003e `Import plugin from manifest…` To add the plugin to\nFigma, open Figma and go to the `Plugins` menu. Select `Development` and then choose\n`Import plugin from manifest…`.\n\n\u003cimg src=\"resources/import-plugin-from-manifest.png\" alt='Screenshot of the Plugins \u003e Development menus open showing the, \"Import plugin from manifest\" option.'\u003e\n\nSelect the `manifest.json` file that is located in the folder where you extracted the source code\nfor the plugin.\n\n### To use the plugin\n\n1. `Open a Figma file` \u003e `Figma top toolbar` \u003e `Resources` \u003e `Plugins` \u003e search for\n   `Penpot Exporter` \u003e `Select the plugin` \u003e `Export your file`.\n   \u003cimg width=\"421\" alt=\"Screenshot 2024-06-26 at 08 51 49\" src=\"https://github.com/penpot/penpot-exporter-figma-plugin/assets/165997885/c50ad95d-2ebc-41dc-a62d-3f901612bdd3\"\u003e\n\n2. A `.zip file` will be generated that you can `import into Penpot`.\n3. `Open Penpot` \u003e `Select the projects or drafts menu` (three dots on the right side) \u003e\n   `Select Import Penpot files` \u003e `Select the exported .zip file` \u003e `Open the file` and continue\n   your work in Penpot 🥳\n   ![Untitled](https://github.com/penpot/penpot-exporter-figma-plugin/assets/165997885/3dc1bd1e-1f59-4069-b3a5-90e024ffc806)\n\nVisit the \u003ca href=\"https://github.com/penpot/penpot-exporter-figma-plugin/wiki\"\u003e\u003cb\u003ePenpot Exporter\nWik\u003c/b\u003e\u003c/a\u003e to learn more about how to use the plug-in.\n\n## Call to the community\n\nAnswering to the interest expressed by community members to build the plugin by themselves, we're\nopening the door for anyone interested to jump in and contribute.\n\nWe'd love your help! 🤗\n\nFor more details on this initiative, we've shared our approach in a\n[community post](https://community.penpot.app/t/figma-file-importer/1684) and provided updates in\nanother [community post](https://community.penpot.app/t/figma-to-penpot-export-plugin/5554). Feel\nfree to join the conversation!\n\n## What can this plugin currently import?\n\nThings that are currently included in the import are:\n\n- **Basic shapes** (Rectangles, Ellipses, Stars and Polygons)\n- **Vectors, Lines and Arrows**\n- **Frames and Sections** (Boards in Penpot)\n- **Groups and Boolean groups**\n- **Masks**\n- **Texts** (you can upload your own fonts too)\n- **All basic shapes properties** (fills, visibility, strokes, corner radius, shadows, rotations,\n  effects, etc...)\n- **Components, Components sets and Component instances**\n- **Auto Layouts**\n- **Color and Typography libraries**\n- **Variants**\n- **ExternalLibraries** (mantaining links between your files and the design system or libraries in\n  your Penpot file)\n\n## Limitations\n\nSince the objective of the plug-in is to enable seamless file exports from Figma to Penpot. A key\npart of this goal is to support exporting large files, making **performance a primary challenge**.\nThe exportation process requires comprehensive navigation through all nodes in a Figma file, and\ncurrently we’re facing some limitation with the Figma API to solve this.\n\nAnother obvious limitations are the features that are in Figma but not in Penpot or work differently\nin both tools so they can not be easily converted, consequently, some features may not look exactly\nthe same. Additionally, **prototyping settings are currently not supported** in the export/import\nprocess of files.\n\n## Contributing\n\nIf you want to make many people very happy and help us continue to build this Figma plugin, for\ninstance, it would be interesting to add:\n\n- Performance optimization\n- Prototyping interactions and flows\n\nMotivated to contribute? Take a look at\nour [Contributing Guide](https://help.penpot.app/contributing-guide/) that explains our guidelines\n(they're for the Penpot Core, but are mostly of application here too).\n\n## License\n\n```\nThis Source Code Form is subject to the terms of the Mozilla Public\nLicense, v. 2.0. If a copy of the MPL was not distributed with this\nfile, You can obtain one at http://mozilla.org/MPL/2.0/.\n\nCopyright (c) KALEIDOS INC\n```\n\nPenpot and the Penpot exporter plugin are Kaleidos’\n[open source projects](https://kaleidos.net/products)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpenpot%2Fpenpot-exporter-figma-plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpenpot%2Fpenpot-exporter-figma-plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpenpot%2Fpenpot-exporter-figma-plugin/lists"}