Using the Production Release
The production release of Joystick is considered the current, stable release of Joystick. This is the version of Joystick installed when you run npm i -g @joystick.js/cli. This is the recommended version of Joystick to use for your app. To create an app with this release, from your terminal, run:
Terminal
joystick create <app-name>
Replace <app-name> in the command above with the name of your app (use only single word, hyphenated, or snake_case names). The command above will create your app and install Joystick's dependencies:
@joystick.js/ui: the client-side, component portion of the framework@joystick.js/node: the server-side, Node.js portion of the framework@joystick.js/test: the testing framework you will use for writing tests against your Joystick app
Though separate packages, all three are designed to work together and are utilized when building your app.
Using the Canary Release
The canary release of Joystick is considered the current, development release of Joystick. This is the version of Joystick installed when you run npm i -g @joystick.js/cli-canary. This release is considered unstable and should only be used for experimental purposes.
Use at your own risk
The canary release is the "nightly" version of Joystick and is subject to incomplete or buggy code. It's subject to frequent change and should be considered unstable. Only use this in development or if you know what you're doing.
To create a new app using the canary release, from your terminal, run:
Terminal
joystick-canary create <app-name> --release canary
Replace <app-name> in the command above with the name of your app (use only single word, hyphenated, or snake_case names).
The --release canary flag here is important. If you fail to do this, your app will be created with the production version of Joystick's dependencies. This is done as a fail-safe to prevent you from accidentally creating an unstable app. The command above will create your app and install the canary version of Joystick's dependencies:
@joystick.js/ui-canary: thecanaryversion of the client-side, component portion of the framework@joystick.js/node-canary: thecanaryversion of the server-side, Node.js portion of the framework@joystick.js/test-canary: thecanaryversion of the testing framework you will use for writing tests against your Joystick app
Identical to the production packages, though separate, all three are designed to work together and are utilized when building your app.