< BLOG >

From No-Code to Figma plugin: Can a product designer create with AI tools?

01/03/2025Mateusz Kruhlik
No code figma plugin

As a product designer, I have always been fascinated by creating tools that streamline work and bring order to the chaos of the development process. However, there was one skill I lacked: coding. Writing even a single line of JavaScript seemed as challenging as mastering a new language overnight. Until recently, I thought it was impossible. After all, to start coding, you need to learn the basics, understand the syntax, and choose the right language among many available options. Yet, I am here to share the story of how I created my first Figma plugin – Summary Sprint – thanks to the support of large language models (LLMs), such as Cloude Sonnet 3.5 and ChatGPT. This plugin simplifies sprint planning by automatically summarizing task points, eliminating the need for manual calculations or external tools.

Where did the idea come from?

In our team, we spend Friday afternoons wrapping up weekly sprints. In theory, all tasks should be completed by then. In practice, Fridays often involve grouping “stray” tasks, extending our meetings. Counting points, grouping tasks, and summarizing progress is crucial – it helps verify our actions and better plan the next sprint. However, counting points can be tedious. Tasks pile up, sticky notes multiply, and you drown in manual calculations, trying not to make mistakes, especially with a large number of tasks. It was clear this process could be automated. Our team needed a solution, and as someone without coding skills, I had to find a way to implement it. So, let’s begin our experiment: Creating a plugin using Cloude and “gpts”.

How was the plugin created?

I started by studying Figma’s documentation on widgets and plugins, then “fed” it to two models: Cloude Sonnet 3.5 and ChatGPT, providing them with the necessary technical context. Additionally, ChatGPT offered something I called “gpts” – specialized roles assigned through tailored prompts and data (e.g., from PDFs or notes). This allowed me to assign different specialties within ChatGPT:

  • One “gpts” for breaking down the plugin’s functionality into smaller elements.
  • Another “gpts” for supporting implementation and debugging. This enabled me to first divide the plugin into smaller modules, which Cloude Sonnet 3.5 could then build step by step. Another “gpts” helped solve code issues.

Questions asked during the process

Try it yourself with the prompt below :)

You are Developer GPT, a professional programming assistant who helps UX/UI
designers in writing code for plugins and widgets for Figma. You are an expert
in writing clean, efficient code for figma plugin and providing implementation
advice. Occasionally, you also offer UX/UI tips when relevant.

GOAL: Today, you will become my virtual programming assistant. Your task is to
help me write code for a plugin by offering suggestions, solutions, and code
examples. You will be responsible for supporting me in implementation and
providing practical advice.

CRITERIA FOR THE BEST PROGRAMMING ASSISTANT:

- You are specific and practical.
- You avoid generalities and lengthy sentences.
- You help me in writing code by providing examples and explanations.
- You suggest better solutions in terms of implementation and code optimization.
- Occasionally, you provide UX/UI advice when it's pertinent.
- You make task execution easier for me, knowing that I might not be an expert
  in programming.
- You assist me with valuable tips and comprehensive checklists.

STRUCTURE OF OUR SESSION:

- I will set the context of our work. I will choose one challenge to focus on.
  You will generate specific solutions or code snippets/whole code to solve it.
  You will give me a practical action plan with key steps and code if necessary.
- You will share best practices and common mistakes to help me with the
  implementation.

FORMAT OF OUR INTERACTION:

- I will inform you when we can proceed to the next step. Do not move forward
  without my command.
- You will rely on the context of this session at every stage.

INFORMATION ABOUT ME:

- My project: I am creating plugins for Figma that streamline designers
  workflows. We are building a sprint summary tool in Figjam.
- My value proposition: Figjam users can work more efficiently and creatively
  thanks to these tools.
- My target audience: people using Figjam who are looking for tools to
  facilitate their workflow and sprints.
- My current stage: I have several ideas and prototypes but need help refining
  them and effectively implementing the code.

Cloude Sonnet 3.5: My Code Whisperer

Cloude Sonnet 3.5 became my primary tool for generating base code. It allowed me to focus on what I do best – designing user experiences and defining the plugin’s purpose – while the model handled the programming logic. Initially, I tried to generate the entire plugin in one go, but this approach didn’t work well. After several failed attempts, I decided to adopt an iterative approach, using a “gpts” assistant to break the work into smaller, manageable steps. This iterative process included tasks such as:

  • Supporting various estimation methods (Fibonacci, hours, custom values).
  • Extracting point values assigned to sticky notes.
  • Automatically summing points and grouping tasks.
  • Adding exceptions, error messages, and visual markers for unplanned tasks.

Debugging the generated code

ChatGPT and “gpts”: My Debugging Assistant

Once I had the initial code, I encountered a problem: the plugin interface wouldn’t load. This is where another “gpts,” specialized in debugging, stepped in. Using tailored prompts and code snippets, it helped me quickly achieve:

  • Guidance on adding logs and error messages to pinpoint issues.
  • Support in refining how the plugin identifies and sums points.
  • Improvement of methods for identifying tasks and sections.

Planning work with ChatGPT

ChatGPT, with the help of “gpts,” not only provided solutions but also explained why they worked. This allowed me to think more like a developer – even if only temporarily.

What can the plugin do?

After numerous tests and improvements, Summary Sprint was born. Here are its key features:

  • Automatic Sprint Summaries: Instantly generates summaries of planned, completed, and uncompleted tasks in FigJam, without manual calculations or external tools.
  • Color-coded distinction between planned and unplanned tasks: The plugin identifies unplanned tasks, which is particularly useful during retrospectives.
  • Flexible Task Estimation: Whether your team uses Fibonacci points, hourly estimates, or custom values, the plugin adapts. There are no limits on the number of tasks or team members.
  • Exceptions for Notes and Error Messages: The ability to add neutral sticky notes for ideas, notes, or blockers without affecting sprint metrics, as well as displaying error or informational messages about the plugin’s actions.

Code snippet example

Key takeaways

Designers Don’t Need to Code from Scratch: With tools like Cloude Sonnet 3.5, ChatGPT, and “gpts,” non-technical individuals can create valuable tools. The key is to take an iterative approach, start with an MVP, and focus on user needs.

The Power of Clear Feedback: During Figma’s review process, it became clear that the plugin “never loads” if the user doesn’t select a section. I added a simple message: “No section selected. Please group tasks into a section to proceed.” A minor adjustment, but a significant improvement in usability.

One Step Away from Error: The plugin went through dozens of iterations during development. A “fatal error” was always a possibility. LLMs serve as mentors, advisors, and brainstorming assistants, but they need to be managed consciously. They’re tools, not automatic solutions to every problem.

What’s next?

The plugin is now available in the Figma community, along with materials demonstrating how it works. Every change I made was just one step away from non-functioning code – polishing the plugin’s appearance took almost as much time as developing a single feature. Complex, heavy programming tasks are something I’ll still leave to my experienced team, who can handle any problem. However, as someone who has been designing interfaces for years, it was nice to create something on my own. (Sorry, AI, for taking all the credit!)

AI tools allow us to push beyond our limitations. You don’t have to be an engineer to create something valuable – all you need is the right mindset, knowledge, and tools, including specially adapted “gpts”.

Let’s Talk

Feel free to ask ask something, I will be happy to share my experience :)

At Blues Brackets we solve real business challenges with the latest and proven technology.

Let’s talk

<mail>hello@bluesbrackets.com
<phone>+48 535 462 678

Let’s meet

Kraków, PolandWrocław, PolandWarszawa, Poland

Contact

Blues Brackets sp. z o. o.NIP 8842824071REGON 527681035