Run inside WordPress.
Export PHP-backed templates, rendered markup and assets as an installable theme. WordPress serves the site and runs its plugins.
pnpm forgewp exportExplore theme export The tools you love. The CMS your clients know.
Start with the React adapter. More adapters are planned.
npx create-forgewpAuthor your design. Preview with local content.
Export a theme your clients can use in WordPress.
Build the layout in source, with reusable components and your own design decisions. React is the current adapter; more are planned.
Explore theme authoringexport default function Hero() {
return (
<section>
<h1>Make it yours.</h1>
</section>
)
}An authoring example using the current React adapter.
mock-data.jsonContentmenus.jsonNavigationtheme.jsonSettingsLocal files supply mock content, menus and theme settings.
index.phpTemplatesfunctions.phpIntegrationtheme.jsonTheme settingsassets/CSS, media & JSIllustrative files from the installable theme package.
Run your theme inside WordPress or host the frontend separately. Choose the approach that fits your project.
Export PHP-backed templates, rendered markup and assets as an installable theme. WordPress serves the site and runs its plugins.
pnpm forgewp exportExplore theme export Build frontend assets for independent hosting and connect to WordPress through its API. WordPress continues to manage your content and backend.
pnpm buildConfigure API access and authentication for your deployment. Plugin interfaces need their own frontend integration.
Understand separate frontendsThe tools for the work beyond the layout.
Build the content model, editing experience, accounts
and storefront around your design.
Build login, registration, account recovery and capability-based gates. In exported themes, WordPress owns the accounts and sessions.
@forgewp/authExplore authentication Build product views, reactive carts and checkout interfaces backed by WooCommerce. Keep commerce data and orders in your WordPress store.
@forgewp/woocommerceExplore commerce Create native Gutenberg blocks and parent shells with allowed child blocks and layout constraints. Give editors structure they can compose within.
defineBlock() · InnerBlocksBuild with blocks Choose what stays in source and what clients can edit: named fields, inline block content or normal Gutenberg content areas. Combine them in one page.
defineEditable() · BlockAreaDesign the editing experience Preview content, menus and settings from local files. Develop the standard theme preview without a running WordPress installation or database.
cms/Meet the local CMS Generate responsive WebP variants for eligible local images at export, with no upscaling. WordPress Media Library images use WordPress image sizes.
Sharp · responsive WebPExplore the image pipeline Extract translation keys, maintain local language catalogs and translate through configured providers. Add language switching to your theme.
i18n:extract · i18n:translateBuild for more languages Keep static content rendered and load JavaScript for interactive islands. Choose visibility, interaction or idle triggers, with optional near-visible preloading.
<Hydrate trigger="visible">Control interactivity Scaffold blocks and pages, diagnose project issues, extract translations, inspect islands and validate your exported theme from the terminal.
make:block · doctor · exportBrowse the commands Your tools. WordPress at the finish line.