# Installing

## **Installing CogniBlocks**

CogniBlocks can be installed via `pip` or by downloading the standalone application (**coming soon**). To use CogniBlocks, you must have **Docker** installed and ensure **Kubernetes** is enabled.

Follow the steps below to **set up your AI development environment** with CogniBlocks!

***

### **Step 1: Set Up Docker and Kubernetes**

To run CogniBlocks, you need a container runtime with **Kubernetes support**. The easiest way to achieve this is by installing **Docker Desktop** or an alternative runtime.

* Download and install **Docker Desktop** from the official website.
* Enable **Kubernetes** in Docker’s settings.

> **Tip:** For **macOS users**, we recommend **OrbStack** for superior performance and efficiency.\
> **Optimization Tip:** To enhance performance, disable **SBOM indexing** in Docker Desktop.

#### **Alternative: Use Minikube**

If enabling Kubernetes directly isn’t feasible, you can install **Minikube** as an alternative. After installation, verify your setup with:

```bash
bashCopyEditminikube version
```

***

### **Step 2: Install CogniBlocks**

You can install **CogniBlocks** either by downloading the application (**coming soon**) or by using the **Python package** via `pip`.

#### **Option 1: Install via pip**

To install CogniBlocks using `pip`, run the following command in your terminal:

```bash
bashCopyEditpip install cogniblocks
```

#### **Option 2: Install from Source**

Clone the **CogniBlocks GitHub repository** and install manually:

```bash
bashCopyEditgit clone https://github.com/cogniblocks/cogniblocks
cd cogniblocks
pip install .
```

***

### **Step 3: Download the CogniBlocks Application (Coming Soon)**

For an interactive setup, you will soon be able to download the **CogniBlocks application** for Windows, macOS, and Linux.

| Windows     | macOS       | Linux       |
| ----------- | ----------- | ----------- |
| Coming Soon | Coming Soon | Coming Soon |

***

### **Launching CogniBlocks**

Once installed, you can launch CogniBlocks using either of the following methods:

#### **If installed via an application:**

Simply open the **CogniBlocks** app.

#### **If installed via pip:**

Run CogniBlocks using one of these commands:

```bash
bashCopyEditcogniblocks launch
```

or launch it within Python:

```python
pythonCopyEditimport cogniblocks
cogniblocks.launch()
```

🚀 **You're now ready to build and deploy your first AI workflow with CogniBlocks!**

***

### **Managing Your CogniBlocks Environment**

#### **Shutting Down CogniBlocks**

To stop all running containers, enter:

```bash
bashCopyEditcogniblocks teardown
```

#### **Manual Setup for Developers**

CogniBlocks automatically sets up required containers during installation. However, developers who need manual control can initialize them using:

```bash
bashCopyEditcogniblocks setup
```

#### **Stopping CogniBlocks (pip installation users)**

If running CogniBlocks via `pip`, you can stop it at any time by pressing **Ctrl + C** in your terminal.\
⚠️ **Important:** Press the key combination **only once** to avoid unintended interruptions. You will be prompted to confirm whether you want to shut down your containers.
