UNPKG

19.1 kBHTMLView Raw
1<!DOCTYPE html>
2<html lang="en">
3 <head>
4<meta charset="utf-8"/>
5<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no, viewport-fit=cover"/>
6
7<link rel="stylesheet" href="../assets/css/style.css"/>
8<!-- Copyright 1998-2021 by Northwoods Software Corporation. --> <title> GoJS Deployment -- Northwoods Software </title>
9 <link rel="stylesheet" href="../assets/css/prism.css" />
10 </head>
11 <script>
12
13 window.diagrams = [];
14 window.goCode = function(pre, w, h, parentid, animation) {
15 window.diagrams.push([pre, w, h, parentid, animation]);
16 }
17 </script>
18 <body>
19 <nav id="navTop" class="w-full z-30 top-0 text-white bg-nwoods-primary">
20 <div class="w-full container max-w-screen-lg mx-auto flex flex-wrap sm:flex-nowrap items-center justify-between mt-0 py-2">
21 <div class="md:pl-4">
22 <a class="text-white hover:text-white no-underline hover:no-underline
23 font-bold text-2xl lg:text-4xl rounded-lg hover:bg-nwoods-secondary " href="../">
24 <h1 class="mb-0 p-1 ">GoJS</h1>
25 </a>
26 </div>
27 <button id="topnavButton" class="rounded-lg sm:hidden focus:outline-none focus:ring" aria-label="Navigation">
28 <svg fill="currentColor" viewBox="0 0 20 20" class="w-6 h-6">
29 <path id="topnavOpen" fill-rule="evenodd" d="M3 5a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM3 10a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM9 15a1 1 0 011-1h6a1 1 0 110 2h-6a1 1 0 01-1-1z" clip-rule="evenodd"></path>
30 <path id="topnavClosed" class="hidden" fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
31 </svg>
32 </button>
33 <div id="topnavList" class="hidden sm:block items-center w-auto mt-0 text-white p-0 z-20">
34 <ul class="list-reset list-none font-semibold flex justify-end flex-wrap sm:flex-nowrap items-center px-0 pb-0">
35 <li class="p-1 sm:p-0"><a class="topnav-link" href="../learn/">Learn</a></li>
36 <li class="p-1 sm:p-0"><a class="topnav-link" href="../samples/">Samples</a></li>
37 <li class="p-1 sm:p-0"><a class="topnav-link" href="../intro/">Intro</a></li>
38 <li class="p-1 sm:p-0"><a class="topnav-link" href="../api/">API</a></li>
39 <li class="p-1 sm:p-0"><a class="topnav-link" href="https://www.nwoods.com/products/register.html">Register</a></li>
40 <li class="p-1 sm:p-0"><a class="topnav-link" href="../download.html">Download</a></li>
41 <li class="p-1 sm:p-0"><a class="topnav-link" href="https://forum.nwoods.com/c/gojs/11">Forum</a></li>
42 <li class="p-1 sm:p-0"><a class="topnav-link" href="https://www.nwoods.com/contact.html"
43 target="_blank" rel="noopener" onclick="getOutboundLink('https://www.nwoods.com/contact.html', 'contact');">Contact</a></li>
44 <li class="p-1 sm:p-0"><a class="topnav-link" href="https://www.nwoods.com/sales/index.html"
45 target="_blank" rel="noopener" onclick="getOutboundLink('https://www.nwoods.com/sales/index.html', 'buy');">Buy</a></li>
46 </ul>
47 </div>
48 </div>
49 <hr class="border-b border-gray-600 opacity-50 my-0 py-0" />
50 </nav>
51
52 <div class="md:flex flex-col md:flex-row md:min-h-screen w-full max-w-screen-xl mx-auto">
53
54 <div id="navSide" class="flex flex-col w-full md:w-40 lg:w-48 text-gray-700 bg-white flex-shrink-0">
55 <div class="flex-shrink-0 px-8 py-4">
56 <button id="navButton" class="rounded-lg md:hidden focus:outline-none focus:ring" aria-label="Navigation">
57 <svg fill="currentColor" viewBox="0 0 20 20" class="w-6 h-6">
58 <path id="navOpen" fill-rule="evenodd" d="M3 5a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM3 10a1 1 0 011-1h12a1 1 0 110 2H4a1 1 0 01-1-1zM9 15a1 1 0 011-1h6a1 1 0 110 2h-6a1 1 0 01-1-1z" clip-rule="evenodd"></path>
59 <path id="navClosed" class="hidden" fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"></path>
60 </svg>
61 </button>
62 </div>
63 <nav id="navList" class="min-h-screen hidden md:block sidebar-nav flex-grow px-1 lg:px-4 pb-4 md:pb-0 md:overflow-y-auto break-words">
64 <a href="index.html">Basics</a>
65 <a href="buildingObjects.html">Building Parts</a>
66 <a href="usingModels.html">Using Models</a>
67 <a href="dataBinding.html">Data Binding</a>
68 <a href="react.html">GoJS with React</a>
69 <a href="angular.html">GoJS with Angular</a>
70 <a href="textBlocks.html">TextBlocks</a>
71 <a href="shapes.html">Shapes</a>
72 <a href="pictures.html">Pictures</a>
73 <a href="panels.html">Panels</a>
74 <a href="tablePanels.html">Table Panels</a>
75 <a href="brush.html">Brushes</a>
76 <a href="sizing.html">Sizing Objects</a>
77 <a href="itemArrays.html">Item Arrays</a>
78 <a href="changedEvents.html">Changed Events</a>
79 <a href="transactions.html">Transactions</a>
80 <a href="viewport.html">Coordinates</a>
81 <a href="initialView.html">Initial View</a>
82 <a href="collections.html">Collections</a>
83 <a href="links.html">Links</a>
84 <a href="linkLabels.html">Link Labels</a>
85 <a href="connectionPoints.html">Link Points</a>
86 <a href="ports.html">Ports</a>
87 <a href="nodes.html">Nodes</a>
88 <a href="debugging.html">Debugging</a>
89 <a href="layouts.html">Layouts</a>
90 <a href="trees.html">Trees</a>
91 <a href="subtrees.html">SubTrees</a>
92 <a href="groups.html">Groups</a>
93 <a href="subgraphs.html">SubGraphs</a>
94 <a href="sizedGroups.html">Sized Groups</a>
95 <a href="selection.html">Selection</a>
96 <a href="highlighting.html">Highlighting</a>
97 <a href="animation.html">Animation</a>
98 <a href="toolTips.html">ToolTips</a>
99 <a href="contextmenus.html">Context Menus</a>
100 <a href="events.html">Diagram Events</a>
101 <a href="tools.html">Tools</a>
102 <a href="commands.html">Commands</a>
103 <a href="permissions.html">Permissions</a>
104 <a href="validation.html">Validation</a>
105 <a href="HTMLInteraction.html">HTML Interaction</a>
106 <a href="layers.html">Layers &amp; Z-ordering</a>
107 <a href="palette.html">Palette</a>
108 <a href="overview.html">Overview</a>
109 <a href="resizing.html">Resizing Diagrams</a>
110 <a href="replacingDeleting.html">Replacing and Deleting</a>
111 <a href="buttons.html">Buttons</a>
112 <a href="templateMaps.html">Template Maps</a>
113 <a href="legends.html">Legends and Titles</a>
114 <a href="extensions.html">Extensions</a>
115 <a href="geometry.html">Geometry Strings</a>
116 <a href="grids.html">Grid Patterns</a>
117 <a href="graduatedPanels.html">Graduated Panels</a>
118 <a href="makingImages.html">Diagram Images</a>
119 <a href="makingSVG.html">Diagram SVG</a>
120 <a href="printing.html">Printing</a>
121 <a href="serverSideImages.html">Server-side Images</a>
122 <a href="nodeScript.html">GoJS in Node.js</a>
123 <a href="testing.html">Testing</a>
124 <a href="storage.html">Storage</a>
125 <a href="performance.html">Performance</a>
126 <a href="source.html">Building from Source</a>
127 <a href="platforms.html">Platforms</a>
128 <a href="deployment.html">Deployment</a>
129 </nav>
130 </div>
131 <div class="pt-4 px-2 md:px-0 lg:px-4 pb-16 w-full overflow-hidden">
132
133
134
135
136<h1>Deployment</h1>
137<p>
138 The <b>GoJS</b> library is software that is licensed under a
139 <a href="../license.html">commercial license agreement</a>.
140 It is not open-source.
141 If you have downloaded a copy of the <b>GoJS</b> library from <a href="https://gojs.net">gojs.net</a> or npm or GitHub
142 for use in your own app, you may have noticed that a watermark appears in the diagram.
143 For version 1.8 and beyond, you need to use a license key to remove this watermark from your domain.
144 For versions 1.7 and earlier, view the <a href="https://gojs.net/1.7.29/intro/deployment.html">1.7 documentation</a>.
145</p>
146<p>
147 When you want to deploy to your own web site your app that uses <b>GoJS</b>, you will need to make a request at:
148 <a href="https://www.nwoods.com/app/activate.aspx?sku=gojs" target="_blank">https://www.nwoods.com/app/activate.aspx?sku=gojs</a>.
149</p>
150<p>
151 Enter your e-mail address and the e-mail address of the person who purchased a license for <b>GoJS</b>,
152 the order number for that purchase, and your web site's domain name.
153 Please make sure that e-mail from "nwoods.com" is not caught in your corporate or personal spam filter.
154 If you <a href="https://www.nwoods.com/contact.html">contact us</a> for further help either via our web site
155 or by sending us email, please include the e-mail that our web server sent to you.
156</p>
157<p>
158 Regarding domain names, for example, if your app will be at:
159 <code>https://www.example.com/app/ProcessEditor.html</code>,
160 enter <code>example.com</code> as the domain name.
161 This procedure works for internal corporate web sites as well as for public web sites, with hostnames and with IP addresses.
162 The protocol and port number do not matter.
163 It will work when the HTML page is served from a subdomain of the licensed domain,
164 such as from <code>editors.example.com</code>.
165 With any valid license key it will also work at the "localhost" domain, which is useful when debugging and testing.
166</p>
167<p>
168 The GoJS library never "phones home" -- it will never initiate any network traffic other than when explicitly directed to do so,
169 such as for downloading image files.
170</p>
171
172<p>
173 Our server will generate a GoJS license key for you, in the form of a JavaScript statement that you will need to include with your code.
174 It must execute after the GoJS library file has been loaded, but before you create your first <a>Diagram</a>.
175</p>
176<pre class="lang-js"><code>// Must execute after loading the library and before you create your first Diagram:
177go.Diagram.licenseKey = "YourKeyHere";
178</code></pre>
179Before version 2.0, you need to write:
180<pre class="lang-js"><code>// Must execute after loading the library and before you create your first Diagram:
181go.licenseKey = "YourKeyHere";
182</code></pre>
183<p>
184 This mechanism works when using either the release library, <code>go.js</code>, or the debug library,
185 <code>go-debug.js</code>, but only with GoJS version 1.8 or later.
186 Note that this assignment is of a static property of the Diagram class: <a>Diagram,licenseKey</a>.
187 Of course you will need to substitute your generated license key string for <code>"YourKeyHere"</code> in the <code>go.Diagram.licenseKey</code> assignment statement.
188 License keys are long strings without any embedded whitespace or punctuation.
189 You can request license keys for as many domains as you have licensed.
190</p>
191<p>
192 Once your key is in place, you can continue to use the same key while updating the patch version of GoJS.
193 For example, a license key for version 1.8.3 will work for all versions 1.8.*.
194 Remember to get a new license key when upgrading to a new major or minor version of GoJS.
195 For example, when upgrading from version 5.3.1 to version 5.4.6, you will need a new license key.
196</p>
197<p>
198 License keys only depend on the major/minor version number and the domain from which the HTML page was served.
199 License keys are valid forever, as long as the major and minor version number of the library do not change and
200 as long as the HTML page is served from the same domain.
201</p>
202<p>
203 You can download the <code>go.js</code> or <code>go-debug.js</code> library
204 from the <a href="../download.html" target="_blank">GoJS Downloads page</a>,
205 or you can install it using <a href="https://www.npmjs.com/package/gojs" target="_blank">Node package manager (npm)</a>,
206 or you can link to a CDN such as <a href="https://unpkg.com/browse/gojs/" target="_blank">UNPKG</a>
207 or <a href="https://www.jsdelivr.com/package/npm/gojs">JSDELIVR</a>.
208</p>
209
210<h2 id="ForUnlimitedDomainsOEMCustomers">For Unlimited Domains OEM Customers</h2>
211<p>
212 If you are an ISV and intend to distribute your app to run on many customers' web sites,
213 <a href="https://www.nwoods.com/contact.html">Contact sales</a> for our our Unlimited Domains option and instructions.
214</p>
215<p>
216 When building a desktop application using Electron or when hosted in a WebView as part of a desktop application,
217 your HTML page is not being served from a web server at a domain.
218 In such circumstances you will need to use the Unlimited Domains option to make sure your Diagram does not display a watermark.
219</p>
220
221<h2 id="InternationalizationAndLocalization">Internationalization and Localization</h2>
222<p>
223 <b>GoJS</b> apps can display text in non-Latin languages.
224 For example, see <a href="../samples/familyTreeJP.html" target="samples">Japanese Family Tree</a>.
225</p>
226<p>
227 The <b>GoJS</b> library does not manipulate currency values or date/time values or addresses,
228 so there are no localization issues with those data types and values.
229 <b>GoJS</b> does not contain any of its own icons (images) or cursors.
230</p>
231<p>
232 Nor does <b>GoJS</b> display any built-in text strings, so no translation is needed.
233 There are error and warning messages that may be output to the console, but
234 those messages are only meant for debugging by programmers, not for consumption by end users.
235 Reading and writing of numeric values is only performed internally
236 when reading and writing JSON or geometry path strings or CSS colors, which are all defined to use non-localized formats.
237</p>
238<p>
239 All user-visible text is completely under the control of the programmer.
240 For localizability you may find it convenient to use conversion functions in <a>Binding</a>s.
241 The <a>TextEditingTool</a> uses an HTML TextArea element to implement in-place text input and text editing,
242 thereby utilising the browser's support for input method editors.
243</p>
244
245 </div>
246 </div>
247
248 <div class="bg-nwoods-primary">
249 <section class="max-w-screen-lg text-white container mx-auto py-2 px-12">
250 <p id="version" class="leading-none mb-2 my-4">GoJS</p>
251 </section>
252 </div><footer class="bg-nwoods-primary text-white">
253 <div class="container max-w-screen-lg mx-auto px-8">
254 <div class="w-full py-6">
255
256 <div class="max-w-screen-lg xl:max-w-screen-xl mx-auto px-4 sm:px-6 md:px-8">
257 <ul class="text-sm font-medium pb-14 sm:pb-20 grid grid-cols-1 sm:grid-cols-3 gap-y-10">
258 <li class="list-none row-span-2">
259 <h2 class="text-base font-semibold tracking-wide">GoJS</h2>
260 <ul class="list-none space-y-4 md:space-y-1 px-0">
261 <li>
262 <a href="../samples/index.html">Samples</a>
263 </li>
264 <li>
265 <a href="../learn/index.html">Learn</a>
266 </li>
267 <li>
268 <a href="../intro/index.html">Intro</a>
269 </li>
270 <li>
271 <a href="../api/index.html">API</a>
272 </li>
273 <li>
274 <a href="../changelog.html">Changelog</a>
275 </li>
276 <li>
277 <a href="https://github.com/NorthwoodsSoftware/GoJS">GitHub</a>
278 </li>
279 </ul>
280 </li>
281 <li class="list-none row-span-2">
282 <h2 class="text-base font-semibold tracking-wide">Support</h2>
283 <ul class="list-none space-y-4 md:space-y-1 px-0">
284 <li>
285 <a href="https://www.nwoods.com/contact.html"
286 target="_blank" rel="noopener" onclick="getOutboundLink('https://www.nwoods.com/contact.html', 'contact');">Contact</a>
287 </li>
288 <li>
289 <a href="https://forum.nwoods.com/c/gojs">Forum</a>
290 </li>
291 <li>
292 <a href="https://www.nwoods.com/app/activate.aspx?sku=gojs">Activate</a>
293 </li>
294 <li>
295 <a href="https://www.nwoods.com/sales/index.html"
296 target="_blank" rel="noopener" onclick="getOutboundLink('https://www.nwoods.com/sales/index.html', 'buy');">Buy</a>
297 </li>
298 <li>
299 <a href="https://www.youtube.com/channel/UC9We8EoX596-6XFjJDtZIDg">Videos</a>
300 </li>
301 </ul>
302 </li>
303 <li class="list-none row-span-2">
304 <h2 class="text-base font-semibold tracking-wide">Company</h2>
305 <ul class="list-none space-y-4 md:space-y-1 px-0">
306 <li>
307 <a href="https://www.nwoods.com">Northwoods</a>
308 </li>
309 <li>
310 <a href="https://www.nwoods.com/about.html">About Us</a>
311 </li>
312 <li>
313 <a href="https://www.nwoods.com/contact.html">Contact Us</a>
314 </li>
315 <li>
316 <a href="https://twitter.com/northwoodsgo">Twitter</a>
317 </li>
318
319 </ul>
320 </li>
321 </ul>
322
323
324 <p class="text-sm text-gray-100 md:mb-6">
325 Copyright 1998-2021 <a class="text-white" href="https://www.nwoods.com">Northwoods Software</a>
326 </p>
327 </div>
328 </div>
329</footer> </body>
330
331<script async src="https://www.googletagmanager.com/gtag/js?id=UA-1506307-5"></script>
332<script>
333 window.dataLayer = window.dataLayer || [];
334 function gtag(){dataLayer.push(arguments);}
335 gtag('js', new Date()); gtag('config', 'UA-1506307-5');
336 var getOutboundLink = function(url, label) {
337 gtag('event', 'click', {
338 'event_category': 'outbound',
339 'event_label': label,
340 'transport_type': 'beacon'
341 });
342 }
343
344 // topnav
345 var topButton = document.getElementById("topnavButton");
346 var topnavList = document.getElementById("topnavList");
347 topButton.addEventListener("click", function() {
348 this.classList.toggle("active");
349 topnavList.classList.toggle("hidden");
350 document.getElementById("topnavOpen").classList.toggle("hidden");
351 document.getElementById("topnavClosed").classList.toggle("hidden");
352 });
353</script>
354 <script src="../assets/js/prism.js"></script>
355 <script src="../release/go.js"></script>
356 <script src="../assets/js/goDoc.js"></script>
357 <script>
358 document.addEventListener("DOMContentLoaded", function() {
359 if (window.go) document.getElementById('version').textContent = "GoJS version " + go.version;
360 if (window.goDoc) window.goDoc();
361 var d = window.diagrams;
362 for (var i = 0; i < d.length; i++) {
363 var dargs = d[i];
364 goCodeExecute(dargs[0], dargs[1], dargs[2], dargs[3], dargs[4]);
365 }
366 if (window.extra) window.extra();
367 });
368 </script>
369</html>