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
platformio lib --global or
platformio lib --storage-dir
options. If you change current working directory in terminal to project folder,
then platformio lib command will manage automatically dependency
storage in libdeps_dir.
PlatformIO Library Manager allows 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 Project Configuration File platformio.ini. You can use library ID, Name or even repository URL. For example,
[env:myenv] platform = ... framework = ... board = ... lib_deps = 13 PubSubClient ArduinoJson@~5.6,!=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 platformio lib install for detailed documentation about possible values.
If some libraries are not visible in PlatformIO IDE and Code Completion or Code Linting does not work properly, please perform
- Atom: “Menu: PlatformIO > Rebuild C/C++ Project Index (Autocomplete, Linter)”
- VSCode: “Menu: View > Command Palette... > PlatformIO: Rebuild C/C++ Project Index”
PlatformIO IDE has built-in PIO Home: Library Manager with a friendly GUI. It 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.