Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DOCS-1111: Add virtualenv instructions for Python SDK #1830

70 changes: 70 additions & 0 deletions docs/program/python-venv.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
---
title: "Prepare your Python Virtual Environment"
linkTitle: "Prepare your Python Virtualenv for Viam"
sguequierre marked this conversation as resolved.
Show resolved Hide resolved
weight: 10
type: "docs"
description: "Prepare your Python Virtual Environment to program machines with the Python SDK."
images: ["/services/icons/sdk.svg"]
tags: ["client", "sdk", "application", "sdk", "fleet", "program", "python", "venv"]
---

To manage Python packages for your Viam application, it is recommended that you use a virtual environment, or `venv`.
By using a `venv`, you can install Python packages like Viam's client SDK just within the virtual environment, and not globally, which could cause conflicts with other projects or cause issues within your system.
sguequierre marked this conversation as resolved.
Show resolved Hide resolved

Follow this guide to set up a fresh virtual environment on your working computer and install the Python SDK as a requirement for your Viam client application.

## Setup your project

First, create a directory to house your project.
sguequierre marked this conversation as resolved.
Show resolved Hide resolved
For example, name your directory `viam-python`:

```bash
sguequierre marked this conversation as resolved.
Show resolved Hide resolved
mkdir viam-python
cd viam-python
```

## Create and Activate a Virtual Environment

Now that you are in the project directory, create and activate a virtual environment for Python to run in.
sguequierre marked this conversation as resolved.
Show resolved Hide resolved

```bash
python3 -m venv viam-env
source viam-env/bin/activate
```

Now, `(viam-env)` prepends the commands in your terminal window to indicate the Python packages being used are from this particular environment.
You can exit this environment by running `deactivate`.

## Install Viam

Inside the activated `viam-env` python environment, you can now install the Viam SDK:

```bash
pip3 install viam-sdk
```

This will install Viam and all required dependencies.
sguequierre marked this conversation as resolved.
Show resolved Hide resolved

Should you need to install your own requirements, be sure to do so in this virtual environment.
sguequierre marked this conversation as resolved.
Show resolved Hide resolved
If you have more requirements, you can [create a](https://openclassrooms.com/en/courses/6900846-set-up-a-python-environment/6990546-manage-virtual-environments-using-requirements-files) <file>requirements.txt</file> with all the packages you need and then install the requirements for your client application by running `pip3 install -r requirements.txt`.
sguequierre marked this conversation as resolved.
Show resolved Hide resolved

## Setup your IDE

You'll now want to point your IDE to use the python interpreter of your new environment, rather than the default interpreter, likely the global python interpreter.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

avoid future tense - instead explain why they want that "If you awnt to ... then"

sguequierre marked this conversation as resolved.
Show resolved Hide resolved

The following steps are for VS Code.
If you're not using VS Code, please read your IDE's documentation on selecting python interpreters.

1. Open the `viam-python` directory in VS Code
1. Open the Command Palette (using `⇧⌘P` or through the menus View -> Command Palette)
1. Select the command `Python: Select Interpreter`.
There, you should see all the interpreters available to you.
You're looking for the on you just made: `viam-env`.
It will look something like: `Python 3.XX.X ('viam-env': venv) ./viam-env/bin/python`.
If you don't see it, click the `Refresh` icon on the top right of the Command Palette.
sguequierre marked this conversation as resolved.
Show resolved Hide resolved

Your IDE will now recognize all packages installed in this environment.
npentrel marked this conversation as resolved.
Show resolved Hide resolved

## Start building

You are now ready to start using Viam's Python SDK!
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should instead point the user to the next step. Probably back to the /program page where they can get the code sample

sguequierre marked this conversation as resolved.
Show resolved Hide resolved
Loading