
## Set up your development environment

URL: https://docs.atlan.com/product/capabilities/build-apps/tutorials/set-up-development-environment

> Install the App Framework Python package and prepare your local environment to build and run Atlan apps.

Before you can build an app, you need the right tools in place—think of this as setting up your workshop before you start building. This tutorial walks you through installing the tools you need to run, modify, and extend the Hello World app.

 🎓

What you learn here: How to install the three tools that the Quickstart uses. By the end, your environment is ready to clone, run, and extend the Hello World app.

Follow each section in order. This tutorial explains what each piece does and why you need it—by the end, everything is in place for the next tutorial.

## Prerequisites

You need three tools before you can start:

 <img src="https://cdn.jsdelivr.net/gh/devicons/devicon/icons/git/git-original.svg" alt="Git" style={{width: "48px", height: "48px"}} />

### Git

Used to clone the Hello World repo. Most systems have it pre-installed.

 <img src="https://avatars.githubusercontent.com/u/115962839?s=200&v=4" alt="uv" style={{width: "48px", height: "48px"}} />

### uv 0.7.3+

Installs dependencies and runs the app. Also manages the Python toolchain for you — no separate Python install needed.

 <img src="https://pkl-lang.org/_/img/favicon.svg" alt="Pkl" style={{width: "48px", height: "48px"}} />

### Pkl CLI

Used in Build your first app to regenerate the app's input schema after editing contract/app.pkl . Not needed to run the app.

## Prepare your environment

### Verify Git

Git is a version control system you need to download sample applications and manage your code. Most systems have Git pre-installed, but first verify it's available:

- **Check if Git is already installed**: Run this command in your terminal:

 ```bash
 git --version
 ```

- **If Git isn't installed**, download and install it from [git-scm.com](https://git-scm.com/downloads) for your operating system.

With Git ready, you can now install the other development tools.

### Install tools

The install varies by operating system—choose your platform below and follow the steps in order. This usually takes a few minutes depending on your internet connection. Getting this foundation right means you can focus on the fun part: building your first app.

### macOS

Your Mac needs these tools installed in a specific order. Follow the sequence exactly as shown.

1. **Install Homebrew**: The package manager for macOS—makes installing everything else a single command.

 ```bash
 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
 ```

 Follow any post-installation instructions printed in your terminal.

2. **Install uv**: Manages dependencies and runs project scripts. Also downloads and manages Python for you.

 ```bash
 brew install uv
 ```

3. **Install Pkl CLI**: Needed to regenerate the app's input schema in [Build your first app](./build-first-app.md).

 ```bash
 brew install pkl
 ```

### Linux

These instructions work for Ubuntu, Debian, and most other distributions. Follow each step in order.

1. **Install system dependencies**: Build tools and libraries needed before installing the main tools.

 ```bash
 sudo apt-get update
 sudo apt-get install -y make build-essential libssl-dev zlib1g-dev \
 libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \
 libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev \
 liblzma-dev
 ```

2. **Install uv**: Manages dependencies and runs project scripts. Also downloads and manages Python for you.

 ```bash
 curl -LsSf https://astral.sh/uv/0.7.3/install.sh | sh
 ```

3. **Install Pkl CLI**: Needed to regenerate the app's input schema in [Build your first app](./build-first-app.md). See the [Pkl installation guide](https://pkl-lang.org/main/current/pkl-cli/index.html) for the latest Linux instructions.

### Windows

Windows uses PowerShell for installation. Follow each step in order.

1. **Run PowerShell as Administrator**: Right-click the Start button, select *Windows PowerShell (Admin)* or *Terminal (Admin)*, and click **Yes** when prompted.

2. **Install uv**: Manages dependencies and runs project scripts. Also downloads and manages Python for you.

 ```powershell
 powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/0.7.3/install.ps1 | iex"
 ```

3. **Install Pkl CLI**: Needed to regenerate the app's input schema in [Build your first app](./build-first-app.md). See the [Pkl installation guide](https://pkl-lang.org/main/current/pkl-cli/index.html) for Windows instructions.

## Verify your environment

Open your terminal (or Command Prompt on Windows) and run these commands to confirm each tool is installed. Seeing a version number means it's ready.

- **Check uv:**

 ```bash
 uv --version
 ```

- **Check Pkl:**

 ```bash
 pkl --version
 ```

> **Something not working?** If any command fails or shows an error, review the install steps for your operating system. Don't continue until all commands work properly.

> **What about Python?** `uv` automatically downloads and manages Python when you install project dependencies in the next tutorial — no separate Python install needed.

If all commands showed version numbers, your environment is ready.

 🎉

Congratulations! Setting up a development environment can feel like a lot of steps, but you're through it. Your machine is ready to clone, run, and extend the Hello World app.

## What's next

Your environment is set up and ready.

**Next tutorial:** [Run your first sample app](./run-sample-app.md): clone the Hello World app, run it in two commands, and read the code to understand how it works.

---
