You can design components in Webflow the same way you normally would, using classes, most elements, and interactions. DevLink takes care of turning those designs into React components.
By following these guidelines, you’ll make sure your components export cleanly and behave as expected in your React app.
The following Webflow elements are supported for export through DevLink:
Ecommerce and CMS-specific elements aren’t supported in Exported Components.
When building components in Webflow, you can choose between two main approaches to component architecture, or even mix them together based on your specific needs:
Larger, self-contained components that represent complete UI sections or features. They’re ideal when you want to maintain consistency between your Webflow site and React app for entire sections of your interface.
Use these for components that need to look and behave identically across both platforms, such as these examples:
Smaller, reusable building blocks that form the foundation of your design system. They’re perfect for creating a consistent look and feel across your application.
Use these for basic UI elements that you’ll combine in different ways, such as these examples:
Design forms so engineers can choose between two predictable build paths:
Export a whole Webflow form for simple, lightweight flows when you don’t need controlled inputs or complex validation.
Add an Attributes prop to the form in Webflow so apps can pass handlers like onSubmit.
In React, treat the exported form as an uncontrolled form: prevent default, read values via FormData, and post to your endpoint. If your handler throws, render the form’s Error state; otherwise show Success and map these directly to Webflow’s built-in states.
This example uses a whole Webflow form exported as one React component. The form stays visually identical to your Webflow design, but in your React code you pass it an Attributes prop called formAttributes. That prop lets you hook into the form’s submit event.
NewsletterSignupForm is your exported Webflow form, now usable as a React component. It already includes the fields, labels, success message, and error message you styled in Webflow.formAttributes is an Attributes prop that lets you pass an object that can include handlers like onSubmit.onSubmit function
new FormData(e.currentTarget).Instead of exporting a whole form, you can export individual inputs and buttons and build your own <form> element in React. This gives you full control over:
This approach keeps the Webflow design but lets you manage all behavior in React.
In this example, you export the EmailInput and SubmitButton elements from Webflow. You then assemble them in your own <form> in React. You use react-hook-form to handle the form’s state and validation.
react-hook-form.Success handling is left to the developer (toast, banner, redirect, etc.).
DevLink doesn’t export site or page-level custom code (e.g. code added in a page’s <head> or <body>). It also doesn’t preserve plain class selectors because DevLink applies unique namespaces to every component.
If you need custom CSS or JS with a DevLink component, add it using a Code Embed element placed inside the component.
<style> tags.The Code Embed element also supports <script> elements. Place scripts here only if they’re specific to the component. For logic, prefer handling interactions in your React/JS app.
When rendering lists of data in an exported component, split the implementation into:
Container component defines the overall list structure and exposes a Slot for content.
Item component defines how each item is rendered.
This pattern keeps layouts reusable, rows portable, and responsibilities clear.
Create the following components in Webflow:
UserTable — table structure with a Slot named tableContent.UserTableRow — a row layout for a single user.In React, you can use the UserTable component to render the outer table and then pass it a list of UserTableRow components (hydrated with your own data) with the tableContent prop.
DevLink components inherit their accessibility features from the Webflow elements they’re built upon. To ensure your components meet accessibility standards, follow Webflow’s accessibility guidelines.