Is it possible to use https://github.com/pnp/pnpjs with on-premise SharePoint with an external NodeJS application? Installing web parts is not an option I must perform read-only access.
If so, what versions of SharePoint are supported?
It is indeed possible to use PnP JS with SP OnPremise.
It supports both 2013 and 2016 as well as the upcoming 2019 environment. Under the hood, it is just a wrapper over the existing REST API endpoints.
Reference - Getting started with PnP JS
This is the repo you want:
It allows you to pass in auth info to the clientFactory.