Quick Start

PlatformIO Library Manager is a tool for managing libraries of PlatformIO Registry and VCS repositories (Git, Hg, SVN). It makes it exceedingly simple to find, install and keep libraries up-to-date. PlatformIO Library Manager supports Semantic Versioning and its rules.

There are 3 options how to find/manage libraries:

You can manage different library storages using pio lib --global or pio lib --storage-dir options. If you change current working directory in terminal to project folder, then pio lib command will manage automatically dependency storage in libdeps_dir.

Project dependencies

PlatformIO Library Manager allows one to specify project dependencies (lib_deps) that will be installed automatically per project before environment processing. You do not need to install libraries manually. The only one simple step is to define dependencies in “platformio.ini” (Project Configuration File). For example,

[env:myenv]
platform = ...
framework = ...
board = ...
lib_deps =
  knolleary/PubSubClient
  bblanchon/ArduinoJson @ ~5,!=5.4
  https://github.com/gioblu/PJON.git#v2.0
  https://github.com/me-no-dev/ESPAsyncTCP.git
  https://github.com/adafruit/DHT-sensor-library/archive/master.zip

Please follow to pio lib install for detailed documentation about possible values.

Warning

If some libraries are not visible in PlatformIO IDE and Code Completion or Code Linting does not work properly, please perform

  • VSCode: “Menu: View > Command Palette… > PlatformIO: Rebuild C/C++ Project Index”

PlatformIO IDE

PlatformIO IDE has built-in PlatformIO Home with a modern GUI which allows:

  • Search for new libraries in PlatformIO Registry

  • “1-click” library installation, per-project libraries, extra storages

  • List installed libraries in multiple storages

  • List built-in libraries (by frameworks)

  • Updates for installed libraries

  • Multiple examples, trending libraries, and more.

../../_images/pio-home-library-search.png

PlatformIO Core

../../_images/platformio-demo-lib.gif

CLI Guide