Richard Klavora's apm Brings Simple Package Management to Your Arduino Projects

Inspired by npm, this open source project aims to make it simple to maintain and distribute Arduino projects.

Gareth Halfacree
3 years ago β€’ Productivity

Developer Richard Klavora is looking to make it easier to share Arduino projects, by borrowing a trick from other software platforms: Enter the Arduino Package Manager, apm.

"[apm is] a package manager for Arduino projects to make them portable (no more manual download etc.), Klavora explains of his open source project. "This tool fully includes the official arduino-cli (it won't be installed nor need to be installed) so it is automatically compatible with any kind of Arduino projects/sketches."

Designed as an Arduino equivalent to the Node Package Manager npm, apm offers four key commands. apm init initialises a new project as an apm project; add adds a library to the project; remove removes a library from the project; and install automatically finds and installs those added libraries as dependencies β€” including, if specified in the configuration file, the Arduino core, architecture, version, and any additional Board Manager URLs required.

In theory, a project shared as an apm project should be a one-step install β€” including dependencies and Arduino core files. The tool also includes version control, allowing for the most recent version of any given dependency to be installed or any fixed-version to be locked in place.

Klavora's apmis now available on GitHub, under the permissive Apache License 2.0.

Gareth Halfacree
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.
Latest articles
Sponsored articles
Related articles
Latest articles
Read more
Related articles