Licenses

Community Edition

The Community Edition is an open source project hosted on GitHub. It is MIT or GPL2 licensed (you choose which license to use depending on your use case).


Toolkit Edition


This license agreement is a binding agreement between You and jsPlumb. It contains the terms and conditions for Your use of jsPlumb Toolkit.  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 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 means this license agreement.

Applications means the software applications developed by You that use the Software.

Competing Products means any Applications which are not significantly different from the Software or which do not do anything materially different than what the Software does.

Intellectual Property Rights means (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 means jsPlumb Pty Ltd.

Obfuscated Source Code means the obfuscated form of the Source Code or of a modified version of the Source Code. The Source Code is obfuscated if all whitespace and comments are removed and all variables and function names are replaced by meaningless names.

Person means 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.

Software means the jsPlumb Toolkit which consists of its Source Code (both obfuscated and unobfuscated), example applications and Documentation.

Source Code means the Javascript source code of the Software.

You means an individual or entity exercising rights under this Agreement or any Affiliate.

2. LICENSE GRANT

Subject to the payment of the fee required and upon acceptance of the term and conditions of the Agreement, jsPlumb grants You a non-exclusive, perpetual license to exercise the rights in the Software as outlined below:

a. The Software is licensed per individual developer. You may make copies on more than one computer, as long as the Software is used by the same developer. If You have purchased a multi-developer license, You may use a copy of the Software identified in the multi-developer license on the number of computers associated with the multi-developer license.
b. The Source Code is provided to You so that You can create modifications under the terms of this Agreement. You are entitled to use modifications of the Source Code in Your Applications.
c. You may use the Software on a royalty-free basis as part of any of Your Applications that are hosted by You. However, You may, in a public facing application, use only the Obfuscated Source Code.
d. Distribution of the Software in any of Your Applications, either in downloadable or embedded form, or to be hosted by some other entity, requires a separate OEM license. You may distribute only the Obfuscated Source Code.

3. RESTRICTIONS

The license granted above is expressly made subject to and limited by the following restrictions:
a. Subject to Clause 7(b) 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.
b. You must not repackage the Software for sale as a Competing Product.
c. Subject to Clauses 2(b) and (c) 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.
d. You may not expose the jsPlumb Toolkit API in Your Applications.

4. 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.

5. LIMITED WARRANTY, DISCLAIMER OF WARRANTIES AND LIMITATION OF LIABILITY

a. Limited Warranties

i. 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.
ii. 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.
iii. JsPlumb warrants that as provided the Software does not contain any malicious code inserted to affect the functioning of the Software or any computer that the Software runs on. Any developer using JsPlumb must have a broad understanding of security issue relating to web application and must take all reasonable steps at a system level to mitigate those risks.

b. 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.

c. Limitation of Liability.

SUBJECT TO CLAUSE 5(a) 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.

6. TERMINATION

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). 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.

7. MISCELLANEOUS

a. 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.

b. 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:
i.	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.
ii.	Either party may assign this Agreement in connection with the sale of all or substantially all of its assets.

c. 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.

d. Survival

Clauses 1, 3, 4, 5, 6, 7 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.

Technical Support Agreement

Terms and Conditions

1. DEFINITIONS

Affiliate 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 means this jsPlumb Technical Support agreement.

Confidential Information means all items identified as being confidential by the disclosing party, including: (i) any portion of the Software, in object and source code form, and any related technology, ideas, algorithms or any trade secrets; (ii) either party's business or financial information and plans; and (iii) the terms of this Agreement. "Confidential Information" will not include information that the receiving party can show: (a) is or becomes generally known or publicly available through no fault of the receiving party; (b) is known by or in the possession of the receiving party prior to its disclosure, as evidenced by business records, and is not subject to restriction; or (c) is lawfully obtained from a third party who has the right to make such disclosure.

Documentation means any user documentation, on any media, provided by jsPlumb for use with the Software including jsPlumb’s on-line help files and standard manuals.

Error means a defect that causes the Software  to not perform substantially in accordance with the specification set forth in the Documentation, and which can be reproduced by You and jsPlumb.

Intellectual Property Rights means (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 means jsPlumb Pty Ltd.

Person means 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.

Qualified Individual means the individual appointed by You who is knowledgeable in the use and application of the Software to serve as primary contact between You and jsPlumb.

Software means the jsPlumb Toolkit, which consists of obfuscated Javascript source code, example applications and Documentation.

Source Code means the obfuscated Javascript source code of the Software.

Technical Support services means the services offered to You by jsPlumb under this Agreement.

Update means a future version of the Software which may include remedied detected shortcomings or improvements.

You means an individual or entity exercising rights under this Agreement or any Affiliate.

2. UPDATES

A current Agreement entitles you to free major and minor version Updates if such Updates become available during the term of the Agreement. jsPlumb does not warrant that there will be any Updates to the Software during the term of the Agreement.

Updates may be available free of charge only as a download from the jsPlumb website (jsplumbtoolkit.com). If you require physical media to be sent, extra charges may apply.

3. SUPPORT POLICIES

- Technical Support services

jsPlumb shall provide Technical Support services to your Qualified Individual, concerning the use of the Software

Queries must be directed to jsPlumb by the Qualified Individual by email.  Support is available via email only.

jsPlumb will not return phone messages. jsPlumb may also limit or terminate support service to You if it considers You are using the service in an abnormal, excessive, abusive or fraudulent manner. Terms, conditions, support features, procedures, pricing and support availability are subject to change at any time without notice.  jsPlumb support benefits apply only to the jsPlumb product for which the Agreement is held.

- Error Correction

jsPlumb shall exercise commercially reasonable efforts to correct any Error reported by the Qualified Individual in the current, unmodified version of the Software in accordance with the Terms and Conditions of this Agreement.
Depending on the seriousness of the Error, jsPlumb shall, at its sole discretion, (i) provide the Error correction, or (ii) include the Error correction in an Update.


- Other Problems

If jsPlumb believes that a problem reported by You may not be due to an Error in the Software, jsPlumb will so notify the Qualified Individual. At that time You may: (i) instruct jsPlumb in writing to proceed with Error determination at your own expense within a predefined budget or (ii) instruct jsPlumb that You do not wish the problem pursued at your own expense. If You instruct that jsPlumb proceed with problem determination at your own possible expense and jsPlumb determines that the problem was not due to an Error in the Software, You shall pay jsPlumb, at the consulting rates agreed between the parties, for all work connected to such determination, plus reasonable related expenses as incurred therewith. You shall not be liable for (a) problem determination or repair to the extent problems that are due to Errors in the Software; (b) work performed under this Clause in excess of its instructions and (c) work performed after You have notified jsPlumb that you no longer wish for work on problem determination to be continued at your own possible expense (such notice shall be deemed given when actually received by jsPlumb). If You instruct jsPlumb that You do not wish the problem pursued at your own possible expense or if such determination requires effort in excess of your instructions, jsPlumb may, at its sole discretion, elect not to investigate with no liability.

- Service Availability

Support is available only for the period of your support contract. To continue to receive support benefits the contract must be renewed annually. Service is available during normal jsPlumb office hours, which are from 8:30am to 5:00pm Eastern Standard Time, Australia. Service availability may occasionally deviate from stated hours due to downtime for systems and server maintenance and public holidays. jsPlumb cannot guarantee that You will not experience some delay in having one of jsPlumb's technical support consultants answer your query. jsPlumb's standard response time is 48 business hours from receipt of enquiry.

- Assignment of Technical Support Services

jsPlumb shall have the right, at any time, to assign the Technical Support services hereunder to any assignee it deems appropriate after giving You three-month notice prior to assignment to a company other than jsPlumb and its subsidiaries. You have the option, upon 30-day notice to jsPlumb, to terminate support services and receive a refund for any unused technical support service fees if jsPlumb re-assigns support. Upon such assignment, jsPlumb shall remain responsible for the performance of its obligations as set forth herein.

- Limitations to Technical Support

jsPlumb will provide support in the following areas only:

Installation;
Errors;
Update assistance; and
basic usability and basic functionality, as described in the Documentation.

jsPlumb does not claim to resolve connectivity issues caused by third party services, service providers, hardware or software, or networking problems.

jsPlumb shall have no obligation to support: (i) altered, damaged or modified Software or any portion of Software incorporated with or into other software; (ii) software problems caused by third party software malfunction, or by your negligence, abuse, misapplication or use of Software other than that set forth in the Documentation or other causes beyond the control of jsPlumb; or (iii) software installed on any computer hardware not supported by jsPlumb.  jsPlumb shall have no liability for any changes to hardware that may be necessary to use the Software due to correction of the Error.

The determination of the nature of your query for these purposes will be made by jsPlumb technical support consultants.

- Termination or Failure to Renew Product Technical Support

Termination of Technical Support or failure to renew will not affect the license of the Software. If You allow the Agreement to lapse, jsPlumb may thereafter renew the Agreement, subject to payment of the then current fees plus an amount equal to 50% of the aggregate fees that would have been payable during the period of lapse.

4. INTELLECTUAL PROPERTY

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.  All Updates, upgrades and / or new versions of the Software and Documentation shall be considered part of the Software and Documentation for purposes of this Clause.

5. DISCLAIMER OF WARRANTIES AND LIMITATION OF LIABILITY

- Disclaimer of Warranties

JSPLUMB GRANTS NO WARRANTY, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

- Limitation of Liability

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 OR THE SERVICE FEE UNDER THIS AGREEMENT, WHICHEVER IS THE GREATER AMOUNT.

6. CONFIDENTIAL INFORMATION

Each party will protect the other's Confidential Information from unauthorized dissemination and use the same degree of care that such party uses to protect its own like information. Neither party will disclose to third parties the other's Confidential Information without the prior written consent of the other party. Neither party will use the other's Confidential Information for purposes other than those necessary to directly further the purposes of this Agreement.

7. TERMINATION

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 jsPlumb is immediately under no obligation to provide Technical Support services or any services.

8. MISCELLANEOUS

- 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.

- 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:

a. 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.
b. Either party may assign this Agreement in connection with the sale of all or substantially all of its assets.

- Waiver

Any waiver of the provisions of this Agreement or of a party's rights or remedies under this Agreement must be in writing to be effective. Failure, neglect or delay by a party to enforce the provisions of this Agreement or its rights under this Agreement will not in any way affect the validity of the whole or any part of this Agreement or prejudice such party's right to make subsequent action.

- Severability

If any term, condition or provision in this Agreement is found by a court of competent jurisdiction to be invalid, unlawful or unenforceable to any extent, the parties shall endeavour in good faith to agree to such amendments that will preserve, as far as possible, the intentions expressed in this Agreement. If the parties fail to agree on such an amendment, such invalid term, condition or provision will be severed from the remaining terms, conditions and provisions, which will continue to be valid and enforceable to the fullest extent permitted by law.

- Force Majeure

Except for the obligation to make payments, neither party will incur any liability to the other party on account of any loss or damage resulting from any delay or failure to perform all or any part of this Agreement if such delay or failure is caused, in whole or in part, by events, occurrences, or causes beyond the control and without negligence of the parties. Such events, occurrences or causes will include, without limitation, acts of God, strikes, lockouts, riots, acts of war, earthquakes, floods, fire and explosions, but the inability to meet financial obligations is expressly excluded.

- Survival

Clauses 4, 5, 6, 7 and 8 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.

- 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.




This Agreement is a binding agreement between You and jsPlumb.