GrapeCity, Inc., publishes the Wijmo product line.

Choose from two varieties of commercial license

GrapeCity offers a Commercial Software license for developers who want to build applications. For developers who want to create their own SDK’s application builders (or site builders) based on GrapeCity software, GrapeCity offers a Commercial OEM license. Each is explained below in detail.

If you're using Wijmo and see a watermark, you're looking at an evaluation copy.

This page also includes information on Open Source Software.

Wijmo Core Licensing

Commercial Software License

  • The Commercial Software license is a traditional “per developer seat” license. Each developer who works with ComponentOne software is considered a separate seat, including any developer who works with ComponentOne software through abstractions like tag libraries or data definitions rather than directly in JavaScript code.
  • The license is non-transferable. It is licensed per named user (not a floating license).
  • You may reassign the license if a developer for whom the license was purchased is no longer employed by your organization.
  • Deployment of unlimited numbers of applications to unlimited numbers of sites, users, and devices is included with the license.
  • The license prohibits combining code that you develop using a GPL licensed version of the software with code that you develop using a commercial licensed version. For instance, you may not begin development with our GPL version and then “convert” it to our commercial version.
  • The license is perpetual and includes all minor and bug fix releases but not major releases. For example, a 2.0.0 license includes all 2.x.x releases such as 2.0.1, 2.1.0, 2.2.1, etc., but not 3.0.0.

View the complete license terms


Commercial OEM License

  • The Commercial OEM license terms vary based on your exact usage. Since customer needs vary widely in this space, each agreement is highly customized.
  • If you want to simply ship our software with new language bindings or slightly customized UI widgets, we offer terms that are similar to traditional reseller agreements.
  • If you want to embed and extend ComponentOne software in visual application builders, terms are generally fixed fee plus royalty based. Inquire about OEMs


Wijmo Core Evaluation Copy

Why am I seeing this?

You're seeing a "Powered by Wijmo Core Eval" watermark. The page you were viewing is using an Evaluation copy of Wijmo Core. Evaluation copies are available for free download from our website. You may also be seeing it because you are using the Wijmo Core CDN. We only host watermarked versions of Wijmo Core on our CDN.

How do I get rid of the watermark?

You must download and use a licensed version of Wijmo Core in order to remove the watermark. You can purchase Wijmo Core from our website or from our sales team. Once you purchase Wijmo Core, you will receive an email containing a link to download a licensed copy of our files. You can also access your licensed files by logging in to our site and visiting your account page. Thanks for evaluating Wijmo Core!

Contact us to learn more


Open Source Software

GrapeCity is an avid supporter of open source software. If you are creating an open source application under a license compatible with the GNU GPL license v3, the Open Source license is the appropriate license for you. Although the GPLv3 has many terms, the most important is that you must provide the source code of your application to your users so they can be free to modify your application for their own needs.


GrapeCity and the GPL v3

NOTE: This licensing information is only applicable to Wijmo 3.

What is the GPL v3?

The GNU General Public License (GPL) is the most widely used free and open source software (FOSS) license in the world. The GPL was created and sponsored by the Free Software Foundation (FSF).

What are the advantages of GPL v3?

The GPL is the most widely used open source license in the world. Linux, MySQL, WordPress, and other major open source projects are all licensed under the GPL. The GPL is designed to ensure that you have the freedom to modify the software you use as you see fit. In return, you are asked to ensure that any users of software that you have built using GPL software receive the same freedom to modify your software in turn. Licensing under GPLv3 ensures the highest amount of availability in the open source community.

What ComponentOne products are available under the GPL v3?

Wijmo is available under GPL v3.

The GPL v3

What am I not allowed to do with code that is released under the GPL v3?

You can download the code base, install it, and modify it as needed. If you modify the code, we encourage you to contribute it back to the ComponentOne community by contributing your modifications under GPL v3 in the ComponentOne forums. If you convey your modifications (under the GPL definition of conveyance) then you must make your modifications available in source form to the users to whom you distributed your software. More information about what the GPL license allows is available in the GPL license itself, the Quick Guide to the GPLv3 and the official GPL FAQ.

What is a modification?

The simple rule to follow is if you modify any functionality or file in a ComponentOne product for a purpose other than configuration, then you have created a modification. All modifications of a GPLv3 licensed products are subject to the GPL v3 license. Additional information is available in the official GPL FAQ.

The following are examples of modifications:

  • Modify Wijmo JavaScript or CSS source file
  • Extend Wijmo class or override any Wijmo functions or methods
  • Modifying a Wijmo API

The following are not modifications:

  • Creating a new theme in a new CSS file
  • Creating or applying a locale/language pack
  • Overriding property defaults on class prototypes (configuration)

What licenses are compatible with GPL v3?

A list of compatible licenses is available on gnu.org. This compatibility list includes licenses that can be included in a GPL’ed work. The diagram below shows the directions of compatibility for some common licenses:

Where can I find additional information about the GPL v3?

The best sources are the GPL license itself, the Quick Guide to the GPLv3” and the official GPL FAQ.

What is the ComponentOne interpretation of “conveyance” under the GPL v3?

The short answer to this question is that when a non-employee of the organization that created the modifications to GPL v3, uses those modifications, then the program has been “conveyed”.

The long answer to this question is unfortunately, quite complicated, due to the complex wording of the GPL, the ambiguity of certain terms in copyright law and the nature of JavaScript programs. Here is our interpretation of what constitutes “conveyance” under the languages of the GPL v3.

Derived Works

When a software program calls code that is licensed under the GPLv3, then that software program becomes a derived work of the GPL’d code and hence subject to the GPLv3 copyright license. If the software program is then “conveyed” to a user, the GPLv3 requires that the source code to that software program also be “conveyed.” “Conveyance” for a web application is triggered when a user outside the legal entity that created the application uses the application.

The Definition of a Software Program

Since the boundaries defining an individual software program can be hazy in modern app architectures, we follow the rule “when determining what constitutes the software program, follow the main principle of the GPL v3, which states that users should be free to modify the entire software program that incorporates GPL’d code for their own purposes”. For software programs built using today’s web architectures that use remote network-based service interfaces for internal communication instead of traditional static or dynamic linking, the relevant software program is the totality of the application code, including code executed on the server and code executed on the client, provided that the server code is integral to the application. We exclude from the definition of “software program”, software incorporated into the software program via a service interface that provides functionality ancillary to the main purpose of the program, functionality unrelated to application logic, or functionality that is used by a number of separate applications other than the application in question. With this caveat, please remember that the use of any specific technical approach in and of itself does not guarantee that “derivation” will not be held to have occurred.

Example

For example: let’s take a mortgage processing software program. Let’s say that the application has a front-end (that generates web pages linked to Wijmo JavaScript) that communicates over JSON/HTTP with a backend service. This backend service contains approval and validation logic for this application alone. Even if only the front-end uses Wijmo code, you should consider that the combination of front and back ends constitutes the application, and the source code for both back and front end would need to be provided to the application’s end users under GPLv3 if the application is used by an end-user who is not part of the same legal entity that holds the GPLv3 license to the Wijmo code.

Next, let’s assume that the mortgage application web-pages also offer functionality that allows users to search current interest rates, and file a customer support ticket (functionality ancillary to the purpose of the application) and those functions are provided by separate server-side services. We do not consider those programs to compose part of the software program for the purposes of the GPLv3. For example, in all cases we would not consider a database that provides data interfaces to the application over standard interfaces to be part of the application.

Reasonableness Test

As mentioned above, in many cases, there can be ambiguity about the exact boundaries of a software program. In these cases, we apply a “reasonableness” test to establish application boundaries. Following the principles of the GPL v3, we should ask “what would a user who is conveyed a copy of the application reasonably expect to receive in source code form in order to modify the application for his or her needs.”

Certain Technical Strategies

Our interpretation is that the use of technical strategies that store and transmit Wijmo code as data (for example by storing JavaScript libraries as data-files within a database which are then transmitted as data files to the browser and only then converted into a program through the use of eval()) does not change the above definition of software program under the GPLv3 definitions.

Definition of License Holder

Following GPL v3 guidelines, we consider the holder of the GPL v3 license to be the legal entity that owns the rights to the work product of the developer who writes the software code that calls Wijmo functions. For example, a developer that downloads Wijmo and uses it to build an application that is copied to multiple offices within their company and serves web pages to employees across the country, has not triggered “conveyance” of the program since the containing corporate entity is the licensee, not the individual developer. However if a contractor, agent, employee of another subsidiary or other non-employee uses that software, then conveyance has occurred.

In addition, if a copy of the software program is provided by the developer to a person in another legal entity, then we consider that “conveyance”, as defined by the GPLv3, has occurred, and that person must be provided with a copy of the source for the software program. Further conveyance by the recipient would only be permitted under the GPL v3.

Conveyance vs. Propagation

Since Wijmo is a software program that can run within the browser while disconnected from the network or the rest of a server program; when a Wijmo based interface is embedded in a web-page served to a user who does not have an employee relationship with the original licensed entity, we consider that “conveyance” rather than simple web page “propagation” as defined by the GPL v3 has occurred, and the source code of the whole application must be provided to the user. Users who are not entitled to use the software under the original license grant to the recipient legal entity (whose developer downloaded and wrote to the Wijmo libraries) include contractors, agents, and distributors of the original legal entity, as well as employees of related corporate subsidiaries or parents. In these cases, a user who is a contractor must be provided with a copy of the source code of the application with further conveyance by the contractor permitted only under the GPL v3. This also applies to web development firms who create software programs under contract for a client.

In the case of the GPLv3 licensed entities, our interpretation is that the distribution of abstraction/intermediary libraries to contractors or users outside the licensed legal entity for development purposes also falls under the definition of “conveyance.”

GPL v3 Is The Official License

While this is our best attempt to characterize our interpretation of the GPL v3, relatively little of this interpretation has been confirmed in law due to the limited case law surrounding GPL v3. In all cases, the GPL v3 text itself constitutes the actual legal agreement between ComponentOne and our GPL v3 licensees. This FAQ does not constitute legal advice, but reflects our position on the responsibilities of users who use our software licensed under the GPLv3. We do not provide legal advice to current or potential users of our GPLv3 licensed programs, so we ask you to consult your own legal counsel if you have further questions.