Skip to content

Commit f0fd99d

Browse files
authored
Merge pull request #778 from bitcraze/enya/install_doc_update
Small update in installation instructions
2 parents 6de7eef + 5dc8746 commit f0fd99d

1 file changed

Lines changed: 53 additions & 27 deletions

File tree

docs/installation/install.md

Lines changed: 53 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@ page_id: install
77

88
This project requires Python 3.10+.
99

10-
> **Recommendation**: Use a Python virtual environment to isolate dependencies. See the [official Python venv documentation](https://docs.python.org/3/library/venv.html) for setup instructions.
11-
1210
## Platform Prerequisites
1311

1412
### Ubuntu/Linux
@@ -61,44 +59,72 @@ The client requires Raspberry Pi Trixie or more recent. On Raspberry Pi Trixie i
6159

6260
USB permissions need to be set as described above for Ubuntu/Linux.
6361

64-
## Installation Methods
62+
## Installation
6563

66-
### From PyPI (Recommended)
64+
#### Which method should I choose?
65+
- **Just trying it out?** Use the Quick Start with `uvx`.
66+
- **Regular user?** Use Standard Installation.
67+
- **Developer?** Use Development Installation.
6768

68-
If you plan to use the client to control the Crazyflie, we highly recommend installing the latest release using pip, as this is well tested and stable:
69+
### Quick Start (Recommended)
6970

70-
```bash
71-
pip install cfclient
72-
```
71+
The easiest way to run the client is with `uvx`, which automatically handles installation and always runs the latest version:
7372

74-
For macOS specifically:
73+
1. Install `uv` by following the [official installation guide](https://docs.astral.sh/uv/getting-started/installation/).
74+
2. Run the client:
7575
```bash
76-
python3 -m pip install cfclient
76+
uvx cfclient
7777
```
7878

79-
The client can then be launched from a console with `cfclient` or `python3 -m cfclient.gui`.
79+
This method requires no manual installation or virtual environment setup. The client runs directly and cleans up afterward.
8080

81-
### From Source (Development)
81+
### Standard Installation
8282

83-
If you are planning to do development work with the cfclient, install from source.
83+
For regular use or if you prefer a permanent installation, install from PyPI using `pip`.
8484

85-
#### Clone the repository
86-
```bash
87-
git clone https://github.com/bitcraze/crazyflie-clients-python
88-
cd crazyflie-clients-python
89-
```
85+
1. Create and activate a Python virtual environment to isolate dependencies. See the [official Python venv documentation](https://docs.python.org/3/library/venv.html) for setup instructions.
86+
2. Install the client using pip, either by running:
87+
```bash
88+
pip install cfclient
89+
```
90+
or, for macOS specifically:
91+
```bash
92+
python3 -m pip install cfclient
93+
```
94+
3. After installation, run the client with:
95+
```bash
96+
cfclient
97+
```
98+
or
99+
```bash
100+
python3 -m cfclient.gui
101+
```
90102

91-
#### Install the client from source
103+
### Development Installation (From Source)
92104

93-
For basic installation:
94-
```bash
95-
pip install -e .
96-
```
105+
If you are planning to do development work with the cfclient, install from source.
97106

98-
For development (includes additional tools):
99-
```bash
100-
pip install -e .[dev]
101-
```
107+
1. Clone the repository
108+
109+
```bash
110+
git clone https://github.com/bitcraze/crazyflie-clients-python
111+
cd crazyflie-clients-python
112+
```
113+
2. Create and activate a Python virtual environment to isolate dependencies. See the [official Python venv documentation](https://docs.python.org/3/library/venv.html) for setup instructions.
114+
3. Install the client from source
115+
116+
For basic installation:
117+
```bash
118+
pip install -e .
119+
```
120+
For development (includes additional tools):
121+
```bash
122+
pip install -e .[dev]
123+
```
124+
4. After installation, run the client with:
125+
```bash
126+
cfclient
127+
```
102128

103129
**Note**: Avoid running pip with sudo, as this would install dependencies system-wide and could cause compatibility problems. If pip requests administrator password, you should run the command with `--user` (for example `python3 -m pip install --user -e .`). This should not be required on modern Python distributions though since the `--user` flag seems to be the default behavior.
104130

0 commit comments

Comments
 (0)