Currently, Joystick supports the following databases via a local binary:
- MongoDB - A popular, NoSQL database.
- PostgreSQL - A popular, SQL database.
- Redis - A popular, in-memory datbase.
Internally, as part of Joystick's development server (run via the @joystick.js/cli
package), when starting up your app for the first time, Joystick will scan your current settings.<env>.json
file's config.databases
value.
For each database provider detected, Joystick will also check to see if the binary release of that database has been downloaded to your machine. If it has, Joystick will start the database via its binary and run your app. If it has not been installed, first, Joystick will download and install the binary from the Joystick's CDN and then start the database and your app.
Implications
Joystick bundles specific database binary versions for the sake of convenience and stability. While this does limit the highest version available for a given database at least briefly, it avoids a version mismatch between your machine's version of the database and the binary that Joystick installs (and can guarantee works with the framework).
Because the databases Joystick supports are mature, typically, the delay between a new version being supported (which may only have trivial feature additions) by Joystick and its release are deemed tolerable.