Embed HubSpot forms into your Next.js application using hooks.
🌳 Tiny and Tree-Shakable
🦄 Written in TypeScript
👾 Works with multiple forms
😎 Uses next/script
component
yarn add next-hubspot
or
npm install --save next-hubspot
This package is now pure ESM. It cannot be require()
'd from CommonJS.
Wrap your application with HubspotProvider
. This will add Hubspot script to your document.
All props are passed directly to the Script tag, so you can use all props from the next/script documentation.
import { HubspotProvider } from 'next-hubspot';
const MyApp = ({ Component, pageProps }) => (
<HubspotProvider>
<Component {...pageProps} />
</HubspotProvider>
)
import { useHubspotForm } from 'next-hubspot';
const HubspotForm = () => {
const { loaded, error, formCreated } = useHubspotForm({
portalId: 'XXXXXXX',
formId: 'XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX',
target: '#hubspot-form-wrapper'
});
return (
<div id="hubspot-form-wrapper" />
)
}
All props are based on the HubSpot docs.
- hubspot-form-if-im-using-an-external-site
- forms/advanced_form_options
- building-blocks/forms
- buildung-blocks/forms#using-embed-code
The module is written in TypeScript and type definitions are included.
Contributions, issues and feature requests are welcome!
Give a ⭐️ if you like this project!