> For the complete documentation index, see [llms.txt](https://docs.nosto.com/ugc/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.nosto.com/ugc/guides/widgets-nextgen/widget-creation-guides/creating-your-first-widget/creating-a-widget-from-blank-canvas-developer-guide/creating-a-new-widget.md).

# Creating a new widget

{% hint style="warning" %}
You are reading the **NextGen Documentation**

**NextGen widgets** are a new and improved way to display UGC content onsite.&#x20;

From September 23rd 2025, all new widgets created will be NextGen.

Please check your widget version on the **Widget List page** to see if it is a **Classic** or **NextGen** widget.

You can read the [Classic Widget Documentation](/ugc/guides/onsite-widgets.md) here.

**Note: This feature is unique to NextGen widgets**
{% endhint %}

The `loadWidget` function is used to initialise and configure a widget in your application. It takes an optional `settings` object as a parameter, which allows you to customise the widget's behavior.

Please utilise the guides below to understand what customisations are supported more specifically

{% content-ref url="/pages/pYodlWPbPNWLkZv0LoeC" %}
[Features](/ugc/guides/widgets-nextgen/widget-creation-guides/creating-your-first-widget/creating-a-widget-from-blank-canvas-developer-guide/creating-a-new-widget/features.md)
{% endcontent-ref %}

{% content-ref url="/pages/hI915vs63FSIDl7xoUMN" %}
[Event Listeners](/ugc/guides/widgets-nextgen/widget-creation-guides/creating-your-first-widget/creating-a-widget-from-blank-canvas-developer-guide/creating-a-new-widget/event-listeners.md)
{% endcontent-ref %}

{% content-ref url="/pages/B2GtEKVjYu7IyE8tRogt" %}
[Templates](/ugc/guides/widgets-nextgen/widget-creation-guides/creating-your-first-widget/creating-a-widget-from-blank-canvas-developer-guide/creating-a-new-widget/templates.md)
{% endcontent-ref %}
