> ## Documentation Index
> Fetch the complete documentation index at: https://docs.blinkops.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Creating a Simple Workflow: Hello World

> Create a simple Hello World workflow using Bash and Python with input parameters and step references in Blink.

## Prerequisites

* A Blink account. Sign up [here](https://app.blinkops.com).

## Creating a New Pack

A Pack is a collection of Automated Workflows. If you already have a Pack you can open it and skip ahead to [creating a new Workflow](#creating-a-new-workflow).
If you don't have an existing pack, follow these steps:

1. Navigate to the **Workflow** page in your **Workspace**.

2. In the left-hand sidebar, click the **"+"** icon

3. Fill in the necessary details:

   **Pack name**: *My first Pack*
   **Description**: *This is a Pack*.

4. Then click the **Create** button. The new Pack is displayed on your Workflow's screen.

<iframe src="https://demo.arcade.software/Qzy6knbENyi9bDvlmAKG?embed&show_copy_link=true" title="Creating a Pack" frameborder="0" loading="lazy" allowfullscreen="" allow="clipboard-write" class="iframe-webhook" width="100%" height="380" />

## Creating a New Workflow

1. Click **Create Workflow**.
2. Enter the parameters:
   * **Workflow Name**: *Hello World*
   * **Workflow description**: *This is Hello World*
   * **Tags**: *Demo*, *Hello World*
3. Select a [Trigger Type](/docs/workflows/building-workflows/triggers): [On-Demand](/docs/workflows/building-workflows/triggers/on-demand-triggers)
4. Click **Create Workflow**. You will be redirected to the **Editor page** of the Workflow.

<iframe src="https://demo.arcade.software/H4Yw8hpKF1C5rOmvzHPz?embed&show_copy_link=true" title="Creating a Workflow" frameborder="0" loading="lazy" allowfullscreen="" allow="clipboard-write" class="iframe-webhook" width="100%" height="380" />

## Workflow Step: Printing Hello World

1. Click to open the **Action panel**. Alternatively, you can drag Actions to your flow, from the menu on the left side of your **Edit** screen.
2. Search and select the Run Bash Script Action.
3. Enter the following code in your Step:
   * echo "Hello World"
4. Test the Step by clicking **Test run**. In the **Output** field you will see Hello World. *COMPLETED* appears on the right side of the Step, indicating the Step has succeeded.

<iframe src="https://demo.arcade.software/bQN8hqBLIbwSZqu7ONFG?embed&show_copy_link=true" title="Hello World - Blink" frameborder="0" loading="lazy" allowfullscreen="" allow="clipboard-write" class="iframe-webhook" width="100%" height="380" />

## Workflow Step: Printing Hello World using Input Parameters

The same Workflow Step can be created using [input parameters](/docs/workflows/building-workflows/triggers/on-demand-triggers/input-parameters).

### Setting Input Parameters

1. In the Workflow editor, click the **+** icon.

2. Enter the parameters:

| Parameter          | Description       |
| ------------------ | ----------------- |
| Parameter Name     | Name              |
| Parameter Type     | Text              |
| Required Parameter | Check the box     |
| Display Name       | Name              |
| Placeholder        | Name for greeting |
| Default Value      | Jon               |

3. Click "Apply". The parameters are displayed under "Input Parameters".

<iframe src="https://demo.arcade.software/IyXuWO30VZROw471p224?embed&show_copy_link=true" title="Workflow Step: Printing Hello World using Input Parameters" frameborder="0" loading="lazy" allowfullscreen="" allow="clipboard-write" class="iframe-webhook" width="100%" height="380" />

### Updating the Step

1. Click to open the **Action panel**. Alternatively, you can drag Actions to your flow, from the menu on the left side of your **Edit** screen.
2. Search and select the Bash Action.
3. Enter the following parameters in your Step.
4. Click on **Action #1** to change the name of the action to *Print hello world*.
5. Enter the following code: echo \{\{inputs.user\_name}}
6. Test the Step by clicking **Test run**.
7. Enter the input parameter **Name**: *Jon*. In the **Output** field you will see **`hello Jon`**.
8. "COMPLETED" appears on the right-hand side of the Step, indicating the Step has succeeded.

<iframe src="https://demo.arcade.software/TLiF5atGRON9Ali2rfIc?embed&show_copy_link=true" title="Updating the Step" frameborder="0" loading="lazy" allowfullscreen="" allow="clipboard-write" class="iframe-webhook" width="100%" height="380" />

## Workflow Step: Printing Hello World using Python and Input Parameters

The same Workflow Step can be created using python. In Python action, you can access [the context object dictionary](/docs/workflows/building-workflows/dynamic-variables/expression-language/workflow-engine-variables) and get values from input parameters, variables and Step outputs.

1. Click to open the **Action panel**. Alternatively, you can drag Actions to your flow, from the menu on the left side of your **Edit** screen.

2. Search and select the Python Action.

3. Enter the following parameters in your Step.

4. Click on **Action #2** to change the name of the action to *Print hello world using Python*.

5. Enter the following code:

   * `print("hello" + context.inputs.name)`
   * `print(context.steps.s1.output)`

6. Test the Step by clicking **Test run**.

7. Enter the input parameter "Name": *Jon*. In the **Output** field you will see:

```Bash theme={"dark"}
hello Jon
Hello Jon
```

8. "COMPLETED" appears on the right-hand side of the Step, indicating the Step has succeeded. The Step took the input parameter and the output from the previous Step to produce the output.

<Frame>
  <img src="https://mintlify.s3.us-west-1.amazonaws.com/blinkops-2/img/helloworldpython.png" />
</Frame>

## Running the Workflow

The Workflow can be run in several ways:

* Manually in an interactive session: While creating a Workflow we start a session and run steps or sections one by one, so we can edit them and rerun them in the same session.
* Manually in a non-interactive session: This is when you run the entire workflow. This can be triggered from the Workflow page by clicking on **Run All** button or from the Workflow page.
