> For the complete documentation index, see [llms.txt](https://rahuls-organization-17.gitbook.io/handshake/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://rahuls-organization-17.gitbook.io/handshake/installation.md).

# Installation

Installation Process

To set up Handshake, you need to install our `handshake` package (python-build), assuming you are already familiar with the build process. Before configuring a reporter specific to your framework, please complete the following general setup steps:

1. **Download Python**: Download Python version 3.11 or the latest 3.12 from python.org/downloads.
2. **Set Up Virtual Environment**: It is recommended that a virtual environment be set up to prevent global package conflicts. Guide: Creating Virtual Environments

   bash

   <pre class="language-bash"><code class="lang-bash"><strong>python -m venv [your-env-name]
   </strong></code></pre>
3. **Activate Virtual Environment**:
   * On Windows:

     bash

     ```bash
     [venv-path]\Scripts\activate
     ```
   * On Unix or macOS:

     bash

     ```bash
     source [venv-path]/bin/activate
     ```
4. **Install Handshake**:

   bash

   ```bash
   pip install handshakes
   ```
5. **Verify Installation**: To ensure everything is set up correctly, run the following command in your terminal:

   bash

   ```bash
   handshake v
   ```

   You should see a message like this:

   ```bash
   Output: handshake, version 0.3.8, DB: 7
   ```

{% hint style="info" %}
Activating Venv is necessary to connect with Handshake. Always run your tests in a terminal where this Venv is activated&#x20;
{% endhint %}

### Extras

***

There are a few optional packages needed to enable extra features

| Feature Name | What's it                                                 | Example                                                                                    |
| ------------ | --------------------------------------------------------- | ------------------------------------------------------------------------------------------ |
| excel-export | Allows us to export the test results to excel report      | `handshake patch TestResults --xlsx`                                                       |
| print-tables | allows us to query the test results from the command line | `handshake db TestResults -q "select started, eneded, standing, projectName from runbase"` |

***

And there you have it! 🚀

The rest of the installation process is framework-specific. You can find the detailed steps for your specific framework on the next page.
