|
3 | 3 | The Arduino CLI is an open source Command Line Application written in [Golang] that can be used from a terminal to
|
4 | 4 | compile, verify and upload sketches to Arduino boards and that’s capable of managing all the software and tools needed
|
5 | 5 | in the process. But don’t get fooled by its name: Arduino CLI can do much more than the average console application, as
|
6 |
| -shown by the [Arduino Pro IDE] and [Arduino Cloud], which rely on it for similar purposes but each one in a completely |
7 |
| -different way from the other. In this article we introduce the three pillars of the Arduino CLI, explaining how we |
8 |
| -designed the software so that it can be effectively leveraged under different scenarios. |
| 6 | +shown by [Arduino IDE 2.x][arduino ide 2.x] and [Arduino Cloud], which rely on it for similar purposes but each one in a |
| 7 | +completely different way from the other. In this article we introduce the three pillars of the Arduino CLI, explaining |
| 8 | +how we designed the software so that it can be effectively leveraged under different scenarios. |
9 | 9 |
|
10 | 10 | ## The first pillar: command line interface
|
11 | 11 |
|
@@ -57,10 +57,10 @@ instance:
|
57 | 57 |
|
58 | 58 | gRPC is language agnostic: even if the example is written in Golang, the programming language used for the client can be
|
59 | 59 | Python, JavaScript or any of the many [supported ones][grpc supported languages], leading to a variety of possible
|
60 |
| -scenarios. The new [Arduino Pro IDE] is a good example of how to leverage the daemon mode of the Arduino CLI with a |
61 |
| -clean separation of concerns: the Pro IDE knows nothing about how to download a core, compile a sketch or talk to an |
| 60 | +scenarios. [Arduino IDE 2.x][arduino ide 2.x] is a good example of how to leverage the daemon mode of the Arduino CLI |
| 61 | +with a clean separation of concerns: the IDE knows nothing about how to download a core, compile a sketch or talk to an |
62 | 62 | Arduino board and it demands all these features of an Arduino CLI instance. Conversely, the Arduino CLI doesn’t even
|
63 |
| -know that the client that’s connected is the Pro IDE, and neither does it care. |
| 63 | +know that the client that’s connected is the Arduino IDE, and neither does it care. |
64 | 64 |
|
65 | 65 | For more information on Arduino CLI's gRPC interface, see the [gRPC interface reference].
|
66 | 66 |
|
@@ -88,7 +88,7 @@ designed the low level API, have a look at the [commands package] and don’t he
|
88 | 88 | tracker] if you’ve got a use case that doesn’t fit one of the three pillars.
|
89 | 89 |
|
90 | 90 | [golang]: https://go.dev/
|
91 |
| -[arduino pro ide]: https://www.arduino.cc/pro/arduino-pro-ide |
| 91 | +[arduino ide 2.x]: https://github.com/arduino/arduino-ide |
92 | 92 | [arduino cloud]: https://cloud.arduino.cc/home
|
93 | 93 | [continuous integration]: https://en.wikipedia.org/wiki/Continuous_integration
|
94 | 94 | [continuous deployment]: https://en.wikipedia.org/wiki/Continuous_deployment
|
|
0 commit comments