What’s working and what’s missing in Penpot plugins?

We are looking for feedback on Penpot’s plugin system.

Plugins are still at an early stage in Penpot, and we want to make sure the direction we take reflects the needs of the community.

If you have built a plugin:
• How did you find the development process?
• Were the documentation, APIs, and tools sufficient?
• What improvements would make plugin development more effective?

If you have used plugins:
• Which plugins have been most useful in your work?
• How was the experience of finding, installing, and using them?
• What kinds of plugins would you like to see in the future?

For everyone:
• How important do you think plugins should be in Penpot’s future?
• Should they remain as optional extras or become a central way to adapt workflows?

We encourage you to share your thoughts and experiences in detail. Your input will guide how the plugin ecosystem develops.

5 Likes

Hi!

Here are some ideas and thoughts:

  • Some plugins are no longer maintained and no longer work.
  • Plugin management in the Penpot interface is a bit cumbersome: they’re all in one place, and there’s no search box or system for grouping them by specific criteria.
  • It would be nice to be able to have multiple plugin windows open at the same time.

I’ve only listed a few issues (…a falling tree makes more noise than a growing forest!), but overall they’ve solved a lot of problems. Thanks!

1 Like

I’d love it if installed plugins were ordered by mostly recently used at the top. Some of the plugins I use the most are ones I installed early-on, and I have to scroll to the end of the list every time! (Be sure I have a lot of plugins installed :sweat_smile: )

2 Likes

Hello Penpot Team!

Such a great topic because my plugin has been added to the Penpot catalog! (I still need to patch it during this soft launch.)

I spent several weeks porting a complex plugin already on Figma, but I got to cover 100% of the features, so thanks a lot for your hard work, especially your plugin API, that almost replicates those from Figma (needless to learn again) :raising_hands:

However, I would like to give you some pain points I have struggled with.

API docs

  • The docs could add more details on how to use methods, with clear guardrails. For example, openUrl cannot open an external link, and seems to be a property of a node object.

  • The difference between the penpot and the context object is not clear.

  • There is a lack of guidance on how to handle colors or texts library, how to create and structure elements on the canvas, how to handle user preferences, etc.

  • I really struggled with the flex property of a Board node because I did not call it after rendering. Fortunately, I found a topic on this forum that helped me understand how to tweak the flex properties. A guide would be super helpful!

  • penpot.context.deletePluginData() does not exist, but I have found a workaround: set ''

  • Sometime, the docs are a bit hard to scan :laughing:

Runtime

  • I tried to invoke penpot.ui or penpot.selection on the inspector tool, but I cannot access it even if the plugin is open.

  • There is an exception with penpot.context.getSharedPluginData(namespace) => it returns an error.

  • penpot.localStorage.removeItem() does not seem to work.

  • penpot.selection.insertChild(0, child) inserts the child at the bottom of the list instead of the top.

  • It is surprising to not disable the window resizing with penpot.ui.open or set a min and max width and height. Because you can shrink the window to 100px (ever less) :laughing:

Bug reporting

The documentation is not clear on how to report a bug related to a plugin development. I have found this repository and it seems to be the right place. But would you accept bug reporting on this forum?
Regarding the previous section, should I report those bugs on the repo’s issues?

Submission

  • I wonder if a plugin is related to a Penpot account, because I just provided a URL and an email (different from my account).

  • I did not receive a notification when the plugin was published, so I discovered it by taking a look at the catalog.

  • I expected that the text in the description field would be used in the plugin description and not the use cases. I thought the use cases field would have been useful for the Penpot Team :laughing:

  • How to update the description or the cover of a submitted plugin? I did not see anything useful, except contacting the Penpot support :face_savoring_food:

Distribution

  • It would be interesting to access the catalog from a document, to pick and test a plugin directly in the document.

  • It would be interesting to give support to a plugin (comment, like, rating, etc.).

That’s a lot of feedback! I hope I have well-formatted my thoughts.
Cheers!

4 Likes

Hello there!

@carolina.portugal, I would like to ask you how I could update a plugin description or cover. Should I contact the support team for this kind of issue?

You can send the request to paula.tienza@penpot.app

1 Like