Export and publish

Turn a project into a fast static site and put it online in one step, or export it to WordPress, a React (Next.js) or Astro project, or Payload CMS. The output is yours to host anywhere.

Updated . Covers Canvasly Web Studio 2.6.0.

Design once, export anywhere: WordPress, React, Payload CMS, Vercel or static HTML.

What an export contains

Preview in the top bar opens the real export build before you publish. The arrow next to it chooses where: your default browser or a built-in Chromium window (Ctrl+Shift+B and Ctrl+Shift+P).

Export asks what to export as: Static website, WordPress, React (Next.js project), Astro project or Payload CMS.

Export to WordPress NEW

New in 2.5. Every page of the project becomes a WordPress page or post that looks exactly as it does in Canvasly, without a page builder plugin.

  1. Click Export and set Export as to WordPress (pages or posts to import).
  2. Enter the production domain, as for every export.
  3. Choose Import as: Pages or Posts, and Status after import: Drafts or Published.
  4. Click Export .zip.
In the zipWhat it is
wordpress-import.xmlThe pages or posts, for WordPress's own importer. Large exports are split into wordpress-import-2.xml and so on, 8 MB each.
canvasly-….zipA small plugin with the site's styles, scripts and images, and the page template Canvasly full page.
README.txtThe import steps, for whoever does the import.

Import into WordPress

  1. Sign in as an administrator. WordPress removes scripts and styles from content imported by other users.
  2. Plugins → Add New Plugin → Upload Plugin: upload the canvasly-….zip, then Install Now and Activate.
  3. Tools → Import → WordPress: upload wordpress-import.xml. Leave Download and import file attachments unticked; the files are in the plugin.
  4. Open Pages or Posts and publish the drafts you want. To make one the home page, use Settings → Reading → A static page.

Why it's faster than a page builder

Forms keep posting to the form or payments endpoint you set in Canvasly, as on the static site. Each export has its own plugin, so several sites can sit side by side. To update, export again, upload the new plugin (WordPress offers Replace current with uploaded), remove the old pages and import the new file.

Generated landing pages export the same way: click Export… after a run of the Landing Page Generator, or next to an earlier run, and choose WordPress, React, Astro or Payload.

Export to React (Next.js) NEW

New in 2.6. Export → Export as → React (Next.js project) turns every page into a React component in a Next.js project, for developers who carry on in React or deploy to Vercel.

npm install
npm run dev        # http://localhost:3000
npm run build      # static site in out/, for any web host
npm run preview    # look at the built site

Needs Node.js 20.9 or newer on the computer where you open the project.

Export to Astro NEW

New in 2.6. Export → Export as → Astro project makes an Astro project with one route per page in src/pages/, including the 404 page.

Export to Payload CMS NEW

New in 2.6. Export → Export as → Payload CMS makes a Payload 3 project, so clients can edit their own pages without touching Canvasly.

  1. Run npm install and npm run dev. The site opens at localhost:3000 and the admin at /admin.
  2. Create the first user, the administrator. The pages from Canvasly are imported on the first start, as drafts or published.
  3. Under Pages, edit each page's title, address, description and HTML, then Save Draft, Preview and Publish changes.

Publishing targets

TargetWhat you enter
ZipThe production domain. Download and upload the files anywhere.
FTP / FTPSHost, user, password and folder
SFTPHost, user, password or key, and folder
GitHub PagesRepository and branch
NetlifySite and access token
VercelAccess token, project name and optional team ID. Upload as static HTML (live in seconds) or a React (Next.js) project that Vercel builds. Only changed files are uploaded, and the Studio waits for the deployment and reports a failed build.

Secrets are entered in password fields. Remember on this computer keeps them in your local settings, never in the project file. When publishing finishes, the dialog links to the live site.

The Export dialog showing that the domain limit is reached, with registered domains and Release buttons.
Each export is tied to a production domain. When your plan's limit is reached, release a domain right from the dialog.

Forms on a static site

The Form and Newsletter Signup units post to a static-friendly destination: a webhook, Formspree, a Cloudflare Worker, Netlify Forms, mailto, or your own endpoint, with reCAPTCHA v3, Cloudflare Turnstile or a custom captcha.

Advanced forms NEW

New in 2.6, adapted from WPForms and its add-ons for static sites:

Plain forms stay as light as before: the extra script loads only on forms that use these features.

Payments

The Payment Form works with PayPal Commerce Platform, Stripe, Authorize.net, Square, Braintree, Razorpay and Mollie. Secret keys live in a small serverless payments endpoint (Cloudflare Workers, Netlify, Vercel or Node), never in the published site. Fixed prices by SKU can be enforced on the server.

For simple sales, Buy Button and Product Card link to Stripe Payment Links, Lemon Squeezy, PayPal, Gumroad or Snipcart.

Run a sandbox payment with each processor you use before going live.