Features

Everything ready→made does — proven in the page, not promised in a bullet.

Every feature below demonstrates itself with the product's own output. A deterministic engine means the same design always comes out the same clean code — across all six targets.

Responsive by default

One export. Every screen.

Your design comes out as responsive code — not a fixed-width snapshot.

Cards reflow 3 → 2 → 1, the nav folds to a hamburger, hero bands scale to fit. No sideways scroll on any device.

Reflow, not shrinkNo JS

Real output — tap the icon. Pure CSS, zero JavaScript.

Navigation

Menus that collapse to a hamburger — no JS.

A main navigation is recognised and rebuilt so it collapses on mobile: the brand stays put, the links fold into a toggle-revealed drawer. The whole thing is a CSS-only checkbox pattern — nothing to wire up, nothing to break.

CSS-only toggleAccessible labelBrand preserved
Semantic HTML

Real tags, not <div> soup.

Sections are recognised by name and composition, then emitted as proper landmark elements — better accessibility, better SEO, code a human can read.

✕ Typical converter
<div class="wrapper">
  <div class="top">
    <div class="logo">…</div>
  </div>
  <div class="content">…</div>
  <div class="bottom">…</div>
</div>
✓ ready→made
<header>
  <nav>
    <a class="logo">…</a>
  </nav>
</header>
<section>…</section>
<footer>…</footer>
One engine, six targets

Same node. Pick your output.

HTML, Gutenberg, Oxygen Classic, Oxygen 6, Elementor and Etch all share one conversion engine. Here's one card, four of those ways.

HTML — semantic + class CSS
<div class="blog-card">
  <img class="shape" src="card.png" alt="Rectangle 4326">
  <div class="card-body">
    <p class="card-title">New Construction technology</p>
    <p class="card-text">Elinor her his secure far…</p>
  </div></div>
.blog-card{display:flex;flex-direction:column;gap:20px;flex:1 1 570px}
Gutenberg — native block markup
<!-- wp:group {"style":{"border":{"radius":"10px"}}} -->
<div class="wp-block-group">
  <!-- wp:image --><figure class="wp-block-image">…</figure>
  <!-- wp:heading {"level":4} --><h4>New Construction…</h4>
  <!-- wp:paragraph --><p>Elinor her his…</p>
</div> <!-- /wp:group -->
Oxygen Classic — native elements
ct_div_block .blog-card { display:flex; gap:20px;
                     border-radius:10 (unit:px) }
  ├─ ct_image     "Rectangle 4326"
  └─ ct_div_block  "Group"
       ├─ ct_headline  h4  "New Construction…"
       └─ ct_text_block   "Elinor her his…"
Oxygen 6 — tree + per-breakpoint styles
tree:  Container(.blog-card) › [ Image, Text, Text ]

class .blog-card:
  base            → flex; column; gap:20px; width:50%
  tablet_landscape → width:100%

See each target end-to-end in the docs & examples →

Not a mockup

Same design in, real code out.

These aren't renderings of a promise. A real Figma design, converted by ready→made and running live in a real Oxygen site — then opened in the builder as native, editable elements.

Side by side: a Figma card-grid design and the same section converted by ready→made, running live in an Oxygen WordPress site
Left: the Figma design. Right: the converted section live in Oxygen — featured card, two smaller cards and uniform image heights, faithfully reproduced.
A ready→made-converted card grid open in the Oxygen builder, with a div block selected showing its native flex layout, gap and width controls
And it's fully editable: the same card grid selected in the Oxygen builder — native Section › Div › Div structure, real flex/gap/width controls. See this example →
More that just works

The details that usually break.

Free-form canvases, data tables and carousels are the things most converters mangle. These are live — scroll them.

Carousels → CSS scroll-snap

Native swipe, no JS library.

Tables stay usable on mobile

PlanConversionsTargetsPrice
ProUnlimitedAll six€19/mo
LifetimeUnlimitedAll six€250

Wide tables get a scroll wrapper — never crammed to one word per line.

Free-form → sections

Absolutely-positioned, pinned-layer designs (no auto-layout) are segmented into bands, rebuilt as real sections, and stacked cleanly for mobile.

How it segments →

The fidelity that usually gets lost

The details other converters drop.

Gradients, shadows, real assets, clean class names, reused components — the things that make output look designed and stay maintainable. All real, all here.

Gradients that actually match

linear · diagonal · rotated

Figma's gradient transform is inverted to exact CSS — angled and scaled gradients land right, not reset to a flat fill.

Gradient text & borders

Gradient headline

Gradient fills on text (background-clip) and on borders come through, not just on boxes.

Real shadows & outlines

Aa

Drop, inner and text shadows map to box-shadow and -webkit-text-stroke — comma-joined, multiple, exact.

Blur & frosted glass

backdrop-filter

Layer blur → filter:blur(), background blur → backdrop-filter for real frosted overlays.

Crisp inline SVG, not blurry PNG

✕ <img src="icon.png"> → pixelated
✓ <svg>…</svg> crisp, deduped, one copy

Icons, logos and vectors export as inline SVG (icon-fonts resolved to real paths), deduped by content hash.

Auto Layout → real flex & grid

✕ position:absolute; left:120px; top:48px
✓ display:grid; grid-template-columns:repeat(3,1fr)

Auto Layout and true multi-column grids become real flex/grid — and messy files get structure inferred from geometry.

Per-corner radius & per-side borders object-fit for masked images Lazy-load + width/height (no CLS) Semantic ul/li, nav, button Footer & header structure Whole-file multi-page site export Deterministic, diffable output
Ready?

Build a real site from your Figma file in minutes.

menu