Install Neo4j apps without Neo4j Desktop

Is there any way to run Neo4j on a server and then install apps from Graph App Gallery using the Neo4j browser or any other way?

It looks like at the moment the only possible way to install the apps from this gallery is to use Neo4j Desktop. This approach doesn't work when installing Neo4j on a Linux server for instance.

It is possible, but this isn't the usual way.

Most graphapps are just NPM modules that get published to some NPM repository. You need to have the NPM URL for the graphapp, which would be the same URL you'd use to install it into Desktop.

Here's a quick example. I wrote the Halin graphapp, whose NPM URL is this: https://neo.jfrog.io/neo/api/npm/npm/halin

If you were to curl that, you'd get metadata information about the package and the various versions that are available. When I wrote this post, v0.13.0 was the latest, and in that package you can see that the URL to download the tarball for that version is https://neo.jfrog.io/neo/api/npm/npm/halin/-/halin-0.13.0.tgz

If you were to download that tarball, and then open package/dist/index.html inside of your browser, you'd basically be running Halin without Neo4j Desktop.

A lot of this depends on the graphapp. Some graphapps depend on the Neo4j Desktop API, which is injected at runtime by Neo4j Desktop itself. And so if you're running one of those graphapps, you have no chance to run it without Desktop. You'd probably just get strange errors as the app realizes that Desktop isn't present. Other graphapps are basically just single page applications (SPAs) written using React or Vue. Those run just fine without Desktop.