=== Figma to Oxygen Builder – ready→made WordPress Integration === Contributors: levelsdev Website: https://levels.dev Tags: figma, oxygen-builder, design-to-code, gutenberg, page-builder Requires at least: 5.0 Tested up to: 7.0 Stable tag: 1.4.0 Requires PHP: 7.2 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html Turn Figma designs into editable WordPress pages — Oxygen 6, Oxygen classic, Gutenberg or HTML. Copy, paste, publish. == Description == **Turn Figma designs into editable WordPress pages – copy, paste, publish.** ready→made is the official WordPress companion for the **ready→made Figma plugin** (powered by the design-to-code engine). It turns your Figma frames into clean, editable layouts inside WordPress — with layout, spacing, typography, colors, and reusable classes preserved — so there is no manual rebuild and no drift from the source file. Design in Figma. Copy. Paste into WordPress. Ship. **New in 1.4.0: one-click import for Oxygen 6, Oxygen classic, Gutenberg & HTML** A new **ready→made Import** screen (Settings → ready→made Import) takes the output from the Figma plugin and builds a real WordPress page for you — locally, with no external server involved. It auto-detects the format and routes it to the right target: * 🟣 **Oxygen 6** – writes the page tree and merges your design's classes into Oxygen's global selectors (non-destructively), then regenerates the CSS. The page opens fully styled in the Oxygen 6 builder. * 🔵 **Oxygen (classic)** – paste straight into the Oxygen 4 structure view, layout and classes intact. * ⬛ **Gutenberg** – creates a page from the block markup, ready for the block editor. * 🌐 **HTML** – drops semantic, hand-editable markup into a page. Google Fonts used in your design are detected and loaded automatically, so type looks right on the first render. **Why designers and agencies use ready→made** * 🎨 **Pixel-accurate** – exact spacing, type, and color from the source file, not eyeballed. * 📱 **Responsive by default** – Figma breakpoints sync to real Oxygen breakpoints (base, tablet, phone). * 🧱 **Clean, maintainable output** – semantic structure and reusable global classes your team can extend, not a tangle of absolute positioning. * ♻️ **Smart image handling** – content-based duplicate detection reuses existing media and saves storage space. * 🔤 **Automatic font matching** – fixes family-name mismatches (e.g. "BreeSerif" → "Bree Serif") with 95%+ accuracy. * 🔒 **No external backend** – everything runs on your own WordPress. Your designs and content never leave your site. **Who is this for?** - WordPress developers and agencies building with Oxygen (4 and 6) - Designers who hand off Figma files to WordPress teams - Anyone who wants to skip the design-to-code rebuild ready→made pairs with the free ready→made Figma plugin. Design once, paste anywhere. == Features == - One-click import for Oxygen 6, Oxygen classic, Gutenberg, and plain HTML - Auto-detects the target from the pasted content - Oxygen 6: writes the page tree, merges global selectors non-destructively, and regenerates the CSS - Oxygen 4: paste directly into the structure view - Turns your Figma design system into Oxygen global classes, with responsive breakpoints - Automatic Google Fonts loading - Content-based image de-duplication with a visual progress indicator - 95%+ accurate font-name matching - Runs entirely on your site — no external server or account required - Clean, WordPress-standard code; compatible with most caching and optimization plugins == Installation == 1. Upload the plugin folder to `/wp-content/plugins/`, or install it from the WordPress Plugins screen. 2. Activate it via the Plugins screen. 3. Install the free **ready→made** plugin in Figma. 4. In Figma, select a frame or group and click **Copy**. 5. Either paste into the Oxygen structure view, or go to **Settings → ready→made Import**, paste, and create a page. == Frequently Asked Questions == = Do I need to configure anything after installation? = No. Activate it and you're ready to go. To import a full page, open **Settings → ready→made Import**, paste the Figma plugin's output, and click **Import & create page**. = What is ready→made? = ready→made is a Figma plugin that turns your designs into editable WordPress layouts, powered by the design-to-code engine. This plugin is its official WordPress companion. = Which page builders and formats are supported? = Oxygen 6 and Oxygen classic (4), plus Gutenberg blocks and plain HTML. The importer auto-detects the format from whatever you paste, or you can pick the target manually. = What's the difference between pasting into Oxygen and using the Import screen? = Pasting into the Oxygen structure view drops a section into the page you're editing. The **ready→made Import** screen creates a brand-new WordPress page from your pasted output — ideal for Oxygen 6, Gutenberg, and HTML. = How does Oxygen 6 support work? = On import, the plugin writes the page tree to Oxygen 6, merges your design's classes into Oxygen's global selectors without overwriting existing ones, and regenerates the CSS. The page then opens fully styled in the Oxygen 6 builder. = Does my design or content leave my site? = No. Everything runs on your own WordPress install. There is no external server, cloud service, or account required — your data stays with you. = Will my responsive breakpoints be preserved? = Yes. Figma's responsive breakpoints map to Oxygen's native breakpoints (base, tablet, phone), so your layout reflows the way you designed it. = What happens to images and fonts from my design? = Images are uploaded to your Media Library with content-based de-duplication, so the same asset is never uploaded twice. Google Fonts used in the design are detected and loaded automatically. = Do I need an Oxygen license? = Oxygen 6 or Oxygen 4 must be installed and active on your site to import to those targets. Gutenberg and HTML imports work on any WordPress site. = Will this slow down my site? = No. Editor scripts load only in the builder context, and the importer runs only when you use it. Nothing extra is added to your front end. == Screenshots == 1. The ready-made Figma plugin - select a frame in Figma and copy production-ready code for WordPress. 2. ready-made Import settings page - paste the output and create Oxygen 6, Oxygen classic, Gutenberg, or HTML pages. 3. The result - your Figma design live and pixel-accurate in WordPress, built with Oxygen. == Changelog == = 1.4.0 = * NEW: Target-agnostic importer — Settings → "ready→made Import". Paste the design-to-code Figma plugin's output and create a WordPress page locally, no external server. * Supports Oxygen 6 (merges global selectors non-destructively + writes the page tree + regenerates CSS), Oxygen classic, Gutenberg blocks, and raw HTML. * Auto-detects the target from the pasted content; Google Fonts URLs from the design are loaded automatically. * The existing Oxygen 4 clipboard paste flow is unchanged. = 1.3.2 = * NEW: Full media query support - Figma responsive breakpoints now sync to Oxygen * Supports all Oxygen breakpoints: page-width, phone-landscape, phone-portrait, tablet * Classes preserve responsive styles: base + tablet + mobile variations * Debug logging shows classes with media queries and breakpoint names = 1.3.1 = * Performance: Incremental class saving - only sends changed classes instead of entire database (1 class = <1s instead of 7s) * NEW: Generic showToast() function for class sync notifications with 4 types (success, error, warning, info) = 1.3.0 = * NEW: Automatic class synchronization - Figma classes sync directly to Oxygen global classes * NEW: WordPress settings page for configurable sync mode (create-only vs create+update) * NEW: Storage type option (global classes vs custom selectors) * NEW: Backward compatible format detection (element+classes vs tree-based) * NEW: Real-time Angular scope updates for immediate UI refresh * NEW: Toast notifications for class creation/update feedback * NEW: AJAX handler with Oxygen autoload compatibility * Enhanced: Clean separation between element-specific and class-specific styles * Enhanced: Support for parent and set_name class properties = 1.2.3 = * NEW: Intelligent duplicate detection - automatically detects and reuses existing images based on content hash * NEW: Smart filename conflict resolution with size-based and incremental suffixes * NEW: Support for Figma-generated filenames via suggested_filename field * Enhanced progress indicator shows duplicate detection status and completion statistics * Fixed: Progress callback parameter forwarding for duplicate tracking * Performance: ~80-130ms overhead per image with content-based deduplication = 1.2.2 = * Fixed: Native paste now works in Oxygen code blocks and contenteditable elements = 1.2.1 = * Visual progress indicator for image uploads to WP Media Library = 1.2.0 = * Firefox support added = 1.1.1 = * Enhanced image processor and paste handler modules * Improved stability and performance = 1.1.0 = * Intelligent font matching with 95%+ accuracy * Automatic font name conversion (e.g., "BreeSerif" → "Bree Serif") * IMPROVED: Modular JavaScript architecture for better maintainability * IMPROVED: Performance optimizations with cache-first approach * IMPROVED: Enhanced error handling and comprehensive logging = 1.0.1 = * Added upload image to Media Library functionality = 1.0.0 = * Initial release – adds Oxygen 4 support for ready→made Figma plugin == Upgrade Notice == = 1.0.1 = Improved integration – adds support for image uploads during copy-paste.