Skip to main content
Download PDF

Standard License Agreement 1.3

This license agreement is a binding agreement between You and JsPlumb Pty Ltd, the company behind VisuallyJs. It contains the terms and conditions for Your use of VisuallyJs. By installing, copying or otherwise using the Software, You are agreeing to be bound by the terms and conditions of this Agreement.

1. Definitions

Affiliate shall mean in relation to any Person (including a party to this Agreement), any Person directly controlling, controlled by or under common control with such other Person at any time during the period for which the determination of affiliation is made and for the purposes of this Agreement. “Control” shall mean in relation to any Person, the power to direct the management or policies of that Person directly or indirectly through the ownership of voting securities, by contract or otherwise;
Agreement shall mean this license agreement;
Annual license shall mean a development license that entitles the holder to use Licensed Software for a period of 12 months from the date of purchase, after which time all rights to use Licensed Software cease;
Application shall mean a single, distinct, and standalone software product, web application, mobile application, or SaaS platform developed by You that integrates the Software;
Client Hosting shall mean one or both of (a) the hosting of products built with Licensed Software on servers owned and operated by Licensee or Licensee’s clients, including Applications whose audience is restricted to employees or contractors of Licensee or Licensee’s clients; or (b) the inclusion of Licensed Software in desktop/mobile Applications available to Licensee’s clients and/or employees or contractors of Licensee;
Commercial Usage shall mean any usage of the Software not meeting the criteria set forth in Section 2.8 of this Agreement;
Competing Products shall mean any Applications which are not significantly different from the Software or which do not do anything materially different than what the Software does;
Customer Installation shall mean any distribution of Licensed Software as part of an Application that is installed on a computer owned or operated by a customer of Licensee;
Delivery Date shall mean the date Licensee is invoiced by JsPlumb for the Licensed Software;
Developer shall mean any unnamed person, including, without limitation, any contractor of the Licensee and any Affiliate of the Licensee and its contractors, who will be working with the API and/or the source code of the Software;
Enterprise Hosting shall mean one or both of (a) the hosting of products built with Licensed Software on servers owned and operated by Licensee or Licensee’s clients, including Applications whose audience is restricted to employees or contractors of Licensee or Licensee’s clients; or (b) the inclusion of Licensed Software in desktop/mobile Applications available to Licensee’s clients and/or employees or contractors of Licensee;
Hosting Type shall mean one of 'Self Hosting', 'Client Hosting' or 'Enterprise Hosting';
Intellectual Property Rights shall mean (i) rights in patents, registered designs, design rights, trade marks, copyright, databases, moral rights, topography rights, and trade and business names, including the benefit of all registrations and applications to register any of the aforesaid; (ii) rights in the nature of unfair competition rights and rights to sue for passing off; and (iii) all trade secret confidentiality and other proprietary rights, including all rights to know-how and other technical information;
JsPlumb shall mean JSPLUMB PTY LTD, an Australian company, with ACN 167 835 654;
License shall mean the right to use the Software granted to You, in the form of a Self Hosting License or a Client Hosting License. Upon entering into this Agreement You must choose a license type. The sets of usage rights granted by JsPlumb under each license type are defined in section 2 of this Agreement;
License Fee shall mean the initial fee payable to JsPlumb for (i) the right to use the Licensed Software perpetually and (ii) to be subscribed to VJS Connect for an initial twelve (12) months after Delivery Date (“License Fee”);
License Statement shall mean the document sent from JsPlumb to Licensee confirming purchase of a License and detailing the number of Developer seats purchased as well as the status of Licensee’s enrollment in VJS Connect and/or Priority Support;
Licensed Software shall mean the VisuallyJs Software products licensed to Licensee through this agreement, as chosen by Licensee upon purchase;
Non-commercial Usage shall mean any usage of the Software meeting the criteria set forth in Section 2.8 of this Agreement;
Party shall mean a party to this Agreement;
Person shall mean any individual, corporation or body corporate, partnership, association, trust or other entity or organisation, including that person’s legal personal representatives, successors and permitted assigns;
Release shall mean , with respect to Licensed Software, any release of updates to the Licensed Software, which may include bug fixes, internal redesign, the addition of new features, and changes to the API. To be entitled to access Releases, Licensee must be actively enrolled in VJS Connect, pursuant to sections 2.x;
Self Hosting shall mean one or both of (a) the hosting of products built with Licensed Software on servers owned and operated by Licensee, including Applications whose audience is restricted to employees or contractors of Licensee; or (b) the inclusion of Licensed Software in desktop/mobile Applications available only to employees or contractors of Licensee;
Software shall mean any and all proprietary software products owned by JsPlumb;
Source Code shall mean the Javascript code delivered by JsPlumb in packages either as a direct download from the VisuallyJs website or from the VisuallyJs private NPM repository;
Unobfuscated Source Code shall mean the unobfuscated ES6 source code package downloaded from the VisuallyJs website;
VJS Connect shall mean access to download new Releases, access to the VisuallyJs private NPM repository, and access to technical support over email from JsPlumb;
VJS Connect+ shall mean access to download new Releases, access to the VisuallyJs private NPM repository, access to technical support over email from JsPlumb with a 48 hour response window, and prioritised issues;
VJS Connect Fee shall mean the initial fee payable to JsPlumb to be subscribed to VJS Connect for a twelve (12) months period from payment of VJS Connect Fee, and (ii) each subsequent (optional) additional or renewed period of VJS Connect, as applicable (“VJS Connect Fee”);
VJS Connect+ Fee shall mean the initial fee payable to JsPlumb to be subscribed to VJS Connect+ for a twelve (12) months period from payment of VJS Connect+ Fee, and (ii) each subsequent (optional) additional or renewed period of VJS Connect+, as applicable (“VJS Connect+ Fee”);
You shall mean an individual or entity exercising rights under this Agreement or any Affiliate;

2. License Grant

2.1. General Grants and limitations

Subject to the payment of the fee required and upon acceptance of the terms and conditions of the Agreement, JsPlumb grants You a non-exclusive, perpetual license to exercise the rights in the Software within the scope of the granted License type, and to receive services and Releases included in VJS Connect as described below.

The License shall commence on Delivery Date and be effective until terminated in accordance with the terms and conditions set forth in this Agreement.

The Software is licensed per Developer. You may make copies on more than one computer, as long as the Software is not used by more Developers than the number of seats purchased.

When entering this Agreement, Licensee must choose:

  1. one of the License types described in this section 2, and;
  2. the number of Developers to be included in the License, and;

Each License type grants Licensee a specific set of usage rights to Licensed Software, as described in section 2.2, 2.3 or 2.4 below.

2.2. Self Hosting License

A Self Hosting License grants Licensee a non-exclusive, perpetual (for applicable Releases), non-reusable, non-sublicensable, worldwide right to use and further develop, including making modifications of, Licensed Software:

  1. on any computer or platform controlled or owned by Licensee, and;
  2. on any number of websites, domains or intranet sites

Licensee acknowledges and undertakes to ensure that the number of Developers using Licensed Software at any time does not exceed the total number of Developers stated in License Statement.

Licensee agrees not to make use of any Software products in newer versions than such Release(s) of the Licensed Software which the Licensee is entitled to use pursuant to section 2.5.

You may use the Software on a royalty-free basis as part of a single Application that is hosted by You.

A Self Hosting License does not authorize Licensee to perform Customer Installations, nor to use Licensed Software in an Application that is hosted in any part by a customer of Licensee.

A Self Hosting License is available as either a Perpetual license, which grants Licensees all of the rights set forth above in perpetuity (for applicable Releases), or an Annual license, which grants licensee of all of the rights set forth above for a period of 12 months from the date of purchase.

2.3. Client Hosting License

A Client Hosting License grants Licensee a non-exclusive, perpetual (for applicable Releases), non-reusable, non-sublicensable, worldwide right to use and further develop, including making modifications of, Licensed Software:

  1. on any computer or platform controlled or owned by Licensee, and;
  2. on any number of websites, domains or intranet sites, and;
  3. on any computer of platform controlled or owned by a customer of Licensee

Licensee acknowledges and undertakes to ensure that the number of Developers using Licensed Software at any time does not exceed the total number of Developers stated in License Statement.

Licensee agrees not to make use of any Software products in newer versions than such Release(s) of the Licensed Software which the Licensee is entitled to use pursuant to section 2.5.

You may use the Software on a royalty-free basis as part of a single Application that is hosted by You or by your customers

A Client Hosting License is available as either a Perpetual license, which grants Licensees all of the rights set forth above in perpetuity (for applicable Releases), or an Annual license, which grants licensee of all of the rights set forth above for a period of 12 months from the date of purchase.

2.4. Enterprise License

An Enterprise License grants Licensee a non-exclusive, perpetual (for applicable Releases), non-reusable, non-sublicensable, worldwide right to use and further develop, including making modifications of, Licensed Software:

  1. on any computer or platform controlled or owned by Licensee, and;
  2. on any number of websites, domains or intranet sites, and;
  3. on any computer of platform controlled or owned by a customer of Licensee

The number of developer seats provisioned by an Enterprise License is unlimited.

The number of Applications which may be developed with an Enterprise License is unlimited.

Licensee agrees not to make use of any Software products in newer versions than such Release(s) of the Licensed Software which the Licensee is entitled to use pursuant to section 2.5.

2.5. VJS Connect - Initial Period, Renewal and Extension

The purchase of either a Self Hosting License or Client Hosting License under this agreement includes a twelve (12) months enrollment in JsPlumb’s VJS Connect plan, commencing on Delivery Date (“Initial Period”). If Licensee wishes to be enrolled in VJS Connect for a longer period than the initial 12 months, Licensee may a) successively renew its enrollment in VJS Connect with one or more twelve (12) month periods (“Renewal”), or b) at the time of purchase of License under this Agreement also purchase an extended enrollment in VJS Connect, for up to three (3) years (“Extension”). Both alternatives (a) and (b) are subject to payment of the applicable Support Fee.

The duration of the initial enrollment in VJS Connect will be stated in the License Statement. Any Renewal or Extension of Licensee’s enrollment in VJS Connect must be made for the complete License and include the same number of Developers as set out in the License Statement.

Under a valid enrollment in VJS Connect, Licensees shall be entitled to receive:

  1. All new Releases of the Licensed Software released during the applicable period;
  2. Technical support via email;
  3. Investigation of any claimed bug/error of Licensed Software, including, wherever possible, suggestions for workarounds for said problem;
  4. Access to JsPlumb’s NPM repository for distribution of Javascript packages of Licensed Software

During the period in which Licensee holds a valid enrollment in VJS Connect, JsPlumb shall provide support for all Releases of Licensed Software released within that time period.

VJS Connect does not cover issues arising in connection with the integration of Licensed Software into Licensee’s own products.

VJS Connect does not extend to any Third Parties to which Licensee distributes Applications containing Licensed Software or part thereof. Support to customers of Licensee is Licensee’s full and sole responsibility.

VJS Connect does not cover issues arising in connection with the usage of the Unobfuscated Source Code. Unobfuscated source code is provided for reference only.

JsPlumb shall have no obligation to assist Licensee in the event that Licensee has modified the Unobfuscated Source Code.

No Service Level Agreement (SLA) is entered into between JsPlumb and Licensee regarding the availability/uptime of JsPlumb’s NPM repository.

2.6. VJS Connect+ - Initial Period, Restrictions, Expiration, Renewal

Either at the time of purchase of a development license or at any subsequent time, Licensee may choose to enrol in VJS Connect+.

The duration of the initial enrollment in VJS Connect+ will be twelve (12) months.

Under a valid enrollment in VJS Connect+, Licensees shall be entitled to:

  1. Receive Technical support via email with, for Priority Support, a guaranteed initial response time of 48 business hours from time of enquiry, and for Premium Priority Support a guaranteed initial response time of 48 business hours from time of enquiry;
  2. Design advice;
  3. Expert code review;
  4. Investigation of any claimed bug/error of Licensed Software, including, wherever possible, suggestions for workarounds for said problem;
  5. Access to the Unobfuscated Source Code for all releases made on or before the expiration of the applicable period

Restrictions

  1. During the period in which Licensee holds a valid enrollment in VJS Connect+, JsPlumb shall provide support for all Releases of Licensed Software released within that time period;
  2. VJS Connect+ does not extend to any Third Parties to which Licensee distributes Applications containing Licensed Software or part thereof. Support to customers of Licensee is Licensee’s full and sole responsibility;
  3. VJS Connect+ does not cover issues arising in connection with the usage of the Unobfuscated Source Code. Unobfuscated source code is provided for reference only;
  4. JsPlumb shall have no obligation to assist Licensee in the event that Licensee has modified the Unobfuscated Source Code;
  5. No implied agreement that JsPlumb will augment, adapt or otherwise modify the Licensed Software in order to address an issue raised by a holder of a VJS Connect+ enrolment is given

Expiration

VJS Connect+ subscriptions expire 12 months after the commencement of the enrolment period.

Renewal

At the expiration of a VJS Connect+ subscription, Licensee may choose to purchase a further VJS Connect+ subscription via payment of the applicable Support Fee.

2.7. Number of Developers

Each License granted by JsPlumb under this Agreement, with the exception of the Enterprise License, specifies a set number of authorized Developers. The Licensee agrees to acknowledge, accept, and ensure that the actual number of Developers, whether employees or subcontractors, does not exceed the limit stated in the License Statement at any time. Any violation of this restriction will be regarded as a material breach of the Agreement.

2.8. Non-Commercial Usage

"Non-Commercial Usage" refers to the use of the Software by an individual for personal, non-professional, and non-remunerated purposes only. To qualify as Non-Commercial, the usage must meet all of the following criteria:

  1. No Economic Gain: The usage is not directed toward or intended for commercial advantage or monetary compensation. This includes, but is not limited to, usage for advertising, lead generation, or the promotion of any for-profit or not-for-profit entity.
  2. Individual vs. Entity Use: Except for the Limited Commercial Evaluation Period defined below, usage by, on behalf of, or for the benefit of any legal entity—including corporations, partnerships, limited liability companies, and non-profit organizations—is expressly excluded and constitutes Commercial Usage.
  3. No Internal Business Use: Except for the Limited Commercial Evaluation Period defined below, any use of the Software within a business environment, including internal-only tools, development, testing, or administration for an organization (regardless of that organization’s tax or legal status), is considered Commercial Usage.
  4. Limited Commercial Evaluation: Notwithstanding the above, an individual may use the Software in a commercial or business capacity solely for the purpose of evaluating its suitability for their employer or entity for a period not to exceed sixty (60) calendar days from the date of the first installation or use. Any use by the entity or its employees beyond this 60-day period requires a valid Commercial License.
Sole Discretion: Notwithstanding any of the criteria or examples provided herein, the final determination as to whether a specific instance of use qualifies as "Non-Commercial" lies within the sole and absolute discretion of JsPlumb.

3. Fees

Licensee shall upon purchase agree to pay the License fee, covering the purchase of Licensed Software and an initial twelve (12) months enrollment in VJS Connect. For any extension of VJS Connect enrollment, or for each subsequent renewal of enrollment in VJS Connect, or for enrollment in VJS Connect+, or for each subsequent renewal of enrollment in VJS Connect+, Licensee shall agree to pay the Support fee applicable at the time of purchase of the Extension or Renewal.

JsPlumb shall invoice Licensee, and Licensee may choose to pay invoices:

  1. via credit card prior to delivery of Licensed Software, or;
  2. via bank transfer to JsPlumb’s bank account, no later than 30 days from invoice date, unless both parties agree to some other number of days before payment is due

In the event that Licensee chooses to pay via bank transfer, any payment delay beyond the stated or agreed number of days shall cause any associated VJS Connect or VJS Connect+ enrollment to be truncated by a number of days equal to the number of days of delay of payment.

Each party shall be fully and solely responsible for payment of any bank charges and/or local taxes imposed by the law of that party’s home country.

Invoices from JsPlumb shall not include taxes, except in the case of Licensees whose home country is Australia, invoices for which shall include GST.

4. Delivery

During the term of this Agreement, Licensed Software shall be made available for download by Licensee on JsPlumb’s website, as well as via JsPlumb’s NPM repository. As set forth in sections 2.1 and 2.4, new Releases of Licensed Software after the initial twelve (12) month period shall not be available to Licensee unless a) Licensee purchases an extended Support period at the time of purchase of License; or b) Licensee purchases a renewal of Support enrollment.

5. Restrictions

The license granted above is expressly made subject to and limited by the following restrictions:

  1. Subject to Clause 9.2 You may not assign, sublicense, sub-contract, lease, rent or otherwise transfer this Agreement, or any rights or obligations under it, without JsPlumb’s prior written consent.
  2. You must not repackage the Software for sale as a Competing Product.
  3. You shall treat the Source Code as secret and confidential and under no circumstances will You distribute, disclose or otherwise make any portion of the Source Code or any modified version of the Source Code to any Person, except an Affiliate or third party consultant to provide the modifications to, maintenance of and support for the Software provided the Affiliate and third party consultant are bound by appropriate and legally binding written confidentiality and non-use obligations.
  4. You may not expose the VisuallyJs API in Your Applications.
  5. You shall at no time distribute the Unobfuscated Source Code within your Applications.

5.1. Artificial Intelligence and Reverse Engineering

The Software is provided in a compiled, minified, or obfuscated format to protect the developer's Intellectual Property. You are strictly prohibited from using, or permitting any third party to use, any form of Artificial Intelligence, Machine Learning, Large Language Model (LLM), or automated neural-network-based tool to deobfuscate, unminify, or otherwise attempt to reconstruct the original human-readable source code from the provided assets. This includes, but is not limited to, using these tools for "lifting" logic, variable renaming, or structural reconstruction of the code. Any output generated by an AI tool that attempts to represent the source code of this software is considered an unauthorized derivative work and a violation of this license.

6. Intellectual Property

The Software is licensed, not sold. You acknowledge that any and all Intellectual Property Rights that subsist in or arise in connection with the Software or the Documentation anywhere in the world and the JSPLUMB trade mark belong to JsPlumb and that You shall have no right in or to the Software or the Documentation or the JSPLUMB trade mark, except for the right to use it as permitted by this Agreement.

You must keep intact all copyright notices for the Software and all notices that refer to this Agreement with every copy of the Software You distribute or publish.

7. Limited Warranty, Disclaimer of Warranties and Limitation of Liability

7.1. Limited Warranties

  1. JsPlumb warrants that it is not aware of any facts upon which suggest that the Software infringes any third party patent, copyright or design right.
  2. JsPlumb warrants that the Software, as updated and when properly used, will perform substantially in accordance with the accompanying Documentation and the Software will be free from defects in materials and workmanship, for a period of ninety (90) days from the date of receipt. This Limited Warranty is void if failure of the Software has resulted from accident, abuse, or misapplication. Any replacement Software will be warranted for the remainder of the original warranty period or thirty (30) days, whichever is longer.

7.2. Disclaimer of Warranties

The foregoing express warranties are limited to JsPlumb and are not transferable and are in lieu of any other warranty by JsPlumb with respect to any products or services furnished hereunder. JSPLUMB GRANTS NO OTHER WARRANTY, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

7.3. Limitation of Liability

SUBJECT TO CLAUSE 7.1 IF JSPLUMB BREACHES ANY PROVISION OF THIS AGREEMENT, JSPLUMB'S SOLE AND EXCLUSIVE MAXIMUM LIABILITY, WHETHER BASED IN CONTRACT, TORT, OR OTHERWISE, SHALL NOT IN ANY EVENT EXCEED THE PURCHASE PRICE FOR THE PARTICULAR PRODUCTS.

8. Termination

This agreement shall stay in force for twelve (12) months from Delivery Date and thereafter for the duration of the period for which Licensee is actively enrolled in VJS Connect or Priority Support, pursuant to sections 2.5 and 4.

Without prejudice to any other rights, JsPlumb shall have the right to terminate this Agreement if You fail to comply with the terms and conditions of this Agreement. Upon termination of this Agreement, all rights granted to You hereunder shall terminate automatically and You will immediately cease use and distribution of the Software.

Subject to the above terms and conditions, the license granted here is perpetual (for the duration of the applicable copyright in the Software) for Releases to which Licensee has gained perpetual rights pursuant to sections 2.2, 2.3 or 2.4. Notwithstanding the above, JsPlumb reserves the right to release the Software under different license terms or to stop distributing the Software at any time, provided, however this will not serve to withdraw this license, and the license granted here will continue in full force and effect unless terminated as stated above.

9. Miscellaneous

9.1. Entire Agreement

This Agreement constitutes the entire agreement and understanding between the parties with regard to its subject matter and supersedes all prior oral or written agreements, representations, understandings or arrangements between the parties relating to the subject matter of this Agreement. Any amendment to this Agreement must be made in writing and signed by the duly authorised representatives of each party.

9.2. Assignment

The provisions of this Agreement will be binding upon and shall inure to the benefit of the parties, their successors, and permitted assigns. Neither this Agreement nor any rights under this Agreement may be assigned, pledged, delegated or otherwise transferred by either party, in whole or in part, whether voluntary or by operation of law (including any direct or indirect change in the ownership or control of such party, sale of assets, merger or consolidation), without the prior written consent of the other party, except as follows:

  1. Either party may assign this Agreement to its Affiliate, provided that such party shall remain jointly and severally liable with such assignee for all of its obligations hereunder.
  2. Either party may assign this Agreement in connection with the sale of all or substantially all of its assets.

9.3. Governing Law

This Agreement shall be governed and construed in accordance with the laws of New South Wales, Australia and both parties hereby submit to the exclusive jurisdiction of the Courts of New South Wales, Australia.

9.4. Survival

Clauses 1, 5, 6, 7, 8, 9 will survive the termination of the Agreement. Any other terms of this Agreement that are either expressed so as to survive (or are capable of surviving) termination of this Agreement or from their nature or context it is contemplated that they are to survive termination, shall remain in full force and effect notwithstanding termination.

9.5. Audit

JsPlumb is entitled to review, audit, and inspect the Licensee’s use of the Licensed Software once per year during the term of this Agreement and once within a five-year period following its expiration. The purpose of this audit is to ensure the Licensee adheres to the usage rights and restrictions outlined in this Agreement. Any such audit will be conducted under confidentiality obligations, with at least ten (10) calendar days' prior notice, during the Licensee’s normal business hours, and with minimal disruption to its operations. If the audit reveals no discrepancies or unauthorized use of JsPlumb’s Software, JsPlumb will bear all costs associated with the audit.

9.6. Battle of Forms

The Licensee’s acquisition of a License shall be exclusively governed by the terms of this Agreement. Any additional terms or conditions proposed by the Licensee, whether directly, indirectly, or by reference, are expressly rejected and shall not apply.

Both Parties agree that any supplementary or conflicting terms contained in documents outside this Agreement—such as letters of engagement, purchase orders, invoices, acknowledgments, delivery receipts, confirmations, or similar documents—shall be considered null and void to the extent that they contradict or breach the terms of this Agreement.