Features

Total visual control over
clean WordPress code

Every feature of this AI WordPress page builder serves one promise: convert any HTML, CSS & JavaScript — even a whole vibe-coded website — into editable WordPress, design it visually or with AI, and ship standard, portable code with nothing hidden.

Visual editing Clean output No lock-in Developer friendly
The core feature

Convert any HTML to WordPress, instantly editable

This is the one thing Tuli is built around. Drop in any HTML, CSS & JavaScript — even an entire vibe-coded website — and Tuli instantly turns every tag into an editable page builder element on a real WordPress page. Every part round-trips perfectly, ready to edit visually.

  • Section comments are preserved, not folded into the next rule
  • Compound selectors like .btn:hover and .card .icon stay exact
  • Shorthands decompose cleanly when you edit one side
  • @media blocks keep their breakpoints and grouping
pasted-in.css → edited
/* ===== Buttons ===== */
.btn {
  padding: .75rem 1.5rem;
  border-radius: 12px;
}

.btn:hover {
  background: #4b46e0;
}

@media (max-width: 599px) {
  .btn { width: 100% }
}
Built-in AI assistant

Your AI co-designer, inside the canvas

Don't feel like starting from a blank page? Ask Tuli's AI assistant to build it. Generate full pages and sections, draft copy, and edit existing content — all without leaving the builder.

  • "Build a pricing section" → a complete, styled block appears
  • "Make this shorter / punchier" rewrites your content in place
  • Generated CSS lands in your real source, fully editable
  • Review and refine every line — the AI assists, you stay in control
Tuli AI assistant
You
Build a 3-column features section with icons.
Added a responsive 3-column grid with icon cards and headings. Inserted & editable
You
Rewrite the middle card to focus on speed.
Reworded it around performance and load time. Content updated live
Ask Tuli to build or edit anything…
Editing

The inspector, end to end

Click any element and shape it without touching code — or type CSS directly. Edits sync two ways and your output stays clean, with duplicate selectors auto-merged into one rule.

Spacing controls

Per-side padding and margin with smart snap-back protection — your value never jumps while you type.

Typography

Font family, size, weight, line-height, letter-spacing and alignment — all live, all standard CSS.

Color & background

Pick colors, gradients and backgrounds with a clean picker that maps straight to real declarations.

Layout & flex/grid

Toggle display, direction, alignment, gap and wrapping with icon toggles instead of guesswork.

Two-way CSS sync

Type CSS by hand and the visual controls update; click the controls and the CSS updates — both stay in lockstep with the live canvas, and duplicate selectors auto-merge.

One-click clear

A green dot beside any property clears it instantly — from the element and every related variant at once.

Building blocks

Everything you need to assemble a page

Elements library

Sections, containers, columns, buttons, headings, text, images, code blocks, shortcodes and more — drag or click to add.

Structure tree

A live outline of the page DOM. Reorder, nest, rename and select — newly inserted nodes auto-expand the first time.

Query loops

Enable a loop on any element and it clones per result. Drive it from the Main Query, a visual WP_Query, raw PHP or an ACF repeater. Style the template once; every result matches.

Reusable templates

Headers, footers and sections built once and shared across every page on your site.

PHP & shortcodes

Type raw PHP or any shortcode; it's pre-rendered server-side so the canvas shows real output, not raw tags.

Dynamic data tokens

Insert post fields and any ACF field from a searchable picker — click to insert — or print any WordPress/custom function by typing {function_name}. Resolved live from WordPress.

Built-in form builder

Build real, editable form fields with no form plugin. Email submissions or post them to a custom action URL — it's part of the builder.

AJAX filters

Add built-in AJAX filters to any query loop for instant, no-reload faceting. WP Grid Builder is supported too.

30+ WooCommerce blocks

Compose custom product, archive, cart and account pages from 30+ WooCommerce building blocks — title, price, add-to-cart, gallery, grids and more.

The edit loop

One move, one tick, everywhere

When you change a value, everything happens on the very same frame — so the canvas updates before your finger lifts.

1

You change a value

Drag a slider, pick a color, type a number, or click the green dot to clear a property.

2

The source CSS updates

Tuli writes the change straight into the right place — site-wide rules to your Global CSS, page-specific #id rules to Page CSS.

3

The canvas repaints

The live preview re-renders synchronously from that same CSS — no lag, no stale value snapping back.

4

Every surface stays in sync

The Style panel, the Page/Global CSS boxes and the canvas are all bound to one source of truth. Edit any one — the rest follow.

5

You save when ready

No autosave surprises. Experiment freely; persistence happens only when you click Save.

6

Tuli ships clean code

On save, your work becomes clean, bloat-free .html and .css files that WordPress serves — fast, cacheable and portable, with no code lock-in.

Media & interactive

Rich media and motion, built in

Drop in media and interactive elements and skin them visually — Tuli only loads each element's front-end script on pages that actually use it.

Video element

Upload a file or embed YouTube or Vimeo. A clean, bundled player skins it consistently, with controls you can style.

Audio element

Upload audio and present it through the same bundled player — a tidy, styleable HTML5 audio control.

Slider / carousel

Build slideshows from any content and let them rotate — the slider script loads only when a slider is on the page.

Tabs

Organize content into switchable tabbed panels — fully editable and styled like the rest of your page.

Accordion

Collapsible sections for FAQs and long content — expand, collapse and style each panel visually.

Divider

A simple, configurable separator to give your sections breathing room and visual structure.

Design system

Consistent by default

Define your brand once and reuse it everywhere. Tuli's theme settings, tokens and fonts keep every page on-brand.

  • Design tokens exposed as :root CSS custom properties
  • Google Fonts lazy-loaded directly into the canvas
  • A typographic baseline for body, headings and containers
  • Live preview of theme settings as you tweak them
tuli-theme.css
:root {
  --brand: #6c5ce7;
  --accent: #ff7a5c;
  --font: "Inter", sans-serif;
  --radius: 16px;
}

Responsive breakpoints

Edit desktop, tablet (≤ 991px) and mobile (≤ 599px) independently. Tuli wraps your edits in the right @media query automatically, and editing the desktop value never disturbs the responsive ones.

Safe by design

HTML, CSS and JS are sanitized on every save. Capability checks and nonces guard every endpoint. Raw <script> stays opt-in for trusted administrators only — never silently widened.

Ecosystem

Plays well with your whole stack

Tuli is built for the WordPress ecosystem you already run — WooCommerce, ACF, WP Grid Builder, PHP, shortcodes and built-in AJAX filters, all supported out of the box.

WooCommerce

30+ native building blocks. Assemble custom product, archive, cart and account pages from composable parts.

ACF

Advanced Custom Fields are supported by default — field names appear in the dynamic-data picker, and you can loop ACF repeaters in a query.

WP Grid Builder

Drop in a Facet element and wire WP Grid Builder facets to your query loops for advanced filtering.

Built-in AJAX filters

Add Tuli's own faceted filters — taxonomy, custom field, search and sort — to any query loop, refreshing results over AJAX with no page reload.

Any shortcode

Drop in any plugin's shortcode; it's rendered server-side so the canvas shows the real result.

Raw PHP

Type <?php … ?> blocks; Tuli pre-renders them so dynamic output appears live in the editor.

The full kit

30+ WooCommerce building blocks

Product parts, loop parts and store-wide parts — each is a tiny, selectable element WooCommerce renders and you style. The WooCommerce group only appears when Woo is active.

Single-product parts

Product Title
Price
Add to Cart
Product Image
Gallery
Rating
Short Description
Description
Tabs
Additional Info
Product Meta
SKU
Stock
Categories
Tags
Sale Badge
Related Products
Up-sells
Cross-sells

Loop, page & global parts

Products Grid
Categories Grid
Result Count
Catalog Ordering
Archive Title
Cart
Checkout
My Account
Order Tracking
Breadcrumb
Cart Icon
Mini Cart
Product Search
Store Notices
Workflow

Built for momentum

Undo & redo

Debounced snapshots of HTML and CSS let you experiment and roll back instantly.

Copy & paste blocks

Copy any styled section as a self-contained snippet and paste it anywhere — its styles travel with it.

Explicit save

No surprise autosaves. Experiment freely with values; nothing persists until you click Save.

No script bloat

Tuli loads front-end scripts only for the elements you actually use — sliders, tabs and the rest stay off the page until they're needed.

See it for yourself

The fastest way to understand Tuli is to paste a page in and start editing.