Skip to content

Commit dbbda6b

Browse files
committed
docs: update README and add user documentation
1 parent c2b5eda commit dbbda6b

File tree

3 files changed

+76
-44
lines changed

3 files changed

+76
-44
lines changed

README.md

Lines changed: 19 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,39 @@
1-
# Arduino App CLI
1+
# arduino-app-cli
22

33
`arduino-app-cli` is a command line tool and a service running on Arduino UNO Q boards, that:
44

55
- manages and runs Arduino Apps on the board (both Linux and microcontroller parts)
66
- provides multiple APIs to perform actions and fetch data, used by the front-end (ArduinoAppsLab)
77
- auto-updates itself and other components
88

9-
## Environment Variables
9+
[![Test Go status](https://github.com/arduino/arduino-app-cli/actions/workflows/go-test.yml/badge.svg)](https://github.com/arduino/arduino-app-cli/actions/workflows/go-test.yml)
1010

11-
The following environment variables are used to configure `arduino-app-cli`:
11+
## Docs
12+
For guidance on installation and development, see the [User documentation].
1213

13-
### Application Directories
14+
## Quickstart
1415

15-
- **`ARDUINO_APP_CLI__APPS_DIR`** Path to the directory where Arduino Apps created by the user are stored.\
16-
**Default:** `/home/arduino/ArduinoApps`
16+
## How to contribute
1717

18-
- **`ARDUINO_APP_CLI__DATA_DIR`** Path to the directory where internal data is stored.\
19-
**Default:** `/home/arduino/.local/share/arduino-app-cli`\
20-
This folder contains:
21-
- **`examples/`** default example Apps (_e.g._ `/home/arduino/.local/share/arduino-app-cli/examples`)
22-
- **`assets/`** contains a subfolder for each asset version (_e.g._ `/home/arduino/.local/share/arduino-app-cli/assets/0.4.5`)
23-
- Each asset folder includes:
24-
- `bricks-list.yaml`
25-
- `models-list.yaml`
26-
- **other data** such as `properties.msgpack` containing variable values
2718

28-
- **`ARDUINO_APP_BRICKS__CUSTOM_MODEL_DIR`** Path to the directory where custom models are stored.\
29-
**Default:** `$HOME/.arduino-bricks/ei-models`\
30-
(_e.g._ `/home/arduino/.arduino-bricks/ei-models`)
3119

32-
---
20+
## Security
3321

34-
### Execution Settings
22+
If you think you found a vulnerability or other security-related bug in the Arduino CLI, please read our [security
23+
policy] and report the bug to our Security Team 🛡️ Thank you!
3524

36-
- **`ARDUINO_APP_CLI__ALLOW_ROOT`** Allow running `arduino-app-cli` as root.\
37-
**Default:** `false` **Not recommended to set to true.**
25+
e-mail contact: security@arduino.cc
3826

39-
---
27+
## License
4028

41-
### External Services
29+
Arduino CLI is licensed under the GPL-3.0 license.
4230

43-
- **`LIBRARIES_API_URL`** URL of the external service used to search libraries.\
44-
**Default:** `https://api2.arduino.cc/libraries/v1/libraries`
31+
You can be released from the requirements of the above license by purchasing a commercial license. Buying such a license
32+
is mandatory if you want to modify or otherwise use the software for commercial activities involving the Arduino
33+
software without disclosing the source code of your own applications. To purchase a commercial license, send an email to
34+
license@arduino.cc
4535

46-
---
4736

48-
### Docker Settings
49-
50-
- **`DOCKER_REGISTRY_BASE`** Docker registry used to pull images.\
51-
**Default:** `ghcr.io/arduino/`
52-
53-
- **`DOCKER_PYTHON_BASE_IMAGE`** Tag of the Docker image for the Python runner.\
54-
**Default:** `app-bricks/python-apps-base:<RUNNER_VERSION>`
55-
56-
### App folder and persistent data
57-
58-
When running an app, persistent files will be saved in the `data` folder inside the app folder; other supporting files, including the Python venv are saved in the `.cache` folder inside the app folder.
59-
60-
### Docker images registry
61-
62-
Arduino Apps bricks might required a docker image, in that case the orchestrator will pull those from the registry configured with the `DOCKER_REGISTRY_BASE` environment variable. By default this points to an Arduino GitHub Container Registry (ghcr.io/arduino).
63-
64-
The only image that needs to be referenced directly is the base Python image (`DOCKER_PYTHON_BASE_IMAGE`), all other containers can be downloaded automatically by the orchestrator depending on the bricks specified as dependencies in the app.yml file.
37+
[user documentation]: https://github.com/arduino/arduino-app-cli/docs/user-documentation.md
38+
[how to contribute]: https://arduino.github.io/arduino-app-cli/latest/CONTRIBUTING/
39+
[security policy]: https://github.com/arduino/arduino-app-cli/security/policy

docs/CONTRIBUTING.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
## TODO

docs/user-documentation.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
2+
## Environment Variables
3+
The following environment variables are used to configure `arduino-app-cli`:
4+
5+
### Application Directories
6+
7+
- **`ARDUINO_APP_CLI__APPS_DIR`** Path to the directory where Arduino Apps created by the user are stored.\
8+
**Default:** `/home/arduino/ArduinoApps`
9+
10+
- **`ARDUINO_APP_CLI__DATA_DIR`** Path to the directory where internal data is stored.\
11+
**Default:** `/home/arduino/.local/share/arduino-app-cli`\
12+
This folder contains:
13+
- **`examples/`** default example Apps (_e.g._ `/home/arduino/.local/share/arduino-app-cli/examples`)
14+
- **`assets/`** contains a subfolder for each asset version (_e.g._ `/home/arduino/.local/share/arduino-app-cli/assets/0.4.5`)
15+
- Each asset folder includes:
16+
- `bricks-list.yaml`
17+
- `models-list.yaml`
18+
- **other data** such as `properties.msgpack` containing variable values
19+
20+
- **`ARDUINO_APP_BRICKS__CUSTOM_MODEL_DIR`** Path to the directory where custom models are stored.\
21+
**Default:** `$HOME/.arduino-bricks/ei-models`\
22+
(_e.g._ `/home/arduino/.arduino-bricks/ei-models`)
23+
24+
---
25+
26+
### Execution Settings
27+
28+
- **`ARDUINO_APP_CLI__ALLOW_ROOT`** Allow running `arduino-app-cli` as root.\
29+
**Default:** `false` **Not recommended to set to true.**
30+
31+
---
32+
33+
### External Services
34+
35+
- **`LIBRARIES_API_URL`** URL of the external service used to search libraries.\
36+
**Default:** `https://api2.arduino.cc/libraries/v1/libraries`
37+
38+
---
39+
40+
### Docker Settings
41+
42+
- **`DOCKER_REGISTRY_BASE`** Docker registry used to pull images.\
43+
**Default:** `ghcr.io/arduino/`
44+
45+
- **`DOCKER_PYTHON_BASE_IMAGE`** Tag of the Docker image for the Python runner.\
46+
**Default:** `app-bricks/python-apps-base:<RUNNER_VERSION>`
47+
48+
### App folder and persistent data
49+
50+
When running an app, persistent files will be saved in the `data` folder inside the app folder; other supporting files, including the Python venv are saved in the `.cache` folder inside the app folder.
51+
52+
### Docker images registry
53+
54+
Arduino Apps bricks might required a docker image, in that case the orchestrator will pull those from the registry configured with the `DOCKER_REGISTRY_BASE` environment variable. By default this points to an Arduino GitHub Container Registry (ghcr.io/arduino).
55+
56+
The only image that needs to be referenced directly is the base Python image (`DOCKER_PYTHON_BASE_IMAGE`), all other containers can be downloaded automatically by the orchestrator depending on the bricks specified as dependencies in the app.yml file.

0 commit comments

Comments
 (0)