canvas-globe 0.1.6 → 1.0.0-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -0
- package/LICENSE.md +251 -0
- package/LICENSING.md +26 -66
- package/README.md +18 -20
- package/THIRD_PARTY_NOTICES.md +1 -1
- package/codemeta.json +2 -2
- package/dist/canvas-globe.umd.js +164 -23
- package/package.json +5 -3
- package/src/geo-globe.js +72 -4
- package/src/index.js +9 -1
- package/src/license.js +91 -18
- package/src/version.js +2 -0
- package/types/index.d.ts +17 -5
- package/LICENSE +0 -674
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,21 @@ All notable changes to this package are documented here. The format follows
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
+
## [1.0.0-beta.2] - 2026-09-17
|
|
10
|
+
|
|
11
|
+
- Corrected the project-creator help and README so beta users install the
|
|
12
|
+
current `next` channel instead of the older `latest` release.
|
|
13
|
+
- Added a CLI help regression test and kept all coordinated packages and
|
|
14
|
+
starter templates on the same beta version.
|
|
15
|
+
|
|
16
|
+
## [1.0.0-beta.1] - 2026-09-16
|
|
17
|
+
|
|
18
|
+
- Prepared an opt-in proprietary 1.x licensing model with a local `GLO`
|
|
19
|
+
license-key check and an in-component purchase notice for unlicensed
|
|
20
|
+
production use.
|
|
21
|
+
- Added commercial release safeguards and coordinated migration tools without
|
|
22
|
+
introducing license-server or visitor-analytics requests.
|
|
23
|
+
|
|
9
24
|
## [0.1.6] - 2026-09-15
|
|
10
25
|
|
|
11
26
|
- Improved the package description and discovery metadata used by npm,
|
package/LICENSE.md
ADDED
|
@@ -0,0 +1,251 @@
|
|
|
1
|
+
# CanvasGlobe Software License Agreement
|
|
2
|
+
|
|
3
|
+
**Version 2.0, effective September 16, 2026**
|
|
4
|
+
|
|
5
|
+
This Commercial License Agreement ("Agreement") is between Harsh
|
|
6
|
+
Jhunjhunuwala, an individual trading as Swiftools ("Licensor"), and the person
|
|
7
|
+
or legal entity that downloads, installs, purchases, or uses the
|
|
8
|
+
Software ("Customer"). Swiftools is an operating brand and is not a separate
|
|
9
|
+
legal entity.
|
|
10
|
+
|
|
11
|
+
By downloading, installing, purchasing, or using the Software,
|
|
12
|
+
Customer accepts this Agreement. An individual accepting for an organization
|
|
13
|
+
represents that they have authority to bind it. A Customer that does not agree
|
|
14
|
+
must not use the Software.
|
|
15
|
+
|
|
16
|
+
The applicable order, including its plan, price, developer count, product
|
|
17
|
+
count, update period, and any negotiated terms, is the "Order". This Agreement
|
|
18
|
+
and the Order form the complete commercial license for that Order.
|
|
19
|
+
|
|
20
|
+
## 1. Definitions
|
|
21
|
+
|
|
22
|
+
- "Software" means the CanvasGlobe source code, compiled artifacts,
|
|
23
|
+
documentation, and official updates supplied under an Order.
|
|
24
|
+
- "Developer" means an employee or contractor who accesses the Software to
|
|
25
|
+
develop or modify a Customer Product.
|
|
26
|
+
- "Customer Product" means a website, application, service, or other product
|
|
27
|
+
that Customer owns and controls and that is permitted by the Order.
|
|
28
|
+
- "Internal Product" means a Customer Product used only by Customer and its
|
|
29
|
+
personnel and not sold, licensed, supplied, or made available to third
|
|
30
|
+
parties as a product or service.
|
|
31
|
+
- "Redistributable Product" means an SDK, builder, template, component
|
|
32
|
+
library, white-label product, installable product, code generator, or other
|
|
33
|
+
product that supplies the Software or reusable copies of it to third
|
|
34
|
+
parties.
|
|
35
|
+
- "Update Period" means the period stated in the Order during which Customer
|
|
36
|
+
may receive new Software versions and the included support.
|
|
37
|
+
|
|
38
|
+
## 2. Commercial license grant
|
|
39
|
+
|
|
40
|
+
Subject to payment and compliance with this Agreement, Licensor grants
|
|
41
|
+
Customer a non-exclusive, worldwide, non-transferable license to use,
|
|
42
|
+
reproduce, modify, and incorporate the Software into the Customer Products
|
|
43
|
+
permitted by the Order, and to distribute those Customer Products in
|
|
44
|
+
proprietary form for Customer's end users.
|
|
45
|
+
|
|
46
|
+
This commercial grant applies only within the Developer, Customer Product,
|
|
47
|
+
entity and redistribution limits in the Order.
|
|
48
|
+
|
|
49
|
+
For a perpetual Order, Customer may continue using and distributing versions
|
|
50
|
+
received during the Update Period after that period ends. Access to later
|
|
51
|
+
versions, support, and development exceeding the purchased scope requires a
|
|
52
|
+
renewal or a new Order.
|
|
53
|
+
|
|
54
|
+
## 3. Standard plan scope
|
|
55
|
+
|
|
56
|
+
Unless the Order expressly states different limits:
|
|
57
|
+
|
|
58
|
+
- Solo permits one Developer and one Customer Product.
|
|
59
|
+
- Team permits up to five Developers and five Customer Products.
|
|
60
|
+
- Business permits up to twenty Developers and unlimited Internal Products
|
|
61
|
+
owned and controlled by the purchasing legal entity.
|
|
62
|
+
- OEM, Builder, and Enterprise rights exist only to the extent expressly
|
|
63
|
+
stated in a negotiated Order.
|
|
64
|
+
|
|
65
|
+
A production, staging, and development deployment of the same Customer
|
|
66
|
+
Product count as one product. Separate offerings count separately. Customer
|
|
67
|
+
may reassign a seat when a Developer permanently stops working on Customer's
|
|
68
|
+
covered products, but may not rotate seats to avoid a Developer limit.
|
|
69
|
+
|
|
70
|
+
## 4. Restrictions
|
|
71
|
+
|
|
72
|
+
Except where an OEM, Builder, or Enterprise Order expressly permits it,
|
|
73
|
+
Customer must not:
|
|
74
|
+
|
|
75
|
+
- sell, sublicense, publish, or distribute the Software on a standalone basis;
|
|
76
|
+
- use or include the Software in a Redistributable Product;
|
|
77
|
+
- provide the Software's source code to anyone other than authorized
|
|
78
|
+
Developers working solely for Customer;
|
|
79
|
+
- remove or obscure copyright, license, attribution, or third-party notices;
|
|
80
|
+
- share or use a license key outside the Customer entity and purchased scope;
|
|
81
|
+
- use one Order for an affiliate or other legal entity; or
|
|
82
|
+
- represent CanvasGlobe or the Swiftools brand as Customer's own library or
|
|
83
|
+
brand.
|
|
84
|
+
|
|
85
|
+
Customer may make reasonable internal backup copies. Contractors may access
|
|
86
|
+
the Software only for Customer, count toward the Developer limit, and must be
|
|
87
|
+
bound by confidentiality and use restrictions at least as protective as this
|
|
88
|
+
Agreement. Customer is responsible for their compliance.
|
|
89
|
+
|
|
90
|
+
## 5. License keys
|
|
91
|
+
|
|
92
|
+
A valid commercial license key is required for the applicable use. The Software
|
|
93
|
+
checks the key locally and does not contact a license server.
|
|
94
|
+
|
|
95
|
+
Without a valid key, the Software may display watermarks, licensing
|
|
96
|
+
notices, and console warnings, and later versions may limit functionality.
|
|
97
|
+
Customer must keep license keys confidential and must report suspected
|
|
98
|
+
disclosure or misuse. Keys associated with fraudulent, refunded, charged back,
|
|
99
|
+
shared, revoked, or out-of-scope Orders are not licensed for use.
|
|
100
|
+
|
|
101
|
+
## 6. Ownership and feedback
|
|
102
|
+
|
|
103
|
+
Licensor and its contributors retain all right, title, and interest in the
|
|
104
|
+
Software. Customer retains all right, title, and interest in Customer's code,
|
|
105
|
+
content, and data. No trademark or brand license is granted.
|
|
106
|
+
|
|
107
|
+
If Customer voluntarily provides suggestions or feedback, Customer grants
|
|
108
|
+
Licensor a perpetual, worldwide, non-exclusive, irrevocable, royalty-free
|
|
109
|
+
license to use and incorporate that feedback without restriction or payment.
|
|
110
|
+
This does not grant Licensor rights in Customer's confidential information or
|
|
111
|
+
Customer Product.
|
|
112
|
+
|
|
113
|
+
## 7. Updates and support
|
|
114
|
+
|
|
115
|
+
The Update Period and support level are stated in the Order. Unless the Order
|
|
116
|
+
says otherwise, standard plans include twelve months of new versions and
|
|
117
|
+
commercially reasonable email assistance for documented Software APIs.
|
|
118
|
+
Support excludes custom implementation, unrelated application debugging,
|
|
119
|
+
guaranteed response or resolution times, and support for versions or uses
|
|
120
|
+
outside the Order.
|
|
121
|
+
|
|
122
|
+
## 8. Orders, payment, taxes, and refunds
|
|
123
|
+
|
|
124
|
+
Kelviq acts as Merchant of Record for online purchases. Kelviq processes the
|
|
125
|
+
payment, tax, invoice, and refund transaction under the terms shown at
|
|
126
|
+
checkout. All fees are final and non-refundable,
|
|
127
|
+
and no credits are provided, except where a refund or other remedy is required
|
|
128
|
+
by applicable law or expressly stated in the Order or at checkout. Mandatory
|
|
129
|
+
rights under applicable law are not excluded.
|
|
130
|
+
|
|
131
|
+
A refund or charge reversal may end the commercial rights and access associated
|
|
132
|
+
with the refunded Order to the extent permitted by the applicable checkout
|
|
133
|
+
terms and law.
|
|
134
|
+
|
|
135
|
+
## 9. Privacy and order data
|
|
136
|
+
|
|
137
|
+
Kelviq processes checkout and payment data under its own privacy terms.
|
|
138
|
+
Licensor may receive order, contact, invoice, entitlement, and support
|
|
139
|
+
information needed to fulfill the Order, provide support, prevent abuse, keep
|
|
140
|
+
business records, and comply with law. Licensor's public privacy notice applies
|
|
141
|
+
to information it receives and controls.
|
|
142
|
+
|
|
143
|
+
The license-key check takes place locally in the Software. It does not add
|
|
144
|
+
visitor analytics or a license-server request to Customer's Application and
|
|
145
|
+
does not send visitor globe interactions or website activity to Licensor.
|
|
146
|
+
|
|
147
|
+
Customer must not send secrets, regulated data, license keys, or personal data
|
|
148
|
+
that is unnecessary for support.
|
|
149
|
+
|
|
150
|
+
## 10. Confidentiality
|
|
151
|
+
|
|
152
|
+
Each party must use reasonable care to protect the other party's non-public
|
|
153
|
+
information and may use it only to perform or enforce this Agreement.
|
|
154
|
+
Confidential information does not include information that the receiving party
|
|
155
|
+
can show was already lawfully known, independently developed without use of
|
|
156
|
+
the information, publicly available without breach, or lawfully received from
|
|
157
|
+
another source without a confidentiality duty.
|
|
158
|
+
|
|
159
|
+
A party may disclose information when legally required if it gives prior
|
|
160
|
+
notice where lawful and reasonably assists the other party in seeking
|
|
161
|
+
protection.
|
|
162
|
+
|
|
163
|
+
## 11. Limited authority warranty and disclaimer
|
|
164
|
+
|
|
165
|
+
Licensor warrants only that Licensor has authority to grant the commercial
|
|
166
|
+
rights stated in this Agreement. Except for that express warranty, the
|
|
167
|
+
Software, updates, support, and documentation are provided "as is" and "as
|
|
168
|
+
available". To the maximum extent permitted by law, Licensor disclaims all
|
|
169
|
+
other express, implied, and statutory warranties, including merchantability,
|
|
170
|
+
fitness for a particular purpose, title, non-infringement, accuracy, security,
|
|
171
|
+
and uninterrupted or error-free operation.
|
|
172
|
+
|
|
173
|
+
Customer is responsible for evaluating the Software, maintaining backups,
|
|
174
|
+
securing its systems, and confirming that its use satisfies applicable laws
|
|
175
|
+
and requirements.
|
|
176
|
+
|
|
177
|
+
## 12. Limitation of liability
|
|
178
|
+
|
|
179
|
+
To the maximum extent permitted by law, neither party is liable under this
|
|
180
|
+
Agreement for lost profits, lost revenue, lost data, business interruption, or
|
|
181
|
+
indirect, incidental, special, exemplary, punitive, or consequential damages,
|
|
182
|
+
even if advised that those damages are possible.
|
|
183
|
+
|
|
184
|
+
To the maximum extent permitted by law, each party's total aggregate liability
|
|
185
|
+
arising from an Order will not exceed the fees paid for that Order. This cap
|
|
186
|
+
does not limit payment obligations, unauthorized use or distribution of the
|
|
187
|
+
Software, infringement or misuse of the other party's intellectual property,
|
|
188
|
+
breach of confidentiality, fraud, willful misconduct, or liability that law
|
|
189
|
+
does not permit a party to limit.
|
|
190
|
+
|
|
191
|
+
## 13. Indemnity
|
|
192
|
+
|
|
193
|
+
No indemnity is included in a standard Solo, Team, or Business Order. Any
|
|
194
|
+
indemnity must be expressly stated in a negotiated OEM or Enterprise Order.
|
|
195
|
+
|
|
196
|
+
## 14. Term and termination
|
|
197
|
+
|
|
198
|
+
This Agreement begins when Customer accepts it for an Order. Either party may
|
|
199
|
+
terminate the affected Order for a material breach that remains uncured thirty
|
|
200
|
+
days after written notice. Licensor may suspend access or terminate immediately
|
|
201
|
+
for nonpayment, fraudulent purchase, unlawful use, or material unauthorized
|
|
202
|
+
distribution.
|
|
203
|
+
|
|
204
|
+
On termination for Customer's breach, Customer must stop new use and
|
|
205
|
+
distribution under the commercial license and remove the Software from future
|
|
206
|
+
releases of Customer Products. Sections that by their nature should survive
|
|
207
|
+
will survive, including ownership, confidentiality, disclaimers, liability
|
|
208
|
+
limits, accrued payments, and general terms.
|
|
209
|
+
|
|
210
|
+
## 15. Earlier GPL releases
|
|
211
|
+
|
|
212
|
+
CanvasGlobe versions through 0.1.6 were separately released under GNU GPLv3.
|
|
213
|
+
Rights already received under those releases are not revoked by this Agreement.
|
|
214
|
+
This Agreement governs CanvasGlobe 1.0 and later and does not provide access to
|
|
215
|
+
future commercial versions under the earlier GPL terms.
|
|
216
|
+
|
|
217
|
+
## 16. General terms
|
|
218
|
+
|
|
219
|
+
This Agreement is governed by the laws of India, without regard to conflict of
|
|
220
|
+
laws rules. Courts with territorial jurisdiction over Licensor's principal
|
|
221
|
+
place of business or residence in India will have exclusive jurisdiction,
|
|
222
|
+
except that either party may seek urgent injunctive relief in any court with
|
|
223
|
+
appropriate jurisdiction.
|
|
224
|
+
|
|
225
|
+
Formal notices must be sent to [globe@swiftools.com](mailto:globe@swiftools.com)
|
|
226
|
+
and to the email address recorded for Customer's Order. A notice is effective
|
|
227
|
+
when receipt is acknowledged or the sending party receives an automated proof
|
|
228
|
+
of successful delivery without a rejection notice.
|
|
229
|
+
|
|
230
|
+
Customer may not assign or transfer this Agreement or an Order without
|
|
231
|
+
Licensor's written consent, except as part of a merger or sale of substantially
|
|
232
|
+
all of Customer's relevant business if the successor accepts this Agreement
|
|
233
|
+
and is not Licensor's direct competitor. Licensor may assign this Agreement to
|
|
234
|
+
a successor to CanvasGlobe or the relevant business.
|
|
235
|
+
|
|
236
|
+
Neither party is responsible for delay caused by events outside its reasonable
|
|
237
|
+
control, except for payment obligations. A failure to enforce a term is not a
|
|
238
|
+
waiver. If a term is unenforceable, it will be limited only as necessary and
|
|
239
|
+
the remaining terms continue in effect.
|
|
240
|
+
|
|
241
|
+
A negotiated Order controls over this Agreement only where it expressly says
|
|
242
|
+
that it overrides a named section. This Agreement controls over public pricing,
|
|
243
|
+
FAQ, documentation, marketing, and support pages. Changes apply only when
|
|
244
|
+
accepted for a new Order or renewal unless both parties agree otherwise in
|
|
245
|
+
writing.
|
|
246
|
+
|
|
247
|
+
This Agreement and the applicable Order are the complete agreement about the
|
|
248
|
+
commercial license and replace prior discussions about that Order. Electronic
|
|
249
|
+
acceptance and electronic records have the same effect as paper signatures.
|
|
250
|
+
|
|
251
|
+
Questions may be sent to [globe@swiftools.com](mailto:globe@swiftools.com).
|
package/LICENSING.md
CHANGED
|
@@ -1,83 +1,43 @@
|
|
|
1
1
|
# CanvasGlobe licensing
|
|
2
2
|
|
|
3
|
-
CanvasGlobe
|
|
4
|
-
|
|
3
|
+
CanvasGlobe 1.0 and later are proprietary software distributed under the
|
|
4
|
+
CanvasGlobe Software License Agreement. Public availability on npm or GitHub
|
|
5
|
+
does not grant open-source rights for these versions.
|
|
5
6
|
|
|
6
|
-
|
|
7
|
-
option is intended for projects that can comply with the GPL's terms.
|
|
8
|
-
2. **CanvasGlobe Commercial License**: paid permission for proprietary use
|
|
9
|
-
under the terms shown on the applicable order form and commercial license
|
|
10
|
-
agreement.
|
|
7
|
+
## Production use
|
|
11
8
|
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
separate legal entity.
|
|
9
|
+
Purchase the plan that covers the developers and products using CanvasGlobe:
|
|
10
|
+
https://canvasglobe.swiftools.com/pricing.
|
|
15
11
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
license grant.
|
|
12
|
+
Standard one-time licenses include perpetual use of eligible versions and 12
|
|
13
|
+
months of updates and support. OEM, builder, SDK, white-label, and other
|
|
14
|
+
redistribution uses require separately scoped terms.
|
|
20
15
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
The GPL permits commercial activity. A company does not automatically need a
|
|
24
|
-
commercial license merely because it earns money. The practical question is
|
|
25
|
-
whether the way CanvasGlobe is copied, modified, combined, and distributed can
|
|
26
|
-
comply with GPLv3.
|
|
27
|
-
|
|
28
|
-
Many proprietary applications choose the commercial license because they do
|
|
29
|
-
not want to accept the GPL obligations that may apply when distributing a
|
|
30
|
-
combined work. The legal treatment of browser JavaScript bundles and
|
|
31
|
-
application boundaries can be fact-specific. This page is a product summary,
|
|
32
|
-
not legal advice; ask qualified counsel about your situation.
|
|
33
|
-
|
|
34
|
-
## Commercial plan shape
|
|
35
|
-
|
|
36
|
-
The launch pricing proposed in this repository is:
|
|
37
|
-
|
|
38
|
-
| Plan | Price | Intended scope |
|
|
39
|
-
| --- | ---: | --- |
|
|
40
|
-
| Open Source | $0 | GPL-compatible projects |
|
|
41
|
-
| Solo Commercial | $79 | 1 developer, 1 proprietary product |
|
|
42
|
-
| Team Commercial | $249 | Up to 5 developers and 5 products |
|
|
43
|
-
| Business Commercial | $599 | Up to 20 developers; unlimited internal products |
|
|
44
|
-
| OEM / Builder | From $1,500 per product/year | Redistribution, white-label, builders, SDKs, and generated copies |
|
|
45
|
-
| Enterprise | Custom | Larger teams, affiliates, procurement, or negotiated terms |
|
|
46
|
-
|
|
47
|
-
The proposed perpetual plans grant perpetual use of the purchased version and
|
|
48
|
-
include 12 months of updates and support. Continued access to updates and
|
|
49
|
-
support after that period is an optional renewal. OEM and Enterprise terms may
|
|
50
|
-
be annual or negotiated.
|
|
51
|
-
|
|
52
|
-
These prices and descriptions are launch policy, not a substitute for the
|
|
53
|
-
signed commercial agreement. Commercial sales must not begin until the final
|
|
54
|
-
agreement and checkout terms are approved.
|
|
55
|
-
|
|
56
|
-
## License keys
|
|
57
|
-
|
|
58
|
-
Pass the license key supplied with a commercial order:
|
|
16
|
+
Add the license key supplied after purchase to your CanvasGlobe options:
|
|
59
17
|
|
|
60
18
|
```js
|
|
61
19
|
createGlobe(canvas, {
|
|
62
|
-
licenseKey: "
|
|
20
|
+
licenseKey: "GLO-your-license-key",
|
|
63
21
|
});
|
|
64
22
|
```
|
|
65
23
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
24
|
+
CanvasGlobe checks the key locally. A valid commercial key begins with `GLO`.
|
|
25
|
+
The package makes no license-server request and sends no visitor analytics.
|
|
26
|
+
|
|
27
|
+
Public production use without a valid key displays a small in-canvas licensing
|
|
28
|
+
notice and a browser-console warning. Local development remains functional so
|
|
29
|
+
a missing setup step does not interrupt development.
|
|
69
30
|
|
|
70
|
-
|
|
71
|
-
In a browser, a missing key logs an error and the placeholder logs a production
|
|
72
|
-
warning.
|
|
31
|
+
## Earlier GPL releases
|
|
73
32
|
|
|
74
|
-
|
|
33
|
+
Versions through 0.1.6 remain licensed under GNU GPLv3 under the terms supplied
|
|
34
|
+
with those versions. Those existing rights are not revoked. They do not apply to
|
|
35
|
+
CanvasGlobe 1.0 or later. See https://canvasglobe.swiftools.com/gpl-history.
|
|
75
36
|
|
|
76
|
-
|
|
77
|
-
[THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md).
|
|
37
|
+
## Licensor and support
|
|
78
38
|
|
|
79
|
-
|
|
39
|
+
Copyright (C) 2026 Harsh Jhunjhunuwala. CanvasGlobe is published under Swiftools,
|
|
40
|
+
an operating brand, not a separate legal entity.
|
|
80
41
|
|
|
81
|
-
Email
|
|
82
|
-
|
|
83
|
-
information in a public GitHub issue.
|
|
42
|
+
Email globe@swiftools.com for purchasing, licensing, and support questions. Do
|
|
43
|
+
not include confidential information in a public issue.
|
package/README.md
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
# CanvasGlobe
|
|
2
2
|
|
|
3
3
|
[](https://www.npmjs.com/package/canvas-globe)
|
|
4
|
-
[](https://jsr.io/@swiftools/canvas-globe)
|
|
5
4
|
[](https://www.npmjs.com/package/canvas-globe)
|
|
6
5
|
[](https://github.com/Shree-hari/canvas-globe/actions/workflows/ci.yml)
|
|
7
|
-
[](https://canvasglobe.swiftools.com/licensing)
|
|
8
7
|
[](types/index.d.ts)
|
|
9
8
|
[](package.json)
|
|
10
9
|
[](https://skills.sh/Shree-hari/canvas-globe)
|
|
@@ -66,25 +65,23 @@ cameras, custom shaders, or thousands of independent 3D objects. See the
|
|
|
66
65
|
|
|
67
66
|
## Licensing
|
|
68
67
|
|
|
69
|
-
CanvasGlobe
|
|
68
|
+
CanvasGlobe 1.0 and later are proprietary commercial software. Purchase a
|
|
69
|
+
[Solo, Team, Business, or OEM license](https://canvasglobe.swiftools.com/pricing)
|
|
70
|
+
before production use or redistribution.
|
|
70
71
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
The full package and feature set are the same on both paths. GPL permits
|
|
75
|
-
commercial activity; whether a particular distribution can comply is
|
|
76
|
-
fact-specific. See [LICENSING.md](LICENSING.md) and the
|
|
77
|
-
[commercial plans](https://canvasglobe.swiftools.com/pricing).
|
|
78
|
-
|
|
79
|
-
Pass the license key supplied with a commercial order. GPLv3-compatible
|
|
80
|
-
projects can request a complimentary key through the licensing page:
|
|
72
|
+
Add the license key supplied after purchase to the CanvasGlobe options. Valid
|
|
73
|
+
commercial keys begin with `GLO`. The check runs locally, and websites using
|
|
74
|
+
CanvasGlobe make no license-server or analytics requests to Swiftools:
|
|
81
75
|
|
|
82
76
|
```js
|
|
83
|
-
createGlobe(canvas, {
|
|
77
|
+
createGlobe(canvas, {
|
|
78
|
+
licenseKey: "GLO-your-license-key",
|
|
79
|
+
});
|
|
84
80
|
```
|
|
85
81
|
|
|
86
|
-
|
|
87
|
-
|
|
82
|
+
Versions through 0.1.6 remain available under GPL-3.0-only under the terms
|
|
83
|
+
supplied with those releases. See [LICENSING.md](LICENSING.md) and the
|
|
84
|
+
[license history](https://canvasglobe.swiftools.com/gpl-history).
|
|
88
85
|
|
|
89
86
|
## Install
|
|
90
87
|
|
|
@@ -241,7 +238,7 @@ To scaffold a complete starter for React, Next.js, Vue, SvelteKit, Vanilla
|
|
|
241
238
|
JavaScript, or Web Components, run:
|
|
242
239
|
|
|
243
240
|
```bash
|
|
244
|
-
npm create canvas-globe@
|
|
241
|
+
npm create canvas-globe@next my-globe
|
|
245
242
|
```
|
|
246
243
|
|
|
247
244
|
### AI-assisted setup
|
|
@@ -252,13 +249,13 @@ Install the repository's CanvasGlobe skill for compatible coding agents:
|
|
|
252
249
|
npx skills add https://github.com/Shree-hari/canvas-globe --skill canvas-globe
|
|
253
250
|
```
|
|
254
251
|
|
|
255
|
-
Or copy the maintained prompt from the [AI-assisted setup guide](https://canvasglobe.swiftools.com/getting-started/ai-assisted-setup). The skill and prompt select the correct framework entry point, include cleanup and accessibility, and require
|
|
252
|
+
Or copy the maintained prompt from the [AI-assisted setup guide](https://canvasglobe.swiftools.com/getting-started/ai-assisted-setup). The skill and prompt select the correct framework entry point, include cleanup and accessibility, and require the user to purchase a production license before shipping.
|
|
256
253
|
|
|
257
254
|
## Options
|
|
258
255
|
|
|
259
256
|
| Option | Default | Description |
|
|
260
257
|
| --- | --- | --- |
|
|
261
|
-
| `licenseKey` | `
|
|
258
|
+
| `licenseKey` | `null` | Commercial license key supplied after purchase; valid keys begin with `GLO` |
|
|
262
259
|
| `mode` | `"globe"` | `"globe"` (orthographic, spinnable) or `"map"` (flat) |
|
|
263
260
|
| `projection` | `"equirectangular"` | Flat-map projection: also `"mercator"`, `"naturalEarth"` |
|
|
264
261
|
| `preset` | Not set | Named bundle of theme + render style, applied under your options |
|
|
@@ -713,7 +710,8 @@ drawn, so a typical globe frame skips 20-60% of the world. On a laptop a 560 px
|
|
|
713
710
|
- Country geometry: [Natural Earth](https://www.naturalearthdata.com/) 1:110m via `world-atlas`, **public domain**
|
|
714
711
|
- ISO codes: [natural-earth-vector](https://github.com/nvkelso/natural-earth-vector), **public domain**
|
|
715
712
|
- Supplemental geometry: [Datameet maps](https://github.com/datameet/maps), **CC-0**
|
|
716
|
-
-
|
|
713
|
+
- CanvasGlobe 1.0 and later: **CanvasGlobe Software License Agreement**
|
|
714
|
+
- CanvasGlobe through 0.1.6: **GPL-3.0-only**
|
|
717
715
|
|
|
718
716
|
See [THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md) for source links and
|
|
719
717
|
provenance.
|
package/THIRD_PARTY_NOTICES.md
CHANGED
|
@@ -7,7 +7,7 @@ CanvasGlobe includes geographic data derived from these sources:
|
|
|
7
7
|
| `src/data/world.js` | [Natural Earth 1:110m](https://www.naturalearthdata.com/about/terms-of-use/) through [world-atlas](https://github.com/topojson/world-atlas) | Natural Earth states that its data is public domain |
|
|
8
8
|
| `src/data/india.js` | [Datameet india-composite](https://github.com/datameet/maps) | CC0 / public-domain dedication as stated by the source repository |
|
|
9
9
|
|
|
10
|
-
The
|
|
10
|
+
The CanvasGlobe Software License Agreement applies to CanvasGlobe's original software
|
|
11
11
|
code. It does not replace the terms or public-domain status of third-party
|
|
12
12
|
data.
|
|
13
13
|
|
package/codemeta.json
CHANGED
|
@@ -5,14 +5,14 @@
|
|
|
5
5
|
"identifier": "canvas-globe",
|
|
6
6
|
"description": "CanvasGlobe helps developers add interactive 3D globes and flat world maps to JavaScript and React apps with Canvas 2D, without WebGL, map tiles, API keys, or runtime network calls.",
|
|
7
7
|
"url": "https://canvasglobe.swiftools.com/",
|
|
8
|
-
"version": "0.
|
|
8
|
+
"version": "1.0.0-beta.2",
|
|
9
9
|
"codeRepository": "https://github.com/Shree-hari/canvas-globe",
|
|
10
10
|
"issueTracker": "https://github.com/Shree-hari/canvas-globe/issues",
|
|
11
11
|
"downloadUrl": "https://www.npmjs.com/package/canvas-globe",
|
|
12
12
|
"applicationCategory": "DeveloperApplication",
|
|
13
13
|
"programmingLanguage": "JavaScript",
|
|
14
14
|
"runtimePlatform": "Web browser with Canvas 2D",
|
|
15
|
-
"license": "https://
|
|
15
|
+
"license": "https://canvasglobe.swiftools.com/commercial-license",
|
|
16
16
|
"author": {
|
|
17
17
|
"@type": "Person",
|
|
18
18
|
"name": "Harsh Jhunjhunuwala"
|