SparkJS vs CylonJS vs Johnny-Five

Hello Spark Community,

I’m a bit confused on some of the ‘program with javascript libraries’ out there. What is the main difference between them (I’ve noticed that Johnny-five and CylonJS require VoodooSpark firmware) and what kind of use cases would they be best for?

I’m looking to do a fullstack javascript project with the spark controlled by an AngularJS webapp that hopefully can be reused in the Ionic platform for mobile.

Sorry if this has been covered before, I couldn’t find it in the search.


Hi @rick,

Good question! CylonJS, and Johnny-Five are great platforms used in robotics and projects where direct program -> project control is required on a local network or direct serial connection. They’re great for things like when your Spark Core is at the heart of a remote controlled car, or controlling a giant robot arm mounted to a quad-copter, or other low-latency direct feedback project and you’re on the same local network as your project. :slight_smile:

SparkJS is a convenient wrapper for the Spark Cloud API that makes it easy to use any of the API methods exposed for your project that work over the internet anywhere. So it’s great for when you’re writing a web app, or program to run across the internet when you don’t need extreme low-latency, or if you’re just using the easy Spark.function / Spark.variable type calls.

I hope that helps!



Thanks Dave for the response, definitely cleared some things up! Gonna experiment now to see which method is best…

1 Like

@rick you could use cylon.js with both spark cloud (tinker) or voodoospark:

I would say a good use case to use cylon is if you want to control and interconnect different hardware devices at the same time and/or use the same interface to control them.