---
# System prepended metadata

title: Installation

---

# Installation

    # Prerequirements

    - [ ] [Visual Studio Code](https://code.visualstudio.com/download)
    - [ ] [Docker Desktop](https://www.docker.com/products/docker-desktop)

# Setup

## Install `Dev Container` Extension
![](https://hackmd.io/_uploads/rJwLy0YLh.jpg)
Just search in Marketplace for `Dev Containers` from `Microsoft` developer

## Check Docker Desktop Resources available
![](https://hackmd.io/_uploads/HJwPkRtI2.jpg)
There should be at least:
```    
CPUs: 4
RAM: 8.0 GB
```

## Copy .env file

Run `Terminal` in project root folder and execute the following command:
```
cd .devcontainer && cp .env.example .env
```

## Build and Run in Container (cold start)
![](https://hackmd.io/_uploads/BJzn10YUn.jpg)
Open Command Palette (`CMD + Shift + P`) and type `Rebuild and Reopen` then select `Dev Containers: Rebuild and Reopen in Container`


### After building Container (warm start)
There will be another option available named `Reopen in Container` and a simple notice about that with the same button
![](https://hackmd.io/_uploads/BJb5rRK8h.jpg)


## Wait for installation to complete
![](https://hackmd.io/_uploads/r1rGlRtI3.jpg)
You could check installation progress by clicking on status title (`Reading Dev Container Configuration`)

There will be a lot of logs about downloading Docker images and then installing third-party dependencies with `yarn` etc.

![](https://hackmd.io/_uploads/HJ9J-RFLh.jpg)
After that message integrated terminals could be closed

## Start development environment
Open new integrated terminal and start development environment by typing `yarn start`
![](https://hackmd.io/_uploads/HyXXWRK8h.jpg)

It will start (after a while):
```
:3000 — backend     (main web app contains API and processing through workers)
:3001 — frontend    (simple react app that calls backend with graphql)
:3002 — docs        (static pages built with vitepress)
```
Available in your host's network with `localhost` address


## Login with demo account
Open page at `localhost:3001` and login using following credentials:
```
login: user@automatisch.io
password: sample
```
![](https://hackmd.io/_uploads/H1tGGCtIh.jpg)


# Flow (example)

## Create a new Flow
Just by clicking on placeholder container with `+` sign or `Create flow` button at the top-right corner
![](https://hackmd.io/_uploads/B1HdMCt8h.jpg)

## Add a Webhook Trigger
Search for `Webhook` application in the list of available triggers
![](https://hackmd.io/_uploads/Hkehz0YUh.jpg)

Configure it and copy Webhook URL
![](https://hackmd.io/_uploads/BkoafAKIn.jpg)

## Call webhook trigger
Open Terminal and by using `curl` utility "call" the copied URL
![](https://hackmd.io/_uploads/B1jgXRKL3.jpg)

Now we should press `Test & Continue` and see the sample data passed from `curl` previously. We could pass any kind of data with `POST` method and `body` from `curl` utility
![](https://hackmd.io/_uploads/BJRE7CFU2.jpg)

## Perform actions
Do anything you want with available apps. The webhook trigger one of the most simplest way to test apps and call Flows. Just because you have full control of input data and calls.

## Publish Flow
To be able to call full Flow execution process it should be published
![](https://hackmd.io/_uploads/B1uEE0FIn.jpg)

## Executions
The list of Flow executions (including passed data and output results) could be found at corresponding page
![](https://hackmd.io/_uploads/ByDgBRYU3.jpg)


# Application development

- [Application development in details](https://automatisch.io/docs/build-integrations/folder-structure)