From e8cea17d44e73fb1c97e9145c608da5c13701193 Mon Sep 17 00:00:00 2001 From: anil-wm Date: Thu, 23 Jul 2026 12:12:11 +0530 Subject: [PATCH 01/16] Add release notes for WM-AI 1.0.0_BETA_RC7 --- .../version-1-0-x/1.0.0-beta.mdx | 22 +++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx index 18fc625..a2444a3 100644 --- a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx +++ b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx @@ -13,6 +13,28 @@ WaveMaker announces the release of WaveMaker AI 1.0.0 Beta. This release is inte For details about the technology stack upgrades, refer to [Technology Stack](/tech-stack). +## 1.0.0-BETA-RC7 + +*Release date: 27 July 2026* + + + + + + + + + + + + + + + + + + + ## 1.0.0-BETA-RC6 *Release date: 13 July 2026* From a4362d2f29a5f1001cd1f9c9f0a00407fa78b0ff Mon Sep 17 00:00:00 2001 From: "@pavan.dussa" Date: Fri, 24 Jul 2026 16:01:37 +0530 Subject: [PATCH 02/16] Added rc7 AIRA release notes --- .../release-version-1/version-1-0-x/1.0.0-beta.mdx | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx index a2444a3..2b665a7 100644 --- a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx +++ b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx @@ -19,7 +19,15 @@ For details about the technology stack upgrades, refer to [Technology Stack](/te - + + - ### Cancel a Conversation in AIRA + + The AIRA will complete the task already in progress, then stop. Any file changes made during this request will be undone, and the new conversation will continue from previous message state. + + - ### Edit a Conversation in AIRA + + Editing a prompt starts a new request from that point. Any messages and file changes made from the edited prompt are automatically reverted, and the conversation continues using your updated prompt. + From ce54a4f093dab3c50883db94f713c0c38b963bb0 Mon Sep 17 00:00:00 2001 From: pronoy-roy-wm Date: Fri, 24 Jul 2026 16:24:02 +0530 Subject: [PATCH 03/16] Updated Design guidelines and a new Annotation Glossary for users using the design to code 2.0 plugin --- .../annotation-glossary.md | 305 ++++++++++++++++++ .../assets/img/frame-naming-diagram.svg | 42 +++ .../hidden-elements-page-bounds-diagram.svg | 123 +++++++ .../assets/img/images-as-fills-diagram.svg | 37 +++ .../assets/img/semantic-grouping-diagram.svg | 48 +++ .../design-guidelines.md | 85 ++--- package-lock.json | 93 +----- sidebar/sidebars/designSystemSidebar.js | 1 + 8 files changed, 599 insertions(+), 135 deletions(-) create mode 100644 docs/design-system/figma-design-to-code-plugin/annotation-glossary.md create mode 100644 docs/design-system/figma-design-to-code-plugin/assets/img/frame-naming-diagram.svg create mode 100644 docs/design-system/figma-design-to-code-plugin/assets/img/hidden-elements-page-bounds-diagram.svg create mode 100644 docs/design-system/figma-design-to-code-plugin/assets/img/images-as-fills-diagram.svg create mode 100644 docs/design-system/figma-design-to-code-plugin/assets/img/semantic-grouping-diagram.svg diff --git a/docs/design-system/figma-design-to-code-plugin/annotation-glossary.md b/docs/design-system/figma-design-to-code-plugin/annotation-glossary.md new file mode 100644 index 0000000..047931a --- /dev/null +++ b/docs/design-system/figma-design-to-code-plugin/annotation-glossary.md @@ -0,0 +1,305 @@ +--- +id: annotation-glossary +title: Annotation Glossary for the Design to Code Plugin +sidebar_label: Annotation Glossary +last_update: { author: "WaveMaker" } +--- + +--- + +A guide for designers to annotate Figma screens for the AutoCode plugin. Annotate the smallest node that visually matches the widget. Skip anything you're not sure about. + +## Contents + +1. [Inputs & Controls](#inputs--controls) +2. [Navigation](#navigation) +3. [Layout & Content](#layout--content) +4. [Media & Misc](#media--misc) +5. [Common mistakes](#common-mistakes) + +## Inputs & Controls + +### Button + +A clickable action element. Includes labelled buttons AND icon-only buttons. + +- **Tag the outer clickable frame.** + - **Bare text link with no wrapper frame** (header/footer link) — tag the TEXT node itself. No Button label child needed. + - **Bare icon with no wrapper frame** (standalone icon-only button) — tag the icon node itself. No Button icon child needed. +- **Never a raster image inside.** If the visual is a photo/illustration, it's not a button — leave it or tag as **Image**. +- **At most one text node.** Two texts (title + subtitle) means it's not a button — probably a card. + +Children to tag inside: + +| Child | When | +| ------------ | -------------------------------------------------------- | +| Button label | TEXT — the button's caption. Skip for icon-only buttons. | +| Button icon | Vector icon inside the button. | + +### Checkbox + +- Annotate **every** visible checkbox — including "unchecked" states. + +| Child | Required | What | +| ---------------- | -------- | ---------------------------------------------------------------- | +| Checkbox label | Yes | TEXT beside the box. | +| Checkbox control | Yes | The checkbox control — the square area (with or without a tick). | +| Checkbox icon | No | The tick glyph, if it's a separate node inside the plate. | + +### Toggle + +- Tag **only the pill control**, not a wider row that pairs it with a label. +- The label beside a toggle is free-floating text — leave it un-annotated. + +| Child | When | +| ----------- | ------------------------------- | +| Toggle icon | Optional icon inside the thumb. | + +### Text field + +Single- or multi-line text input. + +- Tag the **outer wrapper frame** that visually bundles the input box together with its label and any supporting text — the whole text-field component. If there is no wrapper and the input box is standalone, tag the input box frame itself. + +| Child | Required | What | +| ---------------------- | -------- | ----------------------------------------------------- | +| Text field input | Yes | The FRAME that visually is the input box. | +| Top label | No | Text ABOVE the input, as a separate element. | +| Floating label | No | Text sitting ON/INSIDE the border. | +| Text field placeholder | No | Hint / current value text inside the box (TEXT only). | +| Helper text | No | Helper text below the input (TEXT only). | +| Text field icon | No | Leading or trailing icon in or beside the input. | + +### Dropdown + +Select / combobox. **Only tag as Dropdown if a chevron icon is visible.** No chevron — tag as **Text field** instead. + +| Child | What | +| ------------------------- | ----------------------------------------- | +| Dropdown input | The FRAME that visually is the input box. | +| Dropdown label (top) | Label ABOVE the input. | +| Dropdown label (floating) | Label inside/overlapping the input. | +| Dropdown placeholder | "Select…" hint inside the box. | + +### Date picker + +Text field with a calendar affordance. + +| Child | What | +| ----------------- | -------------------- | +| Date picker label | The floating label. | +| Date picker input | The input box FRAME. | + +### Search + +Text input **prefixed with a magnifying-glass icon**. + +| Child | What | +| ------------------ | ------------------------ | +| Search placeholder | Placeholder text inside. | + +### Radio group + +Group of radio circles where exactly one is selected. Each option is **just a circle + one label**. + +- If options look like cards (border, fill, shadow, extra text), it's **not** a Radio group — use **Card list** instead. + +| Child | Required | What | +| --------------------- | -------- | ---------------------------------------------------- | +| Radio item | Yes | Every unselected option (frame with circle + label). | +| Radio item (selected) | No | The one selected option. | +| Radio circle | Yes | The visible ○ / ● circle inside an item. | +| Radio label | Yes | The TEXT label inside an item. | + +### Slider + +Track with one or two draggable thumbs. No children to annotate. + +### Progress bar + +A horizontal filled bar showing percent (loading, progress). **Not** for stepper tracks or numbered steps. + +### Segmented button + +Horizontally joined toggle segments acting as a single picker (like a filter chip strip). + +- Use for **tab-shaped wizards / steppers** — a strip of tab-like steps that progress through a flow. +- Use for **tab strips whose header row has non-tab siblings** — e.g. the strip sits alongside a page title, action buttons, or search inside the same frame (not just a content pane). +- If the strip is a pure tab bar with only a content pane as its sibling, use **Tab** instead. + +| Child | Required | What | +| ----------------------- | -------- | ------------------------------------------------------------ | +| Segment item | Yes | Every unselected segment. | +| Segment item (selected) | No | The selected segment (exactly one). | +| Segment label | No | TEXT inside a segment (add on all segments if using labels). | +| Segment icon | No | Icon inside a segment (add on all segments if using icons). | + +## Navigation + +### Page header *(web)* + +The top strip of the page containing logo/title + nav + actions/avatar. + +- **Exactly one** per section. +- After tagging the header, keep annotating buttons, search, avatar, etc. **inside** it — treat the interior as normal. + +### Tab *(web)* + +Horizontal strip of tab headers where one is active. + +- Tag the **narrow strip-only** frame. +- **Never** tag a frame that wraps both the tab strip AND the content area below. +- If the strip sits inside a header alongside a title or action button (no content frame as its sibling), use **Segmented button** instead. + +| Child | Required | What | +| ------------------- | -------- | ----------------------------- | +| Tab item | Yes | Every unselected tab. | +| Tab item (selected) | No | The active tab (exactly one). | +| Tab label | No | Tab caption TEXT. | +| Tab icon | No | Icon inside a tab. | + +### Tab content pane *(web)* + +The pane content shown below the tab strip. Tag the outermost container that holds all the pane content, even if it contains other tagged widgets inside. + +### Bottom nav *(mobile)* + +Mobile bottom bar — persistent strip of icon/label tabs at the bottom. + +| Child | Required | What | +| -------------------------- | -------- | -------------------------- | +| Bottom nav item | Yes | Every unselected tab cell. | +| Bottom nav item (selected) | No | The active tab cell. | +| Bottom nav item label | No | Tab TEXT. | +| Bottom nav item icon | No | Tab icon. | + +### Bottom nav wrapper *(mobile)* + +The outer FRAME around a Bottom nav that gives it its floating look (extra padding, rounded outer corners, shadow). + +:::warning +**Required for floating bottom bars.** If the Bottom nav visually floats above the content — rounded corners, drop shadow, side insets — you must annotate this wrapper. Without it, the bar renders flush against the screen edges and loses the floating appearance. +::: + +Skip only when the bar sits fully flush with the screen edges (no wrapper, no insets, no shadow). + +### Left nav (rail) *(web)* + +**Narrow** vertical nav — icons stacked above labels, everything center-aligned. + +### Left nav (drawer) *(web)* + +**Wide** vertical nav — icons beside labels, items left-aligned. + +Both share children: + +| Child | Required | What | +| ----------------------- | -------- | ---------------------------------------- | +| Nav item | Yes | Every unselected nav entry. | +| Nav item (selected) | No | The active nav entry. | +| Nav item label | No | TEXT inside an item. | +| Nav item icon | No | Icon inside an item. | +| Nav logo | No | Brand logo at the top. | +| Nav button | No | Standalone action button inside the nav. | +| Nav button label / icon | No | Its label / icon. | + +### Breadcrumb *(web)* + +Chain of clickable path segments joined by `>`, `/`, or arrows. + +| Child | What | +| ---------------- | ------------------------ | +| Breadcrumb item | Container for one crumb. | +| Breadcrumb label | TEXT inside a crumb. | +| Breadcrumb icon | Icon inside a crumb. | + +## Layout & Content + +### Data table *(web)* + +A grid: header row + data rows + optional pagination/search. + +**When to tag the root frame as Data table:** only when that frame's children are **just** the header, rows, and optional pagination/search. If the frame also holds a detail panel, edit form, empty-state art, action bar, or ANY other content, **don't tag the root** — annotate only the inner nodes below and the tooling assembles the table from them. + +| Child | Repeats | What | +| ----------------------- | ------- | -------------------------------------------------------------------------------------------------------------------------- | +| Table column header | Yes | Each column header cell. Tag the frame OR a bare TEXT header. Skip checkbox headers. | +| Table select-all header | No | The "select all" header cell (top-left, if present). | +| Table row | Yes | Each data row frame. | +| Table cell | Yes | Every plain text data cell. If it's an avatar+text cell, ALSO tag the avatar inside as Table cell avatar (first row only). | +| Table cell avatar | No | Avatar image inside an avatar+label cell — **first row only**. | +| Table cell (badge) | Yes | Cell containing a colored badge/chip. Use instead of Table cell. | +| Table cell (button) | Yes | Cell containing an action button. Use instead of Table cell. | +| Table cell (toggle) | Yes | Cell containing a toggle. Use instead of Table cell. | +| Table pagination | No | The pagination control frame. | + +:::tip +Wrap the header row and data rows in a single, meaningfully named parent frame (e.g. "Data Table") instead of leaving them as loose siblings. See [Semantic Grouping](./design-guidelines.md#semantic-grouping) in the design guidelines for why this matters. +::: + +### List + +**Vertical** list — items stacked top-to-bottom. + +- Tag the **outer wrapper frame** that contains all the items. Every direct child frame is treated as one repeating item automatically — no per-item annotation needed. +- Use when the wrapper has 3+ equal-width child frames stacked vertically. + +:::tip +Group the repeating item frames under one meaningfully named parent frame rather than leaving them as loose siblings. See [Semantic Grouping](./design-guidelines.md#semantic-grouping) in the design guidelines for why this matters. +::: + +### Card list + +**Horizontal / grid** list — items laid out left-to-right, may wrap. + +- Tag the **outer wrapper frame** that contains all the cards. Every direct child frame is treated as one repeating card automatically — no per-card annotation needed. +- Use when the wrapper has 2+ equal-height child frames arranged horizontally or in a grid. + +:::tip +Group the repeating card frames under one meaningfully named parent frame rather than leaving them as loose siblings. See [Semantic Grouping](./design-guidelines.md#semantic-grouping) in the design guidelines for why this matters. +::: + +### Form + +Container grouping input widgets (Text field, Dropdown, etc.). No children — the inner widgets are annotated independently. + +## Media & Misc + +### Icon + +Standalone icon glyph (vector shapes). + +- Tag the **smallest frame/group/instance** that contains all vectors of the glyph. +- **Never** tag an individual vector when it has vector siblings that are part of the same glyph. + +### Image + +Standalone raster/bitmap image (photo, illustration). + +- Use when the node is visibly a photo or lossy bitmap, not a clean vector glyph. Use for hero sections also. + +### Avatar + +User avatar — a **circular** frame containing at most a monogram or icon. + +- Tag the smallest circular avatar disc. +- **Never** tag a wider "user chip" that includes the name TEXT. + +| Child | What | +| ----------- | ------------------------------------- | +| Avatar text | Single monogram TEXT inside the disc. | +| Avatar icon | Icon inside the disc. | + +### Divider + +Thin horizontal or vertical rule separating content. No children. + +## Common mistakes + +- **Tagging a card as Button** — a card has multiple text nodes (title + description). Only tag as Button if there's one text (or none, for icon-only). +- **Tagging a container that includes extra content** — e.g., annotating the whole Data table / List / Tab wrapper when it also has a header, action bar, or unrelated frames alongside. Tag only the inner nodes in that case. +- **Tagging a user chip as Avatar** — Avatar is only the circular avatar disc. The name beside it stays un-annotated. +- **Tagging a bitmap as Icon or Button icon** — those are for vectors only. Photos/illustrations go under Image. +- **Skipping some checkboxes / text fields** — always tag EVERY visible instance of the same widget type on screen. Don't tag one and skip another. +- **Confusing Tab with Segmented button** — if the strip has a large content pane as a sibling below/beside it, it's Tab. If it's a compact filter strip inside a header with no content pane, it's Segmented button. +- **Missing Text field input** — the input box FRAME is mandatory on every Text field. Never tag a TEXT node as Text field input. diff --git a/docs/design-system/figma-design-to-code-plugin/assets/img/frame-naming-diagram.svg b/docs/design-system/figma-design-to-code-plugin/assets/img/frame-naming-diagram.svg new file mode 100644 index 0000000..64d1455 --- /dev/null +++ b/docs/design-system/figma-design-to-code-plugin/assets/img/frame-naming-diagram.svg @@ -0,0 +1,42 @@ + + + + Incorrect + Correct + + + + + 1Header + + + + $Section! + + + + 2ndRow + + + + Starts with a number or symbol — + breaks CSS class/id naming rules + + + + + header + + + + section + + + + second-row + + + + Starts with a letter; hyphen/underscore + used for spaces + diff --git a/docs/design-system/figma-design-to-code-plugin/assets/img/hidden-elements-page-bounds-diagram.svg b/docs/design-system/figma-design-to-code-plugin/assets/img/hidden-elements-page-bounds-diagram.svg new file mode 100644 index 0000000..e7711b3 --- /dev/null +++ b/docs/design-system/figma-design-to-code-plugin/assets/img/hidden-elements-page-bounds-diagram.svg @@ -0,0 +1,123 @@ + + + + Incorrect + Correct + + + + Page bounds + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + List items below the page bounds + are hidden and fail to export + + + + Page bounds (increased) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Increasing the page height includes + every list item for export + diff --git a/docs/design-system/figma-design-to-code-plugin/assets/img/images-as-fills-diagram.svg b/docs/design-system/figma-design-to-code-plugin/assets/img/images-as-fills-diagram.svg new file mode 100644 index 0000000..7e22837 --- /dev/null +++ b/docs/design-system/figma-design-to-code-plugin/assets/img/images-as-fills-diagram.svg @@ -0,0 +1,37 @@ + + + + + Incorrect + + + + Frame + + + Image (Component) + + + + + + + + + Extra component layer wraps the image + + + Correct + + + + Frame — Fill: Image + + + + + + + + Image applied directly as the frame's fill + diff --git a/docs/design-system/figma-design-to-code-plugin/assets/img/semantic-grouping-diagram.svg b/docs/design-system/figma-design-to-code-plugin/assets/img/semantic-grouping-diagram.svg new file mode 100644 index 0000000..64a366f --- /dev/null +++ b/docs/design-system/figma-design-to-code-plugin/assets/img/semantic-grouping-diagram.svg @@ -0,0 +1,48 @@ + + + + Incorrect + Correct + + + + + Screen (frame) + + + + flat siblings + + + Header Row + + + Cell Row + + + Footer (unrelated) + + Header Row and Cell Row sit as flat siblings + alongside an unrelated Footer — no semantic unit + + + + Screen (frame) + + + + Data Table + + + Header Row + + + Cell Row + + + + Footer + + A new Data Table frame groups the related rows; + Footer remains a sibling outside it + diff --git a/docs/design-system/figma-design-to-code-plugin/design-guidelines.md b/docs/design-system/figma-design-to-code-plugin/design-guidelines.md index ead5f00..c8ce3f3 100644 --- a/docs/design-system/figma-design-to-code-plugin/design-guidelines.md +++ b/docs/design-system/figma-design-to-code-plugin/design-guidelines.md @@ -1,101 +1,78 @@ --- -id: design-guidelines -title: Creating Design to Code-Friendly Designs in Figma -sidebar_label: Design Guideline +id: design-guidelines +title: Creating Design to Code-Friendly Designs in Figma +sidebar_label: Design Guideline last_update: { author: "WaveMaker" } --- --- -When designing in Figma for the WaveMaker Design to Code plugin, following these guidelines will help ensure that the generated code accurately reflects the design. Keeping these points in mind will lead to an expected output with minimal adjustments in the development phase. +When designing in Figma for the WaveMaker Design to Code plugin, following these guidelines will help ensure that the generated code accurately reflects the design, reducing the number of manual adjustments needed in the development phase. ## Proper Use of Auto Layout -Auto Layout organizes elements into responsive hierarchies, ensuring better behavior during conversion. This is especially important in complex designs. To simplify this process, try Figma’s [Suggest Auto Layout](https://help.figma.com/hc/en-us/articles/5731482952599-Add-auto-layout-to-a-design#suggest) feature. - -The image below shows where to find Figma Auto Layout. If it's not there, search the help menu for Auto Layout and select Add Auto Layout. +Auto Layout organizes elements into responsive hierarchies, ensuring better behavior during conversion. This is especially important in complex designs. To simplify this process, try Figma's [Suggest Auto Layout](https://help.figma.com/hc/en-us/articles/5731482952599-Add-auto-layout-to-a-design#suggest) feature. If Auto Layout isn't already applied, you can find it in the Figma toolbar shown below, or by searching the help menu for "Auto Layout." ![finding auto layout in figma canvas](./assets/img/find_autolayout.png) -Below are some of the suggestions on using auto layout. +Below are some suggestions on using auto layout: -- When a child element needs to match the width of its parent frame, set its width to "Fill". Example: In the image below, the Text Field width is set to "Fill," ensuring it occupies the entire width of the parent frame (blue border). +- When a child element needs to match the width of its parent frame, set its width to "Fill." Fixed widths are treated as fixed sizes and will not adjust to different screen sizes. For any extra space around the element, use the padding feature in Figma. ![fill width example](./assets/img/form_fill_width.png) -Fixed widths are treated as fixed sizes and will not adjust to different screen sizes. - -For any extra space around the element, please use the padding feature from figma. - -- For certain elements on a page, height and width are dynamically calculated based on the screen resolution. This applies to components like navigation bars, containers holding lists of cards, etc. Since these containers adapt to screen size, the gap between their child elements cannot be fixed and should be set to **Auto** instead. The image below illustrates this scenario. +- For elements whose height and width are dynamically calculated based on screen resolution (such as navigation bars or containers holding lists of cards), set the gap between child elements to **Auto** instead of a fixed value. A fixed gap will be treated as intentional spacing and maintained regardless of screen size when converting to code. ![gap auto width example](./assets/img/auto_exmpl.png) -A fixed gap will be considered as intentional spacing and will be maintained regardless of screen size when converting to code. - -- If the parent frame has only one child frame, set the child layout to either center-center or top-center. This ensures proper alignment and structure. The examples below highlight child frames (pink border) aligned in the center within parent frames (blue border). - -![examples of single child alignment inside frame with auto layout](./assets/img/one_child.png) - -![prefered alignments for single child frames](./assets/img/alignment_center_top.png) - -## Preserve UI Kit Component Structure and Naming - -Avoid modifying the structure or name of components in a UI kit, as these changes can lead to issues during code generation. If a component’s structure is altered, the plugin may still recognize it, but the corresponding code will not be generated. - -## Instance Properties - -Ensure instance properties are applied at the correct level in the tree structure, not just at the top level. -For example, in the first image below, the background color is applied at the topmost layer of the Tab Component instance. However, in the original UI kit, it should be applied at the second layer (State Layer), as shown in the second image. - -![example of incorrect application of instance property](./assets/img/properties_wrong_border.png) - -![example of correct application of instance property](./assets/img/properties_right_border.png) +- The use of hug, fill, min and max width and height is highly encouraged as they will make your design and code outputs truly responsive. ## Avoid Unnecessary Children -Minimize nested frames or groups whenever possible. For example: Instead of adding a rectangle inside a frame for background image, directly apply it to the frame itself. +Minimize nested frames or groups whenever possible. For example, instead of adding a rectangle inside a frame to hold a background image, apply the image directly to the frame's Fill property. + +**Incorrect** — a separate rectangle inside the frame holds the background image: ![example of unnecessary child element](./assets/img/nested_child_wrong.png) -![example of how to avoid unnecessary child element](./assets/img/nested_child_right.png) +**Correct** — the background image is applied directly to the frame's Fill property: -In the first image above, notice the Fill property of the frame—no background is applied directly to it. Instead, a separate rectangle inside the frame holds the background image, which is incorrect.In the second image, the Fill property of the selected frame directly contains the background image, which is the correct approach. This ensures a cleaner structure and proper rendering in the generated code. +![example of how to avoid unnecessary child element](./assets/img/nested_child_right.png) As a rule of thumb, if you're creating a unit solely to add a single property, try applying that property to the parent element instead. ## Images as Fills -Do not turn images into components. Instead, use images as fills inside frames or rectangles. - -## Vectors for Icons Only - -Use vectors exclusively for icons and avoid using them for other design elements. If you are using vectors, ensure they are flattened into a single shape to prevent rendering issues. - -## Logos +Do not turn images into components. Unlike components, images aren't reused as repeatable units, so wrapping them as components misleads the plugin's understanding of what's actually repeatable and results in unnecessary frames being generated. Instead, use images as fills inside frames or rectangles. -Use images or SVGs for logos. Include the word logo in the name. If logos are components, ensure the component name also contains the word logo. - -This is important because WaveMaker projects store logos in a separate folder, and including "logo" in the name ensures they are correctly identified and placed. It also helps with better file management and organization within the project. +![diagram comparing an image wrapped as a component versus an image applied as a frame fill](./assets/img/images-as-fills-diagram.svg) ## Color Management -Use colors from local variables or local styles. Do not apply colors without first defining them in local variables or styles. +WaveMaker Design to Code strictly follows the designer's intent, and this principle extends directly to how colors are handled in the generated code. If a designer defines a color as a local variable and applies it consistently across the design, particularly within components, that variable is preserved and translated into a corresponding CSS variable in the final code. + +However, if a designer applies a color's hex code directly to a layer instead of referencing a variable, the generated code will reflect that hex code as a literal value rather than a variable. In this case, none of the benefits of using variables carry over to the output. -Always use the variables provided in the UI Kit to maintain consistency. If needed, you can modify colors in the Variables pane, ensuring a well-structured and cohesive theme. +This has two practical implications. First, supporting multiple themes (such as light and dark mode) will only work correctly for colors that were defined and applied as variables; hardcoded hex values will not respond to theme changes. Second, if you later want to update your design's color palette, colors defined as variables can be updated in a couple of clicks from the styles workspace, while hardcoded hex values must be located and replaced manually, layer by layer. ![example correct way of using colors](./assets/img/proper_use_color.png) ## Figma API Issue with Hidden Elements -If a vector, image, or logo exceeds the defined page bounds, Figma may fail to export the “hidden” element as an SVG. To resolve this, increase the page height in Figma to include the element. +If a vector, image, or logo exceeds the defined page bounds, Figma may fail to export the "hidden" element as a picture. To resolve this, increase the page height in Figma to include the element. You do not need to fix the height of the screen to show scrollability — the prototype feature of Figma works well in such a scenario. + +![diagram comparing an element clipped by page bounds versus page bounds increased to fully contain the element](./assets/img/hidden-elements-page-bounds-diagram.svg) ## Frame Naming -Avoid naming frames with numbers or special characters at the beginning. These names are used for CSS classes and ids, and CSS naming rules must be followed. For example, start frame names with letters, use hyphen `-` or underscore `_` for spaces, etc. [Learn more about CSS naming conventions](https://medium.com/free-code-camp/css-naming-conventions-that-will-save-you-hours-of-debugging-35cea737d849) +Naming frames clearly and descriptively helps both users and the AI/LLM recognize components and sections more accurately, which leads to better code output. Avoid naming frames with numbers or special characters at the beginning, since these names are used for CSS classes and ids, and CSS naming rules must be followed. Start frame names with letters, and use a hyphen `-` or underscore `_` for spaces. [Learn more about CSS naming conventions](https://medium.com/free-code-camp/css-naming-conventions-that-will-save-you-hours-of-debugging-35cea737d849). + +![diagram comparing frame names that break CSS naming rules versus valid frame names](./assets/img/frame-naming-diagram.svg) + +## Semantic Grouping -## Avoid Wrap Property in Auto Layout +When a section contains repeatable or related elements, group them under a meaningfully named parent frame rather than leaving them as loose siblings. For example, if you have a data table header row and one or more data table cell rows, wrap them together in a parent frame named something like "Data Table." This gives the AI/LLM a clear semantic unit to recognize instead of a flat list of unrelated rows. -Avoid using the Wrap property in Figma's Auto Layout. While it is supported, it can lead to inconsistent and inaccurate sizing. This happens because the Wrap property requires the parent element to have a fixed width, which prevents it from dynamically adjusting based on different screen resolutions. +This isn't strictly necessary, and the plugin can often still generate usable code without it. But semantic grouping goes a long way toward improving code quality, since it helps the plugin correctly infer the relationship between elements and generate more accurate, better-structured components. It's a small extra step in the design phase that can save significant time during development. -By following these guidelines, designers can ensure that Design to Code accurately translates their Figma designs into WaveMaker-compatible code, reducing the need for manual adjustments. +![diagram comparing loose sibling rows versus rows grouped under a meaningfully named parent frame](./assets/img/semantic-grouping-diagram.svg) diff --git a/package-lock.json b/package-lock.json index c34598d..f14cad2 100644 --- a/package-lock.json +++ b/package-lock.json @@ -179,7 +179,6 @@ "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-5.48.0.tgz", "integrity": "sha512-RB9bKgYTVUiOcEb5bOcZ169jiiVW811dCsJoLT19DcbbFmU4QaK0ghSTssij35QBQ3SCOitXOUrHcGgNVwS7sQ==", "license": "MIT", - "peer": true, "dependencies": { "@algolia/client-common": "5.48.0", "@algolia/requester-browser-xhr": "5.48.0", @@ -318,7 +317,6 @@ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", "license": "MIT", - "peer": true, "dependencies": { "@babel/code-frame": "^7.29.0", "@babel/generator": "^7.29.0", @@ -2178,7 +2176,6 @@ } ], "license": "MIT", - "peer": true, "engines": { "node": ">=18" }, @@ -2201,7 +2198,6 @@ } ], "license": "MIT", - "peer": true, "engines": { "node": ">=18" } @@ -2311,7 +2307,6 @@ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", - "peer": true, "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -2733,7 +2728,6 @@ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", - "peer": true, "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -3721,7 +3715,6 @@ "integrity": "sha512-DEVIwhbrZZ4ir31X+qQNEQqDWkgCJUV6kiPPAd2MGTY8n5/n0c4B8qA5k1ipF2izwH00JEf0h6Daaut71zzkyw==", "devOptional": true, "license": "MIT", - "peer": true, "dependencies": { "@docusaurus/types": "3.9.2", "@rspack/core": "^1.5.0", @@ -3893,7 +3886,6 @@ "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.9.2.tgz", "integrity": "sha512-C5wZsGuKTY8jEYsqdxhhFOe1ZDjH0uIYJ9T/jebHwkyxqnr4wW0jTkB72OMqNjsoQRcb0JN3PcSeTwFlVgzCZg==", "license": "MIT", - "peer": true, "dependencies": { "@docusaurus/core": "3.9.2", "@docusaurus/logger": "3.9.2", @@ -4361,7 +4353,6 @@ "version": "1.8.1", "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.8.1.tgz", "integrity": "sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==", - "dev": true, "license": "MIT", "optional": true, "dependencies": { @@ -4373,7 +4364,6 @@ "version": "1.8.1", "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.8.1.tgz", "integrity": "sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==", - "dev": true, "license": "MIT", "optional": true, "dependencies": { @@ -4384,7 +4374,6 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", "integrity": "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==", - "dev": true, "license": "MIT", "optional": true, "dependencies": { @@ -4405,13 +4394,15 @@ "version": "0.9.0", "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.9.0.tgz", "integrity": "sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==", - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/@emotion/unitless": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.10.0.tgz", "integrity": "sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==", - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/@eslint-community/eslint-utils": { "version": "4.9.1", @@ -5705,7 +5696,6 @@ "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.1.1.tgz", "integrity": "sha512-f++rKLQgUVYDAtECQ6fn/is15GkEH9+nZPM3MS0RcxVqoTfawHvDlSCH7JbMhAM6uJ32v3eXLvLmLvjGu7PTQw==", "license": "MIT", - "peer": true, "dependencies": { "@types/mdx": "^2.0.0" }, @@ -5790,7 +5780,6 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.0.7.tgz", "integrity": "sha512-SeDnOO0Tk7Okiq6DbXmmBODgOAb9dp9gjlphokTUxmt8U3liIP1ZsozBahH69j/RJv+Rfs6IwUKHTgQYJ/HBAw==", - "dev": true, "license": "MIT", "optional": true, "dependencies": { @@ -6345,7 +6334,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6359,7 +6347,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6373,7 +6360,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6387,7 +6373,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6401,7 +6386,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6415,7 +6399,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6429,7 +6412,6 @@ "cpu": [ "wasm32" ], - "dev": true, "license": "MIT", "optional": true, "dependencies": { @@ -6443,7 +6425,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6457,7 +6438,6 @@ "cpu": [ "ia32" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6471,7 +6451,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6484,7 +6463,6 @@ "integrity": "sha512-Iax6UhrfZqJajA778c1d5DBFbSIqPOSrI34kpNIiNpWd8Jq7mFIa+Z60SQb5ZQDZuUxcCZikjz5BxinFjTkg7Q==", "devOptional": true, "license": "MIT", - "peer": true, "dependencies": { "@module-federation/runtime-tools": "0.22.0", "@rspack/binding": "1.7.6", @@ -6718,7 +6696,6 @@ "resolved": "https://registry.npmjs.org/@svgr/core/-/core-8.1.0.tgz", "integrity": "sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==", "license": "MIT", - "peer": true, "dependencies": { "@babel/core": "^7.21.3", "@svgr/babel-preset": "8.1.0", @@ -6824,7 +6801,6 @@ "devOptional": true, "hasInstallScript": true, "license": "Apache-2.0", - "peer": true, "dependencies": { "@swc/counter": "^0.1.3", "@swc/types": "^0.1.25" @@ -6864,7 +6840,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -6881,7 +6856,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -6898,7 +6872,6 @@ "cpu": [ "arm" ], - "dev": true, "license": "Apache-2.0", "optional": true, "os": [ @@ -6915,7 +6888,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -6932,7 +6904,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -6949,7 +6920,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -6966,7 +6936,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -6983,7 +6952,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7000,7 +6968,6 @@ "cpu": [ "ia32" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7017,7 +6984,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7066,7 +7032,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7083,7 +7048,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7100,7 +7064,6 @@ "cpu": [ "arm" ], - "dev": true, "license": "Apache-2.0", "optional": true, "os": [ @@ -7117,7 +7080,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7134,7 +7096,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7151,7 +7112,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7168,7 +7128,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7185,7 +7144,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7202,7 +7160,6 @@ "cpu": [ "ia32" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7219,7 +7176,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7264,7 +7220,6 @@ "version": "0.10.1", "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", - "dev": true, "license": "MIT", "optional": true, "dependencies": { @@ -7797,7 +7752,6 @@ "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.14.tgz", "integrity": "sha512-ilcTH/UniCkMdtexkoCN0bI7pMcJDvmQFPvuPvmEaYA/NSfFTAgdUSLAoVjaRJm7+6PvcM+q1zYOwS4wTYMF9w==", "license": "MIT", - "peer": true, "dependencies": { "csstype": "^3.2.2" } @@ -7908,7 +7862,8 @@ "version": "4.2.7", "resolved": "https://registry.npmjs.org/@types/stylis/-/stylis-4.2.7.tgz", "integrity": "sha512-VgDNokpBoKF+wrdvhAAfS55OMQpL6QRglwTwNC3kIgBrzZxA4WsFj+2eLfEA/uMUDzBcEhYmjSbwQakn/i3ajA==", - "license": "MIT" + "license": "MIT", + "peer": true }, "node_modules/@types/supports-color": { "version": "8.1.3", @@ -8274,7 +8229,6 @@ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "license": "MIT", - "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -8351,7 +8305,6 @@ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "license": "MIT", - "peer": true, "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -8416,7 +8369,6 @@ "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-5.48.0.tgz", "integrity": "sha512-aD8EQC6KEman6/S79FtPdQmB7D4af/etcRL/KwiKFKgAE62iU8c5PeEQvpvIcBPurC3O/4Lj78nOl7ZcoazqSw==", "license": "MIT", - "peer": true, "dependencies": { "@algolia/abtesting": "1.14.0", "@algolia/client-abtesting": "5.48.0", @@ -8966,7 +8918,6 @@ } ], "license": "MIT", - "peer": true, "dependencies": { "baseline-browser-mapping": "^2.9.0", "caniuse-lite": "^1.0.30001759", @@ -9136,6 +9087,7 @@ "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==", "license": "MIT", + "peer": true, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -9990,7 +9942,6 @@ "integrity": "sha512-zpEHTy1fjTMZCKLHUZoVeylt9XrzaIN2rbPXEt0k+q7JE5CkCZdo6bNq55bn24a69CH7ErAVLKijxJja4fw+UQ==", "hasInstallScript": true, "license": "MIT", - "peer": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/core-js" @@ -10145,6 +10096,7 @@ "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==", "license": "ISC", + "peer": true, "engines": { "node": ">=4" } @@ -10215,7 +10167,6 @@ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", - "peer": true, "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -10346,6 +10297,7 @@ "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", "license": "MIT", + "peer": true, "dependencies": { "camelize": "^1.0.0", "css-color-keywords": "^1.0.0", @@ -10546,7 +10498,6 @@ "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.33.1.tgz", "integrity": "sha512-iJc4TwyANnOGR1OmWhsS9ayRS3s+XQ185FmuHObThD+5AeJCakAAbWv8KimMTt08xCCLNgneQwFp+JRJOr9qGQ==", "license": "MIT", - "peer": true, "engines": { "node": ">=0.10" } @@ -10968,7 +10919,6 @@ "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", "license": "ISC", - "peer": true, "engines": { "node": ">=12" } @@ -11707,7 +11657,6 @@ "integrity": "sha512-O0piBKY36YSJhlFSG8p9VUdPV/SxxS4FYDWVpr/9GJuMaepzwlf4J8I4ov1b+ySQfDTPhc3DtLaxcT1fN0yqCg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.8.0", "@eslint-community/regexpp": "^4.12.2", @@ -14526,7 +14475,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14547,7 +14495,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14568,7 +14515,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14589,7 +14535,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14610,7 +14555,6 @@ "cpu": [ "arm" ], - "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14631,7 +14575,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14652,7 +14595,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14673,7 +14615,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14694,7 +14635,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14715,7 +14655,6 @@ "cpu": [ "arm64" ], - "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14736,7 +14675,6 @@ "cpu": [ "x64" ], - "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -18846,7 +18784,6 @@ } ], "license": "MIT", - "peer": true, "dependencies": { "nanoid": "^3.3.11", "picocolors": "^1.1.1", @@ -19750,7 +19687,6 @@ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", - "peer": true, "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -20636,7 +20572,6 @@ "resolved": "https://registry.npmjs.org/react/-/react-19.2.4.tgz", "integrity": "sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ==", "license": "MIT", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -20646,7 +20581,6 @@ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.4.tgz", "integrity": "sha512-AXJdLo8kgMbimY95O2aKQqsz2iWi9jMgKJhRBAxECE4IFxfcazB2LmzloIoibJI3C12IlY20+KFaLv+71bUJeQ==", "license": "MIT", - "peer": true, "dependencies": { "scheduler": "^0.27.0" }, @@ -20702,7 +20636,6 @@ "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-6.0.0.tgz", "integrity": "sha512-YMMxTUQV/QFSnbgrP3tjDzLHRg7vsbMn8e9HAa8o/1iXoiomo48b7sk/kkmWEuWNDPJVlKSJRB6Y2fHqdJk+SQ==", "license": "MIT", - "peer": true, "dependencies": { "@types/react": "*" }, @@ -20758,7 +20691,6 @@ "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz", "integrity": "sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==", "license": "MIT", - "peer": true, "dependencies": { "@babel/runtime": "^7.12.13", "history": "^4.9.0", @@ -21708,7 +21640,6 @@ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", "license": "MIT", - "peer": true, "dependencies": { "fast-deep-equal": "^3.1.3", "fast-uri": "^3.0.1", @@ -22723,6 +22654,7 @@ "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-6.3.9.tgz", "integrity": "sha512-J72R4ltw0UBVUlEjTzI0gg2STOqlI9JBhQOL4Dxt7aJOnnSesy0qJDn4PYfMCafk9cWOaVg129Pesl5o+DIh0Q==", "license": "MIT", + "peer": true, "dependencies": { "@emotion/is-prop-valid": "1.4.0", "@emotion/unitless": "0.10.0", @@ -22770,6 +22702,7 @@ } ], "license": "MIT", + "peer": true, "dependencies": { "nanoid": "^3.3.7", "picocolors": "^1.1.1", @@ -23147,8 +23080,7 @@ "version": "2.8.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "license": "0BSD", - "peer": true + "license": "0BSD" }, "node_modules/tsutils": { "version": "3.21.0", @@ -24116,7 +24048,6 @@ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.105.1.tgz", "integrity": "sha512-Gdj3X74CLJJ8zy4URmK42W7wTZUJrqL+z8nyGEr4dTN0kb3nVs+ZvjbTOqRYPD7qX4tUmwyHL9Q9K6T1seW6Yw==", "license": "MIT", - "peer": true, "dependencies": { "@types/eslint-scope": "^3.7.7", "@types/estree": "^1.0.8", diff --git a/sidebar/sidebars/designSystemSidebar.js b/sidebar/sidebars/designSystemSidebar.js index ea0a8e3..78963f5 100644 --- a/sidebar/sidebars/designSystemSidebar.js +++ b/sidebar/sidebars/designSystemSidebar.js @@ -15,6 +15,7 @@ export default [ items: [ 'design-system/figma-design-to-code-plugin/working-with-design-to-code-plugin', 'design-system/figma-design-to-code-plugin/design-guidelines', + 'design-system/figma-design-to-code-plugin/annotation-glossary', 'design-system/figma-design-to-code-plugin/figma-cheat-sheet', ], }, From 887688afd189cc3054a35d413ed44cd283dbc68f Mon Sep 17 00:00:00 2001 From: "@pavan.dussa" Date: Fri, 24 Jul 2026 16:33:00 +0530 Subject: [PATCH 04/16] Updated ai-chat rc7 release notes --- .../release-version-1/version-1-0-x/1.0.0-beta.mdx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx index 2b665a7..9623cd8 100644 --- a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx +++ b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx @@ -20,13 +20,13 @@ For details about the technology stack upgrades, refer to [Technology Stack](/te - - ### Cancel a Conversation in AIRA + - ### Cancel a running conversation in AI chat - The AIRA will complete the task already in progress, then stop. Any file changes made during this request will be undone, and the new conversation will continue from previous message state. + You can now cancel an AI chat conversation while it's in progress, letting the agent finish whatever it's currently doing — generating a response, running a tool, or delegating to a sub-agent — before stopping. - - ### Edit a Conversation in AIRA + - ### Edit a previously sent prompt in AI chat - Editing a prompt starts a new request from that point. Any messages and file changes made from the edited prompt are automatically reverted, and the conversation continues using your updated prompt. + You can now edit a prompt you've already sent in an AI chat conversation and resubmit it, replacing all messages, agent actions, and file changes made after that point, along with any images or chat suggestions carried over from the original prompt. From e8fd3822e08a881cef5bb3788c761f7641006afd Mon Sep 17 00:00:00 2001 From: "megha.joshi" Date: Fri, 24 Jul 2026 16:59:16 +0530 Subject: [PATCH 05/16] Add RC7 bug fix notes for form field, pagination, and accordion pane --- .../release-version-1/version-1-0-x/1.0.0-beta.mdx | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx index a2444a3..7d72133 100644 --- a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx +++ b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx @@ -27,7 +27,19 @@ For details about the technology stack upgrades, refer to [Technology Stack](/te - + + - ### Form field show property ignored via script + + Fixed the form field's `show` property not taking effect when updated from script. + + - ### Stale data shown during pagination load + + Fixed pagination briefly displaying the previous page's data alongside the loading spinner before the next page's data renders. + + - ### Accordion pane onload event not triggering + + Fixed the accordion pane's onload event not firing when its content type is set to inline. + From 13795c00b5b1206b9ca282f4133bac4d0077ae84 Mon Sep 17 00:00:00 2001 From: apitive Date: Fri, 24 Jul 2026 18:38:32 +0530 Subject: [PATCH 06/16] Added autocode bugfixes details for RC7 release --- .../release-version-1/version-1-0-x/1.0.0-beta.mdx | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx index a2444a3..2786d3f 100644 --- a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx +++ b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx @@ -31,7 +31,19 @@ For details about the technology stack upgrades, refer to [Technology Stack](/te - + + - ### Wizard pages not rendered in Autocode project preview + + Fixed an issue where Wizard pages failed to appear in the preview of Autocode projects. + + - ### Autocode sync call errors not handled + + Fixed Autocode sync call errors not being handled on both the backend and the frontend. + + - ### Autocode project landing on an Invalid Page on Launch in case of Wizards + + Fixed Autocode projects landing on an invalid page on launch when the app contains Wizards. + From 86ccfe5b11ab8259b89cbe152ff654834886c713 Mon Sep 17 00:00:00 2001 From: pronoy-roy-wm Date: Fri, 24 Jul 2026 18:55:15 +0530 Subject: [PATCH 07/16] updated names --- .../annotation-glossary.md | 2 +- .../design-guidelines.md | 24 ++++++++++++++++++- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/docs/design-system/figma-design-to-code-plugin/annotation-glossary.md b/docs/design-system/figma-design-to-code-plugin/annotation-glossary.md index 047931a..50a2468 100644 --- a/docs/design-system/figma-design-to-code-plugin/annotation-glossary.md +++ b/docs/design-system/figma-design-to-code-plugin/annotation-glossary.md @@ -2,7 +2,7 @@ id: annotation-glossary title: Annotation Glossary for the Design to Code Plugin sidebar_label: Annotation Glossary -last_update: { author: "WaveMaker" } +last_update: { author: "Mansi Raj" } --- --- diff --git a/docs/design-system/figma-design-to-code-plugin/design-guidelines.md b/docs/design-system/figma-design-to-code-plugin/design-guidelines.md index c8ce3f3..0ac5b1b 100644 --- a/docs/design-system/figma-design-to-code-plugin/design-guidelines.md +++ b/docs/design-system/figma-design-to-code-plugin/design-guidelines.md @@ -2,7 +2,7 @@ id: design-guidelines title: Creating Design to Code-Friendly Designs in Figma sidebar_label: Design Guideline -last_update: { author: "WaveMaker" } +last_update: { author: "Pronoy Roy" } --- --- @@ -76,3 +76,25 @@ When a section contains repeatable or related elements, group them under a meani This isn't strictly necessary, and the plugin can often still generate usable code without it. But semantic grouping goes a long way toward improving code quality, since it helps the plugin correctly infer the relationship between elements and generate more accurate, better-structured components. It's a small extra step in the design phase that can save significant time during development. ![diagram comparing loose sibling rows versus rows grouped under a meaningfully named parent frame](./assets/img/semantic-grouping-diagram.svg) + +## Additional Considerations + +A few more things worth knowing as you design for Design to Code. + +### Structuring Tabs + +Tabs convert most reliably when the header and content are organized with a bit of intent: + +- Keep the frame that holds the tab headers dedicated to just the tab items themselves. Mixing in other elements — a page title, an action button, a search field — inside that same frame makes it harder for the plugin to tell what's actually part of the tab strip. Isolating related elements like this is the same principle behind [Semantic Grouping](#semantic-grouping): the clearer the grouping, the clearer the signal. +- Wrap the tab header and its corresponding tab content in a single parent frame. This pairing tells the plugin exactly how the two relate, which leads to a more predictable and accurate code output. + +### Wizard Widgets + +Wizard flows are on our roadmap for the Design to Code annotation flow. Support for detecting wizards automatically isn't available yet, so wizard-style flows in your design won't be picked up during conversion for the time being. We're actively extending the underlying Wizard widget to make this possible, and this guide will be updated with full annotation guidance as soon as that support ships. + +### Widget Fidelity in Preview + +On rare occasions, a widget that's correctly detected may not behave exactly like its runtime counterpart in preview. This is almost always a sign that the widget is missing some metadata the plugin relies on, rather than an issue with detection itself — and it's easy to avoid: + +- If you're using the WaveMaker UI kit, keep the original widget's structure intact. Modifying it can strip away metadata the plugin depends on to reproduce its behavior. +- If you're using the annotation flow, make sure every child element inside an annotated widget is also annotated appropriately, following the [Annotation Glossary](./annotation-glossary.md). A fully annotated widget gives the plugin the context it needs to match runtime behavior accurately. From 7112ee123e9473d731f1d77f2ebc5204b7129e9b Mon Sep 17 00:00:00 2001 From: pronoy-roy-wm Date: Fri, 24 Jul 2026 18:56:17 +0530 Subject: [PATCH 08/16] removed extra content, pending review --- .../design-guidelines.md | 22 ------------------- 1 file changed, 22 deletions(-) diff --git a/docs/design-system/figma-design-to-code-plugin/design-guidelines.md b/docs/design-system/figma-design-to-code-plugin/design-guidelines.md index 0ac5b1b..83ea76d 100644 --- a/docs/design-system/figma-design-to-code-plugin/design-guidelines.md +++ b/docs/design-system/figma-design-to-code-plugin/design-guidelines.md @@ -76,25 +76,3 @@ When a section contains repeatable or related elements, group them under a meani This isn't strictly necessary, and the plugin can often still generate usable code without it. But semantic grouping goes a long way toward improving code quality, since it helps the plugin correctly infer the relationship between elements and generate more accurate, better-structured components. It's a small extra step in the design phase that can save significant time during development. ![diagram comparing loose sibling rows versus rows grouped under a meaningfully named parent frame](./assets/img/semantic-grouping-diagram.svg) - -## Additional Considerations - -A few more things worth knowing as you design for Design to Code. - -### Structuring Tabs - -Tabs convert most reliably when the header and content are organized with a bit of intent: - -- Keep the frame that holds the tab headers dedicated to just the tab items themselves. Mixing in other elements — a page title, an action button, a search field — inside that same frame makes it harder for the plugin to tell what's actually part of the tab strip. Isolating related elements like this is the same principle behind [Semantic Grouping](#semantic-grouping): the clearer the grouping, the clearer the signal. -- Wrap the tab header and its corresponding tab content in a single parent frame. This pairing tells the plugin exactly how the two relate, which leads to a more predictable and accurate code output. - -### Wizard Widgets - -Wizard flows are on our roadmap for the Design to Code annotation flow. Support for detecting wizards automatically isn't available yet, so wizard-style flows in your design won't be picked up during conversion for the time being. We're actively extending the underlying Wizard widget to make this possible, and this guide will be updated with full annotation guidance as soon as that support ships. - -### Widget Fidelity in Preview - -On rare occasions, a widget that's correctly detected may not behave exactly like its runtime counterpart in preview. This is almost always a sign that the widget is missing some metadata the plugin relies on, rather than an issue with detection itself — and it's easy to avoid: - -- If you're using the WaveMaker UI kit, keep the original widget's structure intact. Modifying it can strip away metadata the plugin depends on to reproduce its behavior. -- If you're using the annotation flow, make sure every child element inside an annotated widget is also annotated appropriately, following the [Annotation Glossary](./annotation-glossary.md). A fully annotated widget gives the plugin the context it needs to match runtime behavior accurately. From 73058118c4159eed4457247e0211bd1e2f43d551 Mon Sep 17 00:00:00 2001 From: Mayank Prakash Date: Fri, 24 Jul 2026 19:28:29 +0530 Subject: [PATCH 09/16] removing package-lock changes --- package-lock.json | 93 +++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 81 insertions(+), 12 deletions(-) diff --git a/package-lock.json b/package-lock.json index f14cad2..c34598d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -179,6 +179,7 @@ "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-5.48.0.tgz", "integrity": "sha512-RB9bKgYTVUiOcEb5bOcZ169jiiVW811dCsJoLT19DcbbFmU4QaK0ghSTssij35QBQ3SCOitXOUrHcGgNVwS7sQ==", "license": "MIT", + "peer": true, "dependencies": { "@algolia/client-common": "5.48.0", "@algolia/requester-browser-xhr": "5.48.0", @@ -317,6 +318,7 @@ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", "license": "MIT", + "peer": true, "dependencies": { "@babel/code-frame": "^7.29.0", "@babel/generator": "^7.29.0", @@ -2176,6 +2178,7 @@ } ], "license": "MIT", + "peer": true, "engines": { "node": ">=18" }, @@ -2198,6 +2201,7 @@ } ], "license": "MIT", + "peer": true, "engines": { "node": ">=18" } @@ -2307,6 +2311,7 @@ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", + "peer": true, "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -2728,6 +2733,7 @@ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", + "peer": true, "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -3715,6 +3721,7 @@ "integrity": "sha512-DEVIwhbrZZ4ir31X+qQNEQqDWkgCJUV6kiPPAd2MGTY8n5/n0c4B8qA5k1ipF2izwH00JEf0h6Daaut71zzkyw==", "devOptional": true, "license": "MIT", + "peer": true, "dependencies": { "@docusaurus/types": "3.9.2", "@rspack/core": "^1.5.0", @@ -3886,6 +3893,7 @@ "resolved": "https://registry.npmjs.org/@docusaurus/plugin-content-docs/-/plugin-content-docs-3.9.2.tgz", "integrity": "sha512-C5wZsGuKTY8jEYsqdxhhFOe1ZDjH0uIYJ9T/jebHwkyxqnr4wW0jTkB72OMqNjsoQRcb0JN3PcSeTwFlVgzCZg==", "license": "MIT", + "peer": true, "dependencies": { "@docusaurus/core": "3.9.2", "@docusaurus/logger": "3.9.2", @@ -4353,6 +4361,7 @@ "version": "1.8.1", "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.8.1.tgz", "integrity": "sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==", + "dev": true, "license": "MIT", "optional": true, "dependencies": { @@ -4364,6 +4373,7 @@ "version": "1.8.1", "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.8.1.tgz", "integrity": "sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==", + "dev": true, "license": "MIT", "optional": true, "dependencies": { @@ -4374,6 +4384,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", "integrity": "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==", + "dev": true, "license": "MIT", "optional": true, "dependencies": { @@ -4394,15 +4405,13 @@ "version": "0.9.0", "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.9.0.tgz", "integrity": "sha512-30FAj7/EoJ5mwVPOWhAyCX+FPfMDrVecJAM+Iw9NRoSl4BBAQeqj4cApHHUXOVvIPgLVDsCFoz/hGD+5QQD1GQ==", - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/@emotion/unitless": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.10.0.tgz", "integrity": "sha512-dFoMUuQA20zvtVTuxZww6OHoJYgrzfKM1t52mVySDJnMSEa08ruEvdYQbhvyu6soU+NeLVd3yKfTfT0NeV6qGg==", - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/@eslint-community/eslint-utils": { "version": "4.9.1", @@ -5696,6 +5705,7 @@ "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.1.1.tgz", "integrity": "sha512-f++rKLQgUVYDAtECQ6fn/is15GkEH9+nZPM3MS0RcxVqoTfawHvDlSCH7JbMhAM6uJ32v3eXLvLmLvjGu7PTQw==", "license": "MIT", + "peer": true, "dependencies": { "@types/mdx": "^2.0.0" }, @@ -5780,6 +5790,7 @@ "version": "1.0.7", "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.0.7.tgz", "integrity": "sha512-SeDnOO0Tk7Okiq6DbXmmBODgOAb9dp9gjlphokTUxmt8U3liIP1ZsozBahH69j/RJv+Rfs6IwUKHTgQYJ/HBAw==", + "dev": true, "license": "MIT", "optional": true, "dependencies": { @@ -6334,6 +6345,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6347,6 +6359,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6360,6 +6373,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6373,6 +6387,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6386,6 +6401,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6399,6 +6415,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6412,6 +6429,7 @@ "cpu": [ "wasm32" ], + "dev": true, "license": "MIT", "optional": true, "dependencies": { @@ -6425,6 +6443,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6438,6 +6457,7 @@ "cpu": [ "ia32" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6451,6 +6471,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MIT", "optional": true, "os": [ @@ -6463,6 +6484,7 @@ "integrity": "sha512-Iax6UhrfZqJajA778c1d5DBFbSIqPOSrI34kpNIiNpWd8Jq7mFIa+Z60SQb5ZQDZuUxcCZikjz5BxinFjTkg7Q==", "devOptional": true, "license": "MIT", + "peer": true, "dependencies": { "@module-federation/runtime-tools": "0.22.0", "@rspack/binding": "1.7.6", @@ -6696,6 +6718,7 @@ "resolved": "https://registry.npmjs.org/@svgr/core/-/core-8.1.0.tgz", "integrity": "sha512-8QqtOQT5ACVlmsvKOJNEaWmRPmcojMOzCz4Hs2BGG/toAp/K38LcsMRyLp349glq5AzJbCEeimEoxaX6v/fLrA==", "license": "MIT", + "peer": true, "dependencies": { "@babel/core": "^7.21.3", "@svgr/babel-preset": "8.1.0", @@ -6801,6 +6824,7 @@ "devOptional": true, "hasInstallScript": true, "license": "Apache-2.0", + "peer": true, "dependencies": { "@swc/counter": "^0.1.3", "@swc/types": "^0.1.25" @@ -6840,6 +6864,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -6856,6 +6881,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -6872,6 +6898,7 @@ "cpu": [ "arm" ], + "dev": true, "license": "Apache-2.0", "optional": true, "os": [ @@ -6888,6 +6915,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -6904,6 +6932,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -6920,6 +6949,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -6936,6 +6966,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -6952,6 +6983,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -6968,6 +7000,7 @@ "cpu": [ "ia32" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -6984,6 +7017,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7032,6 +7066,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7048,6 +7083,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7064,6 +7100,7 @@ "cpu": [ "arm" ], + "dev": true, "license": "Apache-2.0", "optional": true, "os": [ @@ -7080,6 +7117,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7096,6 +7134,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7112,6 +7151,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7128,6 +7168,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7144,6 +7185,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7160,6 +7202,7 @@ "cpu": [ "ia32" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7176,6 +7219,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -7220,6 +7264,7 @@ "version": "0.10.1", "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", + "dev": true, "license": "MIT", "optional": true, "dependencies": { @@ -7752,6 +7797,7 @@ "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.14.tgz", "integrity": "sha512-ilcTH/UniCkMdtexkoCN0bI7pMcJDvmQFPvuPvmEaYA/NSfFTAgdUSLAoVjaRJm7+6PvcM+q1zYOwS4wTYMF9w==", "license": "MIT", + "peer": true, "dependencies": { "csstype": "^3.2.2" } @@ -7862,8 +7908,7 @@ "version": "4.2.7", "resolved": "https://registry.npmjs.org/@types/stylis/-/stylis-4.2.7.tgz", "integrity": "sha512-VgDNokpBoKF+wrdvhAAfS55OMQpL6QRglwTwNC3kIgBrzZxA4WsFj+2eLfEA/uMUDzBcEhYmjSbwQakn/i3ajA==", - "license": "MIT", - "peer": true + "license": "MIT" }, "node_modules/@types/supports-color": { "version": "8.1.3", @@ -8229,6 +8274,7 @@ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.15.0.tgz", "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "license": "MIT", + "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -8305,6 +8351,7 @@ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "license": "MIT", + "peer": true, "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -8369,6 +8416,7 @@ "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-5.48.0.tgz", "integrity": "sha512-aD8EQC6KEman6/S79FtPdQmB7D4af/etcRL/KwiKFKgAE62iU8c5PeEQvpvIcBPurC3O/4Lj78nOl7ZcoazqSw==", "license": "MIT", + "peer": true, "dependencies": { "@algolia/abtesting": "1.14.0", "@algolia/client-abtesting": "5.48.0", @@ -8918,6 +8966,7 @@ } ], "license": "MIT", + "peer": true, "dependencies": { "baseline-browser-mapping": "^2.9.0", "caniuse-lite": "^1.0.30001759", @@ -9087,7 +9136,6 @@ "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.1.tgz", "integrity": "sha512-dU+Tx2fsypxTgtLoE36npi3UqcjSSMNYfkqgmoEhtZrraP5VWq0K7FkWVTYa8eMPtnU/G2txVsfdCJTn9uzpuQ==", "license": "MIT", - "peer": true, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -9942,6 +9990,7 @@ "integrity": "sha512-zpEHTy1fjTMZCKLHUZoVeylt9XrzaIN2rbPXEt0k+q7JE5CkCZdo6bNq55bn24a69CH7ErAVLKijxJja4fw+UQ==", "hasInstallScript": true, "license": "MIT", + "peer": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/core-js" @@ -10096,7 +10145,6 @@ "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", "integrity": "sha512-FyyrDHZKEjXDpNJYvVsV960FiqQyXc/LlYmsxl2BcdMb2WPx0OGRVgTg55rPSyLSNMqP52R9r8geSp7apN3Ofg==", "license": "ISC", - "peer": true, "engines": { "node": ">=4" } @@ -10167,6 +10215,7 @@ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", + "peer": true, "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -10297,7 +10346,6 @@ "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-3.2.0.tgz", "integrity": "sha512-e8RKaLXMOFii+02mOlqwjbD00KSEKqblnpO9e++1aXS1fPQOpS1YoqdVHBqPjHNoxeF2mimzVqawm2KCbEdtHQ==", "license": "MIT", - "peer": true, "dependencies": { "camelize": "^1.0.0", "css-color-keywords": "^1.0.0", @@ -10498,6 +10546,7 @@ "resolved": "https://registry.npmjs.org/cytoscape/-/cytoscape-3.33.1.tgz", "integrity": "sha512-iJc4TwyANnOGR1OmWhsS9ayRS3s+XQ185FmuHObThD+5AeJCakAAbWv8KimMTt08xCCLNgneQwFp+JRJOr9qGQ==", "license": "MIT", + "peer": true, "engines": { "node": ">=0.10" } @@ -10919,6 +10968,7 @@ "resolved": "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz", "integrity": "sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ==", "license": "ISC", + "peer": true, "engines": { "node": ">=12" } @@ -11657,6 +11707,7 @@ "integrity": "sha512-O0piBKY36YSJhlFSG8p9VUdPV/SxxS4FYDWVpr/9GJuMaepzwlf4J8I4ov1b+ySQfDTPhc3DtLaxcT1fN0yqCg==", "dev": true, "license": "MIT", + "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.8.0", "@eslint-community/regexpp": "^4.12.2", @@ -14475,6 +14526,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14495,6 +14547,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14515,6 +14568,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14535,6 +14589,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14555,6 +14610,7 @@ "cpu": [ "arm" ], + "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14575,6 +14631,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14595,6 +14652,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14615,6 +14673,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14635,6 +14694,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14655,6 +14715,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -14675,6 +14736,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "MPL-2.0", "optional": true, "os": [ @@ -18784,6 +18846,7 @@ } ], "license": "MIT", + "peer": true, "dependencies": { "nanoid": "^3.3.11", "picocolors": "^1.1.1", @@ -19687,6 +19750,7 @@ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-7.1.1.tgz", "integrity": "sha512-orRsuYpJVw8LdAwqqLykBj9ecS5/cRHlI5+nvTo8LcCKmzDmqVORXtOIYEEQuL9D4BxtA1lm5isAqzQZCoQ6Eg==", "license": "MIT", + "peer": true, "dependencies": { "cssesc": "^3.0.0", "util-deprecate": "^1.0.2" @@ -20572,6 +20636,7 @@ "resolved": "https://registry.npmjs.org/react/-/react-19.2.4.tgz", "integrity": "sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ==", "license": "MIT", + "peer": true, "engines": { "node": ">=0.10.0" } @@ -20581,6 +20646,7 @@ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.4.tgz", "integrity": "sha512-AXJdLo8kgMbimY95O2aKQqsz2iWi9jMgKJhRBAxECE4IFxfcazB2LmzloIoibJI3C12IlY20+KFaLv+71bUJeQ==", "license": "MIT", + "peer": true, "dependencies": { "scheduler": "^0.27.0" }, @@ -20636,6 +20702,7 @@ "resolved": "https://registry.npmjs.org/@docusaurus/react-loadable/-/react-loadable-6.0.0.tgz", "integrity": "sha512-YMMxTUQV/QFSnbgrP3tjDzLHRg7vsbMn8e9HAa8o/1iXoiomo48b7sk/kkmWEuWNDPJVlKSJRB6Y2fHqdJk+SQ==", "license": "MIT", + "peer": true, "dependencies": { "@types/react": "*" }, @@ -20691,6 +20758,7 @@ "resolved": "https://registry.npmjs.org/react-router/-/react-router-5.3.4.tgz", "integrity": "sha512-Ys9K+ppnJah3QuaRiLxk+jDWOR1MekYQrlytiXxC1RyfbdsZkS5pvKAzCCr031xHixZwpnsYNT5xysdFHQaYsA==", "license": "MIT", + "peer": true, "dependencies": { "@babel/runtime": "^7.12.13", "history": "^4.9.0", @@ -21640,6 +21708,7 @@ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz", "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==", "license": "MIT", + "peer": true, "dependencies": { "fast-deep-equal": "^3.1.3", "fast-uri": "^3.0.1", @@ -22654,7 +22723,6 @@ "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-6.3.9.tgz", "integrity": "sha512-J72R4ltw0UBVUlEjTzI0gg2STOqlI9JBhQOL4Dxt7aJOnnSesy0qJDn4PYfMCafk9cWOaVg129Pesl5o+DIh0Q==", "license": "MIT", - "peer": true, "dependencies": { "@emotion/is-prop-valid": "1.4.0", "@emotion/unitless": "0.10.0", @@ -22702,7 +22770,6 @@ } ], "license": "MIT", - "peer": true, "dependencies": { "nanoid": "^3.3.7", "picocolors": "^1.1.1", @@ -23080,7 +23147,8 @@ "version": "2.8.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - "license": "0BSD" + "license": "0BSD", + "peer": true }, "node_modules/tsutils": { "version": "3.21.0", @@ -24048,6 +24116,7 @@ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.105.1.tgz", "integrity": "sha512-Gdj3X74CLJJ8zy4URmK42W7wTZUJrqL+z8nyGEr4dTN0kb3nVs+ZvjbTOqRYPD7qX4tUmwyHL9Q9K6T1seW6Yw==", "license": "MIT", + "peer": true, "dependencies": { "@types/eslint-scope": "^3.7.7", "@types/estree": "^1.0.8", From 7c251bae687ee9effbfc278f91508849cdfbd7bb Mon Sep 17 00:00:00 2001 From: pronoy-roy-wm Date: Fri, 24 Jul 2026 23:52:19 +0530 Subject: [PATCH 10/16] Release note for design to code 2.0 --- .../release-version-1/version-1-0-x/1.0.0-beta.mdx | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx index d37f479..6b9ac6b 100644 --- a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx +++ b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx @@ -461,6 +461,19 @@ For details about the technology stack upgrades, refer to [Technology Stack](/te [Marketplace](https://marketplace.wavemaker.ai) + + + | # | Feature | Summary | + | - | ------------------------- | ---------------------------------------------------------------------------------------------------------------------- | + | 1 | No More UI-Kit Lock-In | A brand-new Annotation Flow brings code generation to any design system, not just files built on the WaveMaker UI kit. | + | 2 | Smarter Variants | More design tokens, more flexibility, more customisation across component variants. | + | 3 | Sync, Don't Duplicate | Add new pages to an existing project instead of spinning up a new project each time. | + | 4 | Truly Flexible Hug & Fill | Real flexbox behaviour at every level — no more hard-coded 100% width or height. | + | 5 | Wizards Stay Together | Prototype-linked wizard pages are automatically merged into a single wizard. | + | 6 | Native SVGs | SVG is now a first-class citizen across all widgets — no font-icon workarounds needed. | + | 7 | Better Mobile Fonts | Full support for .woff2 and .ttf fonts on mobile builds. | + | 8 | A Brand New UI | A redesigned plugin interface for a cleaner, faster experience. | + From 16f0cf0fcc119ebc076c00000c8758490a12bd43 Mon Sep 17 00:00:00 2001 From: pronoy-roy-wm Date: Fri, 24 Jul 2026 23:53:30 +0530 Subject: [PATCH 11/16] Updated the user for last update --- .../release-version-1/version-1-0-x/1.0.0-beta.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx index 6b9ac6b..76120cc 100644 --- a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx +++ b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx @@ -1,5 +1,5 @@ --- -last_update: { author: 'Shahnawaz Ahmed' } +last_update: { author: 'Pronoy Roy' } hide_table_of_contents: true hide_title: true From a7b22eb115b88f52425152170ba4550d21c8aee0 Mon Sep 17 00:00:00 2001 From: Pavani Mucharla Date: Sat, 25 Jul 2026 18:21:21 +0530 Subject: [PATCH 12/16] updating the release notes for rc6 rc7 --- .../version-1-0-x/1.0.0-beta.mdx | 32 +++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx index d37f479..9cc7ae2 100644 --- a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx +++ b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx @@ -31,6 +31,14 @@ For details about the technology stack upgrades, refer to [Technology Stack](/te + + - ### Fill sizing (`width=fill` / `height=fill`) for auto-layout children + + Auto Layout now supports `width=fill` and `height=fill` in addition to fixed values like px and %, letting a component occupy the available space within its parent container instead of sizing to content (`hug`). + + This Fill sizing, previously available only for containers, is now supported for all components placed inside Auto Layout containers, making it easier to build responsive, flexible layouts. Currently available in Angular. + + @@ -73,10 +81,24 @@ For details about the technology stack upgrades, refer to [Technology Stack](/te + + - ### Sync new pages from Design-to-Code plugin into existing projects + + The Design-to-Code plugin now supports a Sync flow that lets you add new pages to any existing WaveMaker project directly from the plugin. + + - ### SVG generation and Icon URL support in Design-to-Code plugin + + Icons used in Figma designs are now exported as SVGs. This enhancement improves icon rendering by enabling support for icons outside the design system and produces outputs that more closely match the original design. + + - ### Restore conversation to a previous checkpoint in AI chat You can now restore an AI chat conversation to any previously saved checkpoint, permanently removing all messages, agent interactions, tool executions, and changes made after that point so you can continue from the selected state. + + - ### Code Review agent + + Introducing the WaveMaker Code Review Agent — a dedicated AI agent that audits your WaveMaker project files against best practices and surfaces violations as structured, actionable tables. It is report-only — it never edits or rewrites your files. Currently, the agent specializes only in identifying issues related to HTML and CSS files. @@ -112,6 +134,16 @@ For details about the technology stack upgrades, refer to [Technology Stack](/te + + + - ### Google Fonts not resolving on mobile + + Fixed a font resolution edge case on mobile by updating `font.json` with the correct PostScript names. + + - ### Nested wizard support + + Fixed wizard page generation to correctly handle nested wizards. The tool now scans each page's markup for `wm-wizard` elements and their direct `wm-wizardstep` children, capturing each step's name, title, and inner content, and walks up the DOM to detect whether a wizard is nested inside another wizard's step. Only top-level (non-nested) wizards get their own host page — nested wizards are now merged into their parent instead. + From 29fe55df05ea9522b3492b5a726c1cd5a51faefa Mon Sep 17 00:00:00 2001 From: pronoy-roy-wm Date: Mon, 27 Jul 2026 11:10:18 +0530 Subject: [PATCH 13/16] Shifted and formatted release notes for design to code --- .../version-1-0-x/1.0.0-beta.mdx | 51 ++++++++++++++----- 1 file changed, 38 insertions(+), 13 deletions(-) diff --git a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx index 1b29b1a..6367a71 100644 --- a/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx +++ b/docs/release-notes/release-version-1/version-1-0-x/1.0.0-beta.mdx @@ -28,6 +28,44 @@ For details about the technology stack upgrades, refer to [Technology Stack](/te You can now edit a prompt you've already sent in an AI chat conversation and resubmit it, replacing all messages, agent actions, and file changes made after that point, along with any images or chat suggestions carried over from the original prompt. + + + #### Design to Code Release Notes + +
+ + - ### No More UI-Kit Lock-In + + A brand-new Annotation Flow brings code generation to any design system, not just files built on the WaveMaker UI kit. + + - ### Smarter Variants + + More design tokens, more flexibility, more customisation across component variants. + + - ### Sync, Don't Duplicate + + Add new pages to an existing project instead of spinning up a new project each time. + + - ### Truly Flexible Hug & Fill + + Real flexbox behaviour at every level, with no more hard-coded 100% width or height. + + - ### Wizards Stay Together + + Prototype-linked wizard pages are automatically merged into a single wizard. + + - ### Native SVGs + + SVG is now a first-class citizen across all widgets, with no font-icon workarounds needed. + + - ### Better Mobile Fonts + + Full support for `.woff2` and `.ttf` fonts on mobile builds. + + - ### A Brand New UI + + A redesigned plugin interface delivers a cleaner, faster experience. +
@@ -493,19 +531,6 @@ For details about the technology stack upgrades, refer to [Technology Stack](/te [Marketplace](https://marketplace.wavemaker.ai) - - - | # | Feature | Summary | - | - | ------------------------- | ---------------------------------------------------------------------------------------------------------------------- | - | 1 | No More UI-Kit Lock-In | A brand-new Annotation Flow brings code generation to any design system, not just files built on the WaveMaker UI kit. | - | 2 | Smarter Variants | More design tokens, more flexibility, more customisation across component variants. | - | 3 | Sync, Don't Duplicate | Add new pages to an existing project instead of spinning up a new project each time. | - | 4 | Truly Flexible Hug & Fill | Real flexbox behaviour at every level — no more hard-coded 100% width or height. | - | 5 | Wizards Stay Together | Prototype-linked wizard pages are automatically merged into a single wizard. | - | 6 | Native SVGs | SVG is now a first-class citizen across all widgets — no font-icon workarounds needed. | - | 7 | Better Mobile Fonts | Full support for .woff2 and .ttf fonts on mobile builds. | - | 8 | A Brand New UI | A redesigned plugin interface for a cleaner, faster experience. | - From 0c4c824d59c7fea29f54594ece5c52f4b8269e48 Mon Sep 17 00:00:00 2001 From: pronoy-roy-wm Date: Mon, 27 Jul 2026 13:59:29 +0530 Subject: [PATCH 14/16] Updated glossary intro and d2c release notes for clarity --- .../annotation-glossary.md | 18 ++++++++++++++++-- .../img/review-annotations-needs-review.png | Bin 0 -> 160524 bytes .../assets/img/review-annotations-panel.png | Bin 0 -> 184063 bytes .../version-1-0-x/1.0.0-beta.mdx | 8 ++++---- 4 files changed, 20 insertions(+), 6 deletions(-) create mode 100644 docs/design-system/figma-design-to-code-plugin/assets/img/review-annotations-needs-review.png create mode 100644 docs/design-system/figma-design-to-code-plugin/assets/img/review-annotations-panel.png diff --git a/docs/design-system/figma-design-to-code-plugin/annotation-glossary.md b/docs/design-system/figma-design-to-code-plugin/annotation-glossary.md index 50a2468..5be8323 100644 --- a/docs/design-system/figma-design-to-code-plugin/annotation-glossary.md +++ b/docs/design-system/figma-design-to-code-plugin/annotation-glossary.md @@ -7,9 +7,23 @@ last_update: { author: "Mansi Raj" } --- -A guide for designers to annotate Figma screens for the AutoCode plugin. Annotate the smallest node that visually matches the widget. Skip anything you're not sure about. +Annotations are labels you attach to layers in your Figma design so the plugin knows what each layer is — a button, a checkbox, a text field, a table row, and so on. The plugin uses these labels to turn your design into working code, so the better the annotations, the better the generated app. -## Contents +You don't have to annotate everything by hand. When you run the plugin, an AI model reads your design and applies annotations for you as a first pass. Your job is to review its work — check each label, correct anything that looks wrong, and fill in anything it missed. This guide is your reference for that review: use it to confirm the AI picked the right label for each element, and to look up the correct label when you need to make a change. + +The Review Annotations panel lists every layer alongside the label the AI assigned. Check **Needs review** to filter down to layers the AI flagged as low-confidence: + +
+ Review Annotations panel listing Figma layers with their AI-assigned labels, such as page_header and button + + Review Annotations panel filtered to Needs review, showing layers flagged with a low-confidence warning icon +
+ +You don't need to know anything about code to use this guide. For each element on your screen, look through the list below, find the one that visually matches, and apply that annotation to the smallest layer that fully covers the element. If something on your design doesn't clearly match anything here, it's fine to skip it — un-annotated layers are just treated as plain containers. + +**A quick rule of thumb:** annotate by what the component is, not by what the layer is called in Figma. A layer might be named "Card 3" but actually be a checkbox — it should still be annotated as **Checkbox**. + +Contents 1. [Inputs & Controls](#inputs--controls) 2. [Navigation](#navigation) diff --git a/docs/design-system/figma-design-to-code-plugin/assets/img/review-annotations-needs-review.png b/docs/design-system/figma-design-to-code-plugin/assets/img/review-annotations-needs-review.png new file mode 100644 index 0000000000000000000000000000000000000000..034bfa190f5bd8cb481843855f97aa34a2ac910f GIT binary patch literal 160524 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�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 z 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