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

# Setting Up your Tutorial Environment

In this step you will setup the environment needed for running the tutorial and using Elementary.

## Before you start:

<Info>
  **Prerequisites**

  For the tutorial you will need:

  1. A working Python installation
  2. [pip installer](https://pip.pypa.io/en/stable/) for Python
  3. Access and credentials to a data warehouse supported by Elementary

  We also recommend you work with a [Python virtual environment](https://docs.python.org/3/library/venv.html).
</Info>

## Setting Up Your Tutorial Project:

<Accordion title="dbt core">
  ### 1. Initialize a New dbt Project:

  Name the project `elementary_tutorial`:

  ```shell theme={null}
  dbt init elementary_tutorial
  ```

  Ensure that you have a working connection to your DWH. To troubleshoot, you can run **dbt debug**.

  ### 2. Download tutorial sample data and models

  We created a dbt project and sample data for the tutorial.
  [Download the files here](https://github.com/elementary-data/elementary-tutorial/archive/refs/heads/main.zip).

  ### 3. Copy files to the `elementary_tutorial` project

  Copy the following downloaded directories to your local `elementary_tutorial` project:

  * Replace the `/seeds` folder in the project with the downloaded `/seeds` directory.
  * Replace the `/models` folder in the project with the downloaded `/models` directory.

  ### 4. Seed Data to the DWH

  Populate the sample data:

  ```shell theme={null}
  dbt seed
  ```
</Accordion>

<br />

<Accordion title="dbt cloud">
  #### 1. Fork the Elementary Tutorial Repo

  We created a dbt project to help us with the tutorial.
  The project is an extended version of the dbt **jaffle shop** project.
  It contains seeds and models that we will use to run Elementary's tests on, and collect artifacts.

  In order to load the tutorial project into your dbt cloud environment, you need to fork the repo and connect a new project to it.

  To fork the the tutorial repo, go to the [tutorial repo](https://github.com/elementary-data/tutorial) and click on the `fork` button.

  #### 2. Create a new dbt Project

  To create a new project in dbt cloud, go to `Account Settings` and click on the `New Project` button under the `Projects` section.<br /> Create a new project named `elementary_tutorial`.

  <Warning>**Make sure you name the project `elementary_tutorial`.**</Warning>

  #### 3. Connect to the Tutorial Repo

  Connect to the forked repository.

  #### 4. Seed Data to our DWH

  After creating a branch, we will populate our DWH with the sample data:

  ```shell theme={null}
  dbt seed
  ```
</Accordion>

<br />

**Now, let's add Elementary's package into our project.**
