Terms of use
Effective date: set when this goes live #26
The terms for using JSpark and JSpark+, its free and paid editions.
This agreement is between you and Ananda Rizki, an individual based in Indonesia, who makes JSpark (“I”, “me”). It covers the JSpark app for Mac and Windows in both of its editions, JSpark and JSpark+.
Little Spark is a brand name I use on the Polar store. It is not a separate legal entity. When you see “Little Spark” on Polar’s checkout, your receipt or your card statement, the person behind it is me.
By installing or using JSpark, or by activating a License Key, you agree to these terms. If you don’t agree, don’t install or use the app.
1. Words used here
- The app: JSpark for Mac and Windows, every version of it, in both editions.
- JSpark: the app without a License Key, the free edition.
- JSpark+: the app with an activated License Key, which lifts the free edition’s limits.
- License Key: the key you receive after buying JSpark+, and paste into the app.
- Activation: a License Key’s hold on one device.
- Device: a computer the app is installed on, whatever its operating system.
- Seat: one person’s place on a purchase, holding one License Key.
- Yearly and Lifetime: the two plans a License Key is bought on.
- Polar: Polar Software, Inc., which sells JSpark+ as merchant of record.
2. The free edition
I grant you a free, non-exclusive, non-transferable licence to install and use JSpark on any number of devices, for any lawful purpose, personal or commercial. It has no time limit.
3. JSpark+ and your License Key
What a key allows. Each License Key lets one person use JSpark+ on up to 3 devices that person uses, on any operating system the app is made for. That person is the buyer, or the person the buyer assigned the Seat to. A buyer may buy several Seats, for example for a company’s employees, and assign each to one person. The device limit is not raised on request: using JSpark+ on more devices needs another License Key.
Yearly. A Yearly key unlocks JSpark+ while its plan is paid. You can cancel at any time on Polar’s customer page. JSpark+ then lasts until the end of the year you paid for, and after that the app runs as JSpark, the free edition.
Lifetime. A Lifetime key never runs out. It unlocks JSpark+ in every version of the app. Lifetime is a promise about your key, not a promise that new versions will keep being made, or for how long.
Activation. Activating a key needs an internet connection once. After that, the app checks the key with Polar at most once a day, when the device is online. You can free a device with Deactivate this device in the app, or on Polar’s customer page if the device is lost or broken.
Polar runs the License Keys, not me. Activating a key, checking it and freeing a device all depend on Polar’s service. If Polar is unavailable, or stops operating, devices where your key is already activated keep JSpark+, but activating a new device or freeing one may not be possible until Polar is back. I can’t fix Polar’s service, and I am not responsible when it fails.
When a key stops. A key stops unlocking JSpark+ when its Yearly plan ends, when it is refunded or charged back, when its Seat is removed, or when it is disabled for a breach of this agreement. The app then runs as JSpark. It never deletes your Snippets, your Library, your settings or your installed packages because of this.
4. What you may not do
You may not:
- share a License Key beyond what section 3 allows, or publish it;
- sell, rent, lend, transfer or give away a License Key, or an Activation;
- get around, disable or fake the license check, or edit the app’s saved Activation to unlock JSpark+;
- redistribute the app, or a modified copy of it, except by pointing people to where I publish it;
- reverse engineer, decompile or disassemble the app, except where the law allows it despite this sentence.
The app includes open-source components. Each is licensed to you under its own licence, listed in the app under Acknowledgements, and nothing here limits your rights under those licences.
5. Your code and your data
The Snippets you write, your Library and anything the app stores are yours. I claim no rights in them. They stay on your device: the app has no account, no sync and no telemetry. The Privacy Policy lists what the app sends over the network.
6. The app runs your code
JSpark is not a sandbox. Node.js Snippets run with the same access to your files, the network and other programs as any program you run yourself, and web pages load whatever their code asks for. You are responsible for the code you run in the app, including code you copy from elsewhere and npm packages you install. Packages, CDN libraries and anything else your code loads come from third parties under their own terms.
7. Buying JSpark+ through Polar
Polar is the merchant of record and reseller of JSpark+: you buy from Polar, and I license the app to you under this agreement. Polar’s Buyer Terms and Conditions govern the sale itself: payment, taxes, invoices, renewal charges, cancelling a Yearly plan, and chargebacks. This agreement governs your right to use the app.
You can have a full refund within 30 days of any payment, renewals included, as described in the Refund Policy. Polar may also issue refunds under its own terms.
8. Updates and old versions
The app checks for new versions. By default it installs them the next time you quit; in Settings you can install them yourself instead, or turn checking off. New versions are offered to every edition, whether or not you have a key, and whether or not your plan is paid.
I may change, add or remove features in new versions. A change never reaches a version you already have. I may stop making or offering the app, or JSpark+, at any time.
9. No warranty
To the extent the law allows, the app is provided “as is”, without warranties of any kind, express or implied, including fitness for a particular purpose, merchantability and non-infringement. I don’t promise that the app is free of errors or will run without interruption.
10. Limit of liability
To the extent the law allows, I am not liable for indirect, incidental, special or consequential damages, or for lost data, profits or business, arising from your use of the app, even if I was told they were possible. My total liability for any claim about the app is limited to what you paid for JSpark+ in the 12 months before the claim, or USD 50 if you paid nothing.
I am not responsible for services run by others that the app or your code relies on, such as Polar, the npm registry, esm.sh, GitHub or Cloudflare, or for what goes wrong when one of them fails.
11. Your rights as a consumer
Nothing in this agreement limits rights you have under consumer protection laws that can’t be waived by contract, in the country where you live. Where a term here conflicts with such a right, that right wins.
12. Ending this agreement
You can end this agreement at any time by deleting the app. It ends by itself if you break section 4; in that case I may disable your License Key. Sections 5, 9, 10, 11 and 13 continue after it ends.
13. Governing law
This agreement is governed by the laws of the Republic of Indonesia, and disputes about it go to the courts of Indonesia that have jurisdiction. Section 11 still applies: this section does not take away the protection of the consumer laws of the country where you live.
14. Changes to these terms
I may update this agreement for new versions of the app. The terms that came with a version you have keep applying to that version. A new version comes with the terms current at its release, shown at jspark.app/legal/terms. Earlier versions are available on request.
I may transfer this agreement to someone who takes over JSpark, on the same terms.
15. Contact
Email support@jspark.app. Security reports go to security@jspark.app.