# Manage component

## Design a component

Components are developed in the Designer in the same way as applications. A component must have an end step.

### Define component input

Input to the component is defined in the start step of the component by specifying parameters with FlowScript, a name and data type.

<figure><img src="/files/CoFb13idfp6Ci1TkRX9v" alt=""><figcaption></figcaption></figure>

### Define component output

Output from a component is defined in the end step by selecting from a list of available variables.

<figure><img src="/files/8lDKBZBY2jM7XBHXdEsy" alt=""><figcaption></figcaption></figure>

## Commit a component

A component needs to be committed before it can be used in an application. Click on the Commit button in the top right corner and enter a commit message.

## Use a component in an application

Components are displayed at the bottom of the Steps panel in the Designer interface. To incorporate a component into your application, simply drag and drop it from the panel onto the application canvas. Once placed, establish connections between the component and other steps within the application using sequence arrows, following the same procedure as with other steps.

Configure the component by assigning a target variable, which will store the output generated by the component. If the component requires input variables, these are specified using FlowScript.

In this example, the **Get User Defaults** component requires **AppOwner** and **RunAs**, for which we assign values to variables with the same name within our application.

<figure><img src="/files/JCAqm3nptnTktjRi2iHj" alt=""><figcaption></figcaption></figure>

## Component dependencies

When a component (or other asset) is used in an application it will always use the latest committed version of the component when it's running in Development environment.&#x20;

When the application is committed, the version of the component will be fixed, ensuring it remains unaffected by subsequent changes to later versions of the component.

<div align="left"><figure><img src="/files/X1zFPtwzbp930mno8dtC" alt=""><figcaption></figcaption></figure></div>

When deploying an application version, it will include the precise component version that was in use at the time of the commit.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.novacura.com/flow-connect/working-with-connect/create-and-design/components/manage-component.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
