# arduino-cli-interactive

> Interactive TUI wrapper for arduino-cli providing menu-driven Arduino development workflows

Stars: 44 · Language: Shell · License: Apache-2.0 · Categories: Dev Tools · Status: archived

- Repository: https://github.com/Vaishnav-Sabari-Girish/arduino-cli-interactive
- Website: http://vaishnav.world/arduino-cli-interactive/
- Page: https://www.trmn.sh/tools/arduino-cli-interactive

## Install

- Homebrew: `brew install vaishnav-sabari-girish/arduino-cli-interactive/aci`
- Basher: `basher install Vaishnav-Sabari-Girish/arduino-cli-interactive`
- Try without install: `curl -sSL https://raw.githubusercontent.com/Vaishnav-Sabari-Girish/arduino-cli-interactive/refs/heads/main/bash_shell_script/main.sh | bash`

## Overview

Arduino Interactive CLI (aci) is a terminal-based wrapper that adds a menu-driven interface to arduino-cli. It provides an interactive TUI experience for Arduino development tasks including board management, sketch operations, library management, and serial monitoring. The tool handles core functionality like creating and compiling sketches, uploading to boards with bootloader support, installing libraries from the Arduino ecosystem, and managing cores for ESP8266, ESP32, and other third-party boards.

The tool targets developers transitioning from Arduino IDE to command-line workflows, offering the efficiency of arduino-cli without requiring memorization of complex command syntax. It includes auto-dependency management, built-in examples for beginners, and supports common Arduino development tasks through an intuitive menu system. The tool requires arduino-cli, gum (TUI framework), and timer as dependencies, with Homebrew installation handling these automatically.

aci is implemented as a Bash script and supports installation via Homebrew, Basher package manager, or direct source installation. It includes features like automatic core installation suggestions, library search and compilation, and integrated serial communication capabilities added in version 1.0.3.

### Installation

```bash
# via Homebrew
brew install vaishnav-sabari-girish/arduino-cli-interactive/aci
```

```bash
# via Basher
basher install Vaishnav-Sabari-Girish/arduino-cli-interactive
```

```bash
# via Try without install
curl -sSL https://raw.githubusercontent.com/Vaishnav-Sabari-Girish/arduino-cli-interactive/refs/heads/main/bash_shell_script/main.sh | bash
```

![Arduino CLI Interactive demo](https://media.trmn.sh/cached/fde7e2ab329e8d8079b28cc2c261bd1b1bd1b1aca3dc07bd8bb461c665cfd43e.gif)

## Alternatives

- [Bats-core](https://www.trmn.sh/tools/bats-core.md): TAP-compliant testing framework for Bash 3.2+ that runs test cases written as Bash functions to verify Bash scripts and other UNIX programs. (Shell, 6.3k stars)
- [lazycelery](https://www.trmn.sh/tools/lazycelery.md): Terminal UI for monitoring and managing Celery workers, queues, and tasks with real-time updates and keyboard navigation. (Rust, 56 stars)
- [cloctui](https://www.trmn.sh/tools/cloctui.md): Terminal UI for CLOC code analysis tool that displays line counts and statistics in an interactive table (59 stars)
- [dotenvhub](https://www.trmn.sh/tools/dotenvhub.md): TUI application for centralized management and deployment of .env files across projects (61 stars)
- [peplum](https://www.trmn.sh/tools/peplum.md): Terminal-based browser and search interface for Python Enhancement Proposals (PEPs) (Python, 27 stars)

---

Canonical: https://www.trmn.sh/tools/arduino-cli-interactive
