@dvai-bridge/capacitor-mlx 4.0.0 → 4.0.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/LICENSE +341 -34
- package/dist/index.cjs.map +1 -1
- package/dist/index.js.map +1 -1
- package/package.json +5 -5
- package/README.md +0 -199
package/LICENSE
CHANGED
|
@@ -1,51 +1,358 @@
|
|
|
1
|
-
|
|
1
|
+
DVAI BRIDGE COMMUNITY LICENCE
|
|
2
|
+
Version 1.0 — "DVAI-BCL v1.0"
|
|
3
|
+
Copyright (c) 2026 Deep Voice AI Limited (Company No. 16743132)
|
|
2
4
|
|
|
3
|
-
|
|
5
|
+
================================================================================
|
|
6
|
+
NOTICE TO USER
|
|
7
|
+
================================================================================
|
|
4
8
|
|
|
5
|
-
This
|
|
9
|
+
This is the legal text of the DVAI Bridge Community Licence ("DVAI-BCL v1.0",
|
|
10
|
+
or "this Licence"). DVAI Bridge is source-available software developed by Deep
|
|
11
|
+
Voice AI Limited, a company incorporated in England and Wales with registered
|
|
12
|
+
number 16743132 ("Licensor", "we", "us"). Anyone may read, modify, build, and
|
|
13
|
+
redistribute this software under the terms set out below.
|
|
6
14
|
|
|
7
|
-
|
|
15
|
+
You may use DVAI Bridge free of charge for Permitted Uses (defined below).
|
|
16
|
+
Commercial Use of DVAI Bridge requires a separate Commercial Licence from us.
|
|
17
|
+
On the Change Date specified below, each Released Version of DVAI Bridge
|
|
18
|
+
automatically converts to the Apache License, Version 2.0 ("Apache 2.0"). The
|
|
19
|
+
conversion is irrevocable and is the structural commitment by which we
|
|
20
|
+
guarantee the eventual full open-source availability of DVAI Bridge.
|
|
8
21
|
|
|
9
|
-
|
|
22
|
+
This Licence is loosely modelled on the Business Source License 1.1 (BSL 1.1)
|
|
23
|
+
published by MariaDB Corporation Ab, with significant customisations to
|
|
24
|
+
support DVAI's dual-licensing commercial model, defined Permitted Uses, and
|
|
25
|
+
patent grant. It is not a Business Source License and the Licensor License
|
|
26
|
+
Grant in BSL 1.1 has been replaced.
|
|
10
27
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
- Non-commercial personal projects.
|
|
15
|
-
- Academic and non-profit research.
|
|
28
|
+
A plain-language summary of this Licence is published at
|
|
29
|
+
https://deepvoiceai.co/licensing. The summary is informational only; this
|
|
30
|
+
file is the legally binding instrument.
|
|
16
31
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
- Integration into revenue-generating products or services.
|
|
21
|
-
- Distribution to third-party customers for a fee.
|
|
22
|
-
- Use by an entity with more than $100,000 USD in annual revenue.
|
|
32
|
+
================================================================================
|
|
33
|
+
DEFINITIONS
|
|
34
|
+
================================================================================
|
|
23
35
|
|
|
24
|
-
|
|
36
|
+
In this Licence the following definitions apply:
|
|
25
37
|
|
|
26
|
-
|
|
38
|
+
"Apache 2.0" means the Apache License, Version 2.0 published by the Apache
|
|
39
|
+
Software Foundation and available at https://www.apache.org/licenses/LICENSE-2.0,
|
|
40
|
+
together with the corresponding NOTICE-file conventions.
|
|
27
41
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
42
|
+
"Change Date" means, in respect of a Released Version, the date that is three
|
|
43
|
+
(3) years after the Public Release Date of that Released Version, as recorded
|
|
44
|
+
in the Change Date Register published in the source repository (file
|
|
45
|
+
CHANGE_DATE.md). On and after the Change Date for a Released Version, that
|
|
46
|
+
Released Version automatically and irrevocably converts to Apache 2.0.
|
|
33
47
|
|
|
34
|
-
|
|
48
|
+
"Commercial Licence" means a separate written commercial licence agreement
|
|
49
|
+
issued by the Licensor authorising Commercial Use, on the commercial terms
|
|
50
|
+
published from time to time at https://deepvoiceai.co/licensing or
|
|
51
|
+
individually negotiated with the Licensor.
|
|
35
52
|
|
|
36
|
-
|
|
37
|
-
|
|
53
|
+
"Commercial Use" means any use of DVAI Bridge in or in connection with a
|
|
54
|
+
product, service, or activity that generates revenue, including without
|
|
55
|
+
limitation:
|
|
56
|
+
(a) integration of DVAI Bridge into a product or service that you sell,
|
|
57
|
+
license, host, or otherwise make available to third parties for value;
|
|
58
|
+
(b) provision of inference services, AI services, or hosted offerings to
|
|
59
|
+
third parties using DVAI Bridge;
|
|
60
|
+
(c) use of DVAI Bridge by, or for the benefit of, any organisation that
|
|
61
|
+
generates revenue from any commercial offering in which DVAI Bridge is
|
|
62
|
+
a component (whether or not DVAI Bridge itself is monetised
|
|
63
|
+
separately).
|
|
64
|
+
Commercial Use does not include any of the Permitted Uses defined below.
|
|
38
65
|
|
|
39
|
-
|
|
66
|
+
"DVAI Bridge" means the software in the source repository at
|
|
67
|
+
https://github.com/dvai-global/dvai-bridge ("the Repository"), including the
|
|
68
|
+
source code, build outputs, language-binding packages, and any documentation
|
|
69
|
+
distributed alongside it, in each case as published by the Licensor.
|
|
40
70
|
|
|
41
|
-
|
|
42
|
-
|
|
71
|
+
"Licence" means this DVAI Bridge Community Licence v1.0 in its entirety,
|
|
72
|
+
together with the NOTICE file in the Repository.
|
|
43
73
|
|
|
44
|
-
|
|
74
|
+
"Permitted Use" means each of the following uses of DVAI Bridge, in each case
|
|
75
|
+
free of charge and free of any obligation to enter into a Commercial Licence:
|
|
76
|
+
(a) Personal use — use of DVAI Bridge by an individual for personal,
|
|
77
|
+
non-commercial purposes, including hobby projects, personal-learning
|
|
78
|
+
builds, and experimentation outside the scope of any commercial
|
|
79
|
+
activity;
|
|
80
|
+
(b) Educational use — use of DVAI Bridge in teaching, coursework, training
|
|
81
|
+
materials, student projects, and other educational activities of an
|
|
82
|
+
educational institution or a teacher acting in that capacity;
|
|
83
|
+
(c) Academic research — use of DVAI Bridge in academic research the outputs
|
|
84
|
+
of which are intended for publication, dissemination, or peer review,
|
|
85
|
+
where DVAI Bridge is referenced or cited in the resulting outputs;
|
|
86
|
+
(d) Evaluation — use of DVAI Bridge by an organisation for a period not
|
|
87
|
+
exceeding ninety (90) consecutive days for the purpose of evaluating
|
|
88
|
+
whether to enter into a Commercial Licence;
|
|
89
|
+
(e) Internal-only use — use of DVAI Bridge by an organisation for purely
|
|
90
|
+
internal purposes, where the capability provided by DVAI Bridge is not
|
|
91
|
+
distributed to, used by, or made available to any third party outside
|
|
92
|
+
the organisation, and is not used to generate revenue from any
|
|
93
|
+
external party;
|
|
94
|
+
(f) Contribution — use of DVAI Bridge in connection with the preparation,
|
|
95
|
+
testing, and submission of contributions to the Repository, subject to
|
|
96
|
+
the Licensor's then-current Contributor Licence Agreement.
|
|
45
97
|
|
|
46
|
-
|
|
47
|
-
|
|
98
|
+
"Public Release Date" means, in respect of a Released Version, the date on
|
|
99
|
+
which the Licensor first made that Released Version generally available to the
|
|
100
|
+
public through the Repository (typically the date of the corresponding Git
|
|
101
|
+
tag), as recorded in the Change Date Register (file CHANGE_DATE.md).
|
|
48
102
|
|
|
49
|
-
|
|
103
|
+
"Released Version" means a specific version of DVAI Bridge made publicly
|
|
104
|
+
available by the Licensor through the Repository, identified by a Git tag
|
|
105
|
+
matching the pattern "v<MAJOR>.<MINOR>.<PATCH>" or any successor versioning
|
|
106
|
+
scheme published by the Licensor.
|
|
50
107
|
|
|
51
|
-
|
|
108
|
+
"You" (or "Your") means the natural person or legal entity exercising the
|
|
109
|
+
rights granted by this Licence. For legal entities, "You" includes each
|
|
110
|
+
entity that controls, is controlled by, or is under common control with that
|
|
111
|
+
entity.
|
|
112
|
+
|
|
113
|
+
================================================================================
|
|
114
|
+
1. GRANT OF LICENCE FOR PERMITTED USE
|
|
115
|
+
================================================================================
|
|
116
|
+
|
|
117
|
+
1.1 Subject to Your compliance with the terms of this Licence, the Licensor
|
|
118
|
+
hereby grants You a worldwide, non-exclusive, royalty-free, non-transferable,
|
|
119
|
+
non-sublicensable, revocable (only as expressly stated in Sections 7 and 8)
|
|
120
|
+
copyright licence to reproduce, prepare derivative works of, publicly
|
|
121
|
+
display, publicly perform, and distribute DVAI Bridge for Permitted Use.
|
|
122
|
+
|
|
123
|
+
1.2 The Licence in Section 1.1 includes the right to modify DVAI Bridge and
|
|
124
|
+
to redistribute DVAI Bridge (in original or modified form) provided that:
|
|
125
|
+
(a) every copy and every derivative work redistributed by You is distributed
|
|
126
|
+
under, and accompanied by, the unmodified text of this Licence;
|
|
127
|
+
(b) every copy and every derivative work retains all copyright, attribution,
|
|
128
|
+
and other proprietary notices appearing in the original;
|
|
129
|
+
(c) any redistribution is accompanied by the unmodified text of the NOTICE
|
|
130
|
+
file as published in the Repository at the time of redistribution; and
|
|
131
|
+
(d) the redistribution itself is for a Permitted Use, or is performed in a
|
|
132
|
+
manner that does not involve Commercial Use by You.
|
|
133
|
+
|
|
134
|
+
1.3 The Licence in Section 1.1 does not authorise Commercial Use. If You wish
|
|
135
|
+
to use DVAI Bridge for any Commercial Use, You must first obtain a Commercial
|
|
136
|
+
Licence from the Licensor. Information about how to obtain a Commercial
|
|
137
|
+
Licence is published at https://deepvoiceai.co/licensing and may be requested
|
|
138
|
+
by email to info@deepvoiceai.co.
|
|
139
|
+
|
|
140
|
+
================================================================================
|
|
141
|
+
2. AUTOMATIC CONVERSION ON THE CHANGE DATE
|
|
142
|
+
================================================================================
|
|
143
|
+
|
|
144
|
+
2.1 On and after the Change Date for a Released Version, that Released
|
|
145
|
+
Version (including all source code, build outputs, and documentation included
|
|
146
|
+
in that Released Version) automatically and irrevocably converts to Apache 2.0.
|
|
147
|
+
|
|
148
|
+
2.2 The conversion in Section 2.1 means that, on and after the Change Date,
|
|
149
|
+
the Released Version may be used, copied, modified, distributed, and used for
|
|
150
|
+
any Commercial Use without a Commercial Licence and without obligation to the
|
|
151
|
+
Licensor, subject only to the terms of Apache 2.0.
|
|
152
|
+
|
|
153
|
+
2.3 The conversion is per Released Version. Released Versions that have not
|
|
154
|
+
yet reached their Change Date remain subject to this Licence. Each subsequent
|
|
155
|
+
Released Version is subject to this Licence for its own three-year period
|
|
156
|
+
before independently converting to Apache 2.0.
|
|
157
|
+
|
|
158
|
+
2.4 The Change Date for each Released Version is recorded in the Change Date
|
|
159
|
+
Register in the Repository (file CHANGE_DATE.md). The Licensor commits that
|
|
160
|
+
once a Change Date has been recorded in the Change Date Register, the Change
|
|
161
|
+
Date will not be moved backwards (made later) by any subsequent revision of
|
|
162
|
+
this Licence or any other instrument.
|
|
163
|
+
|
|
164
|
+
2.5 The Bridge Attribution requirements in Section 4 cease to apply to a
|
|
165
|
+
Released Version on and after its Change Date. The standard NOTICE-file
|
|
166
|
+
conventions of Apache 2.0 continue to apply.
|
|
167
|
+
|
|
168
|
+
================================================================================
|
|
169
|
+
3. GRANT OF PATENT LICENCE
|
|
170
|
+
================================================================================
|
|
171
|
+
|
|
172
|
+
3.1 Subject to the terms and conditions of this Licence, the Licensor hereby
|
|
173
|
+
grants You a worldwide, non-exclusive, royalty-free, non-transferable,
|
|
174
|
+
non-sublicensable patent licence under the Licensor's Patent Rights to make,
|
|
175
|
+
have made, use, import, sell, offer to sell, and otherwise dispose of DVAI
|
|
176
|
+
Bridge solely for Permitted Use.
|
|
177
|
+
|
|
178
|
+
3.2 "Patent Rights" means the patent claims owned or controlled by the
|
|
179
|
+
Licensor (including, without limitation, the claims of UK Patent Application
|
|
180
|
+
GB2611312.6 once granted) that, but for this grant, would be infringed by use
|
|
181
|
+
of DVAI Bridge as originally distributed by the Licensor.
|
|
182
|
+
|
|
183
|
+
3.3 The patent licence in Section 3.1 does not extend to Commercial Use.
|
|
184
|
+
Patent rights for Commercial Use are granted only under a separate Commercial
|
|
185
|
+
Licence.
|
|
186
|
+
|
|
187
|
+
3.4 If You institute patent litigation (including a cross-claim or
|
|
188
|
+
counterclaim in a lawsuit) against any entity alleging that DVAI Bridge
|
|
189
|
+
constitutes direct or contributory patent infringement, then any patent
|
|
190
|
+
licences granted to You under this Section 3 shall terminate as of the date
|
|
191
|
+
such litigation is filed, without prejudice to any other remedy the Licensor
|
|
192
|
+
may have.
|
|
193
|
+
|
|
194
|
+
================================================================================
|
|
195
|
+
4. BRIDGE ATTRIBUTION MARK
|
|
196
|
+
================================================================================
|
|
197
|
+
|
|
198
|
+
4.1 When You exercise the licence in Section 1, You shall:
|
|
199
|
+
(a) retain in the source code of DVAI Bridge the copyright notice, this
|
|
200
|
+
Licence text, and the NOTICE file unmodified;
|
|
201
|
+
(b) where DVAI Bridge is incorporated into a build artefact (including a
|
|
202
|
+
published package, binary, container image, or installable application),
|
|
203
|
+
reproduce the substance of the copyright notice and a reference to this
|
|
204
|
+
Licence in a place reasonably accessible to recipients of that artefact
|
|
205
|
+
(for example, an About box, a credits file, a licensing page, or
|
|
206
|
+
documentation distributed with the artefact); and
|
|
207
|
+
(c) not remove or obscure the "Powered by DVAI Bridge" attribution mark, or
|
|
208
|
+
its equivalent in any localised form, in any user-visible or developer-
|
|
209
|
+
visible interface in which it is present in DVAI Bridge as distributed
|
|
210
|
+
by the Licensor.
|
|
211
|
+
|
|
212
|
+
4.2 The Bridge Attribution Mark may be removed from a build artefact only by
|
|
213
|
+
a Commercial Licensee under the terms of their Commercial Licence with the
|
|
214
|
+
Licensor. Removal of the Bridge Attribution Mark in the absence of a
|
|
215
|
+
Commercial Licence is a material breach of this Licence.
|
|
216
|
+
|
|
217
|
+
4.3 The Bridge Attribution Mark requirements cease to apply to a Released
|
|
218
|
+
Version on and after its Change Date.
|
|
219
|
+
|
|
220
|
+
================================================================================
|
|
221
|
+
5. TRADEMARKS
|
|
222
|
+
================================================================================
|
|
223
|
+
|
|
224
|
+
5.1 Nothing in this Licence grants You any right to use the trademarks of
|
|
225
|
+
the Licensor or its affiliates, including without limitation "Deep Voice AI",
|
|
226
|
+
"DVAI", "DVAI Bridge", or the corresponding logos and stylisations
|
|
227
|
+
(collectively, "Licensor Marks"), other than:
|
|
228
|
+
(a) reproduction of the Licensor Marks as part of the unmodified copyright
|
|
229
|
+
notices, NOTICE file, and Bridge Attribution Mark as required by
|
|
230
|
+
Section 4;
|
|
231
|
+
(b) descriptive use of the Licensor Marks in factual references such as
|
|
232
|
+
"based on DVAI Bridge" or "compatible with DVAI Bridge", provided that
|
|
233
|
+
such use is accurate, does not suggest endorsement by the Licensor of
|
|
234
|
+
any third-party product, and does not use the Licensor Marks in a
|
|
235
|
+
stylised, dominant, or distinctive manner that would create a
|
|
236
|
+
likelihood of confusion as to source.
|
|
237
|
+
|
|
238
|
+
5.2 Trademark rights of third parties referenced in DVAI Bridge or in the
|
|
239
|
+
NOTICE file (including without limitation "Apple", "Android", "Google",
|
|
240
|
+
"Microsoft", "Capacitor", "React Native", "Flutter", ".NET", "iOS",
|
|
241
|
+
"macOS") are the property of their respective owners and are reserved.
|
|
242
|
+
|
|
243
|
+
================================================================================
|
|
244
|
+
6. NO WARRANTY
|
|
245
|
+
================================================================================
|
|
246
|
+
|
|
247
|
+
DVAI BRIDGE IS PROVIDED "AS IS" AND "AS AVAILABLE", WITHOUT WARRANTY OF ANY
|
|
248
|
+
KIND, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING WITHOUT LIMITATION ANY
|
|
249
|
+
WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY, OR
|
|
250
|
+
FITNESS FOR A PARTICULAR PURPOSE. THE LICENSOR DOES NOT WARRANT THAT DVAI
|
|
251
|
+
BRIDGE WILL BE ERROR-FREE, UNINTERRUPTED, SECURE, OR THAT IT WILL MEET YOUR
|
|
252
|
+
REQUIREMENTS. ANY USE BY YOU OF DVAI BRIDGE IS AT YOUR OWN RISK.
|
|
253
|
+
|
|
254
|
+
================================================================================
|
|
255
|
+
7. LIMITATION OF LIABILITY
|
|
256
|
+
================================================================================
|
|
257
|
+
|
|
258
|
+
7.1 To the maximum extent permitted by applicable law, the Licensor shall
|
|
259
|
+
not be liable for any indirect, incidental, special, consequential, or
|
|
260
|
+
exemplary damages, including without limitation loss of profits, reputation, revenue,
|
|
261
|
+
business, data, or goodwill, arising out of or in connection with this
|
|
262
|
+
Licence or Your use of DVAI Bridge, even if the Licensor has been advised of
|
|
263
|
+
the possibility of such damages.
|
|
264
|
+
|
|
265
|
+
7.2 To the maximum extent permitted by applicable law, the aggregate
|
|
266
|
+
liability of the Licensor arising out of or in connection with this Licence
|
|
267
|
+
and Your use of DVAI Bridge shall not exceed one hundred pounds sterling
|
|
268
|
+
(GBP 100). For Permitted Use, this Licence is provided to You free of
|
|
269
|
+
charge; this limitation reflects the absence of any consideration paid by
|
|
270
|
+
You to the Licensor for the licence granted here.
|
|
271
|
+
|
|
272
|
+
7.3 Nothing in this Licence excludes or limits liability for death or
|
|
273
|
+
personal injury caused by negligence, for fraud or fraudulent
|
|
274
|
+
misrepresentation, or for any other liability that cannot be excluded or
|
|
275
|
+
limited as a matter of applicable law.
|
|
276
|
+
|
|
277
|
+
================================================================================
|
|
278
|
+
8. TERMINATION
|
|
279
|
+
================================================================================
|
|
280
|
+
|
|
281
|
+
8.1 This Licence terminates automatically and without notice upon any
|
|
282
|
+
material breach by You of its terms, including without limitation:
|
|
283
|
+
(a) Commercial Use of DVAI Bridge without a Commercial Licence;
|
|
284
|
+
(b) removal or modification of the copyright notice, this Licence text, the
|
|
285
|
+
NOTICE file, or the Bridge Attribution Mark contrary to Section 4;
|
|
286
|
+
(c) institution by You of patent litigation in the circumstances described
|
|
287
|
+
in Section 3.4.
|
|
288
|
+
|
|
289
|
+
8.2 On termination under Section 8.1, You shall immediately cease all use of
|
|
290
|
+
DVAI Bridge, delete all copies of DVAI Bridge in Your possession, and procure
|
|
291
|
+
that any third party to whom You have redistributed DVAI Bridge does the
|
|
292
|
+
same.
|
|
293
|
+
|
|
294
|
+
8.3 If Your breach is curable and is in fact cured within thirty (30) days of
|
|
295
|
+
written notice from the Licensor, the Licensor may at its discretion
|
|
296
|
+
reinstate the Licence as if the breach had not occurred. Reinstatement is at
|
|
297
|
+
the Licensor's sole discretion.
|
|
298
|
+
|
|
299
|
+
8.4 Sections 3.4, 5, 6, 7, 9, and 10 survive termination of this Licence.
|
|
300
|
+
|
|
301
|
+
================================================================================
|
|
302
|
+
9. RELATIONSHIP WITH OTHER AGREEMENTS
|
|
303
|
+
================================================================================
|
|
304
|
+
|
|
305
|
+
9.1 This Licence applies only to Released Versions for the period from the
|
|
306
|
+
Public Release Date to the Change Date. On and after the Change Date for a
|
|
307
|
+
Released Version, that Released Version is governed exclusively by Apache 2.0
|
|
308
|
+
and this Licence has no further application to that Released Version, save
|
|
309
|
+
that the patent termination provisions of Section 3.4 continue to apply to
|
|
310
|
+
the conduct of any party that institutes patent litigation as described in
|
|
311
|
+
that Section.
|
|
312
|
+
|
|
313
|
+
9.2 A Commercial Licence supersedes this Licence as between the Licensor and
|
|
314
|
+
the Commercial Licensee in respect of the uses authorised by the Commercial
|
|
315
|
+
Licence. This Licence continues to apply to all other uses of DVAI Bridge by
|
|
316
|
+
the Commercial Licensee not authorised by the Commercial Licence.
|
|
317
|
+
|
|
318
|
+
9.3 Contributors to DVAI Bridge are subject to the Licensor's Contributor
|
|
319
|
+
Licence Agreement ("CLA") in addition to this Licence. The CLA is published
|
|
320
|
+
at https://deepvoiceai.co/cla.
|
|
321
|
+
|
|
322
|
+
================================================================================
|
|
323
|
+
10. GOVERNING LAW
|
|
324
|
+
================================================================================
|
|
325
|
+
|
|
326
|
+
10.1 This Licence is governed by and construed in accordance with the law of
|
|
327
|
+
England and Wales.
|
|
328
|
+
|
|
329
|
+
10.2 The courts of England and Wales have non-exclusive jurisdiction to
|
|
330
|
+
settle any dispute arising out of or in connection with this Licence.
|
|
331
|
+
|
|
332
|
+
================================================================================
|
|
333
|
+
11. CONTACT
|
|
334
|
+
================================================================================
|
|
335
|
+
|
|
336
|
+
For all enquiries about this Licence, including Commercial Licence enquiries,
|
|
337
|
+
contact info@deepvoiceai.co.
|
|
338
|
+
|
|
339
|
+
Deep Voice AI Limited
|
|
340
|
+
71-75 Shelton Street
|
|
341
|
+
Covent Garden
|
|
342
|
+
London WC2H 9JQ
|
|
343
|
+
United Kingdom
|
|
344
|
+
|
|
345
|
+
Company No. 16743132
|
|
346
|
+
|
|
347
|
+
================================================================================
|
|
348
|
+
END OF DVAI BRIDGE COMMUNITY LICENCE v1.0
|
|
349
|
+
================================================================================
|
|
350
|
+
|
|
351
|
+
NOTE ON LEGAL REVIEW
|
|
352
|
+
--------------------
|
|
353
|
+
|
|
354
|
+
This Licence text has been prepared by the Licensor and is the legally
|
|
355
|
+
binding instrument under which DVAI Bridge is distributed. The Licensor recommends
|
|
356
|
+
that counsel competent in the law of England and Wales be consulted prior to
|
|
357
|
+
substantive variation of this text or before entering into any Commercial
|
|
358
|
+
Licence based on this Licence's framework.
|
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["import { registerPlugin } from \"@capacitor/core\";\
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["import { registerPlugin } from \"@capacitor/core\";\nimport type { NativePluginInterface } from \"@dvai-bridge/capacitor\";\n\nconst DVAIBridgeMLX = registerPlugin<NativePluginInterface>(\"DVAIBridgeMLX\");\n\nexport default DVAIBridgeMLX;\nexport { DVAIBridgeMLX };\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAA+B;AAG/B,IAAM,oBAAgB,4BAAsC,eAAe;AAE3E,IAAO,gBAAQ;","names":[]}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["import { registerPlugin } from \"@capacitor/core\";\
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["import { registerPlugin } from \"@capacitor/core\";\nimport type { NativePluginInterface } from \"@dvai-bridge/capacitor\";\n\nconst DVAIBridgeMLX = registerPlugin<NativePluginInterface>(\"DVAIBridgeMLX\");\n\nexport default DVAIBridgeMLX;\nexport { DVAIBridgeMLX };\n"],"mappings":";AAAA,SAAS,sBAAsB;AAG/B,IAAM,gBAAgB,eAAsC,eAAe;AAE3E,IAAO,gBAAQ;","names":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dvai-bridge/capacitor-mlx",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.2",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"registry": "https://registry.npmjs.org/",
|
|
6
6
|
"access": "public"
|
|
@@ -38,15 +38,15 @@
|
|
|
38
38
|
"license": "Custom (See LICENSE)",
|
|
39
39
|
"repository": {
|
|
40
40
|
"type": "git",
|
|
41
|
-
"url": "https://github.com/
|
|
41
|
+
"url": "https://github.com/dvai-global/dvai-bridge.git"
|
|
42
42
|
},
|
|
43
43
|
"peerDependencies": {
|
|
44
44
|
"@capacitor/core": "^6.0.0 || ^7.0.0 || ^8.0.0",
|
|
45
|
-
"@dvai-bridge/capacitor": "4.0.
|
|
46
|
-
"@dvai-bridge/ios-mlx-core": "4.0.
|
|
45
|
+
"@dvai-bridge/capacitor": "4.0.2",
|
|
46
|
+
"@dvai-bridge/ios-mlx-core": "4.0.2"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@dvai-bridge/capacitor": "4.0.
|
|
49
|
+
"@dvai-bridge/capacitor": "4.0.2"
|
|
50
50
|
},
|
|
51
51
|
"capacitor": {
|
|
52
52
|
"ios": {
|
package/README.md
DELETED
|
@@ -1,199 +0,0 @@
|
|
|
1
|
-

|
|
2
|
-
|
|
3
|
-
# DVAI-Bridge
|
|
4
|
-
|
|
5
|
-
<!-- [](https://github.com/Westenets/dvai-bridge/actions/workflows/smoke-real-models.yml) -->
|
|
6
|
-
|
|
7
|
-
[](LICENSE)      
|
|
8
|
-
|
|
9
|
-
> **The local OpenAI server you embed inside your app.**
|
|
10
|
-
> One library. One HTTP wire. Every platform. Zero install for your users.
|
|
11
|
-
|
|
12
|
-
**Docs:** [dvai-bridge.deepvoiceai.co](https://dvai-bridge.deepvoiceai.co)
|
|
13
|
-
|
|
14
|
-
```ts
|
|
15
|
-
import { DVAI } from "@dvai-bridge/core";
|
|
16
|
-
import OpenAI from "openai";
|
|
17
|
-
|
|
18
|
-
const dvai = new DVAI({ backend: "transformers" });
|
|
19
|
-
await dvai.initialize();
|
|
20
|
-
|
|
21
|
-
const openai = new OpenAI({ baseURL: dvai.baseUrl, apiKey: "ignored" });
|
|
22
|
-
await openai.chat.completions.create({
|
|
23
|
-
model: dvai.transformersModelId,
|
|
24
|
-
messages: [{ role: "user", content: "Hello!" }],
|
|
25
|
-
});
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
That's it. A real OpenAI-compatible server is now running inside your app's
|
|
29
|
-
own process. Point any OpenAI client — LangChain, the OpenAI SDK, the Vercel
|
|
30
|
-
AI SDK, anything — at `dvai.baseUrl` and your agent code keeps working.
|
|
31
|
-
|
|
32
|
-
Built by **[Deep Voice AI](https://deepvoiceai.co)**.
|
|
33
|
-
|
|
34
|
-
---
|
|
35
|
-
|
|
36
|
-
## Why it exists
|
|
37
|
-
|
|
38
|
-
Local AI works beautifully on a laptop with **Ollama + LangChain**. Then you
|
|
39
|
-
try to ship the app and your users don't have Ollama. Mobile can't run it.
|
|
40
|
-
Corporate IT won't add another daemon. So you reinvent the same plumbing —
|
|
41
|
-
spawn an inference engine, bind a port, translate to OpenAI HTTP, handle
|
|
42
|
-
CORS, manage lifecycle, wrap the accelerator of the day per platform — and
|
|
43
|
-
do it all over again for every target OS.
|
|
44
|
-
|
|
45
|
-
DVAI-Bridge is that plumbing, packaged as a library, for every client
|
|
46
|
-
platform.
|
|
47
|
-
|
|
48
|
-
---
|
|
49
|
-
|
|
50
|
-
## What you get
|
|
51
|
-
|
|
52
|
-
- **One OpenAI HTTP surface.** Bound on `127.0.0.1` (or `0.0.0.0` for
|
|
53
|
-
device-to-device). Streaming, embeddings, models, recovery — all built in.
|
|
54
|
-
- **Six SDKs.** `@dvai-bridge/core` + `react` + `vanilla` + `capacitor`,
|
|
55
|
-
`DVAIBridge` (Swift / iOS), `co.deepvoiceai:dvai-bridge` (Kotlin / Android),
|
|
56
|
-
`@dvai-bridge/react-native`, `dvai_bridge` (Flutter), `co.deepvoiceai.dvai-bridge` (.NET).
|
|
57
|
-
- **Nine backends.** WebLLM, Transformers.js, llama.cpp, Apple Foundation
|
|
58
|
-
Models, MLX, CoreML / ANE, MediaPipe LLM, LiteRT, ONNX Runtime GenAI —
|
|
59
|
-
selected per-platform, invisible to your agent code.
|
|
60
|
-
- **Native acceleration** wherever it runs: WebGPU in browsers, CUDA / Metal
|
|
61
|
-
/ Vulkan / DirectML on desktop, ANE / Metal / MLX on iOS, NNAPI / QNN
|
|
62
|
-
Hexagon / GPU delegate on Android.
|
|
63
|
-
- **Multimodal.** Text, image, audio, video — declarative loader for
|
|
64
|
-
cutting-edge models (Gemma 4, LLaVA, Idefics) without waiting for library
|
|
65
|
-
updates.
|
|
66
|
-
- **Distributed inference (v3.0+).** Phone too slow? Offload to your laptop
|
|
67
|
-
on the same Wi-Fi via mDNS pairing — same OpenAI wire, transparent to
|
|
68
|
-
your code. Internet path via a self-hostable rendezvous server.
|
|
69
|
-
- **DVAI Hub (v3.1+).** A first-party desktop utility that turns any device
|
|
70
|
-
into a strong-peer for the rest of your fleet. Brand-neutral install via
|
|
71
|
-
Homebrew / winget / GitHub Releases, OR fork it for your own branded
|
|
72
|
-
companion. Routes through Ollama / LM Studio / vLLM / llama-server /
|
|
73
|
-
llamafile if you've already got those running.
|
|
74
|
-
- **Zero user install.** It's a library, not a daemon. `npm install`,
|
|
75
|
-
`cocoapods`, gradle — your CI already has the muscle for it.
|
|
76
|
-
|
|
77
|
-
---
|
|
78
|
-
|
|
79
|
-
## Supported platforms
|
|
80
|
-
|
|
81
|
-
| Stack | Package | Backends |
|
|
82
|
-
| --- | --- | --- |
|
|
83
|
-
| Browser (React, Vue, Svelte, vanilla JS) | `@dvai-bridge/core` + `react` / `vanilla` | WebLLM (WebGPU), Transformers.js (WebGPU / WASM SIMD) |
|
|
84
|
-
| Node / Bun / Electron | `@dvai-bridge/core` | Transformers.js, native llama.cpp |
|
|
85
|
-
| Capacitor hybrid mobile | `@dvai-bridge/capacitor` + backend slice | Native llama.cpp (Metal iOS, Vulkan / CPU Android) |
|
|
86
|
-
| iOS native (Swift) | `DVAIBridge` (SPM / CocoaPods) | llama.cpp (Metal), CoreML / ANE, Apple Foundation Models, MLX |
|
|
87
|
-
| Android native (Kotlin / Java) | `co.deepvoiceai:dvai-bridge` (AAR) | llama.cpp, MediaPipe LLM, LiteRT, NNAPI / QNN |
|
|
88
|
-
| React Native (≥0.77, TurboModule) | `@dvai-bridge/react-native` | All iOS + Android backends (delegates) |
|
|
89
|
-
| Flutter (≥3.39) | `dvai_bridge` (pub.dev) | All iOS + Android backends (Pigeon channels) |
|
|
90
|
-
| .NET 10 LTS (MAUI / Avalonia / WinUI / Catalyst / desktop) | `co.deepvoiceai.dvai-bridge*` (NuGet) | iOS / Android delegate to native; desktop = llama.cpp + ONNX Runtime GenAI + ML.NET |
|
|
91
|
-
|
|
92
|
-
Full quickstart per platform: [dvai-bridge.deepvoiceai.co/guide/getting-started](https://dvai-bridge.deepvoiceai.co/guide/getting-started)
|
|
93
|
-
|
|
94
|
-
---
|
|
95
|
-
|
|
96
|
-
## Examples
|
|
97
|
-
|
|
98
|
-
```ts
|
|
99
|
-
// React
|
|
100
|
-
import { DVAIProvider, useDVAI } from "@dvai-bridge/react";
|
|
101
|
-
<DVAIProvider config={{ backend: "transformers" }}>
|
|
102
|
-
<Chat />
|
|
103
|
-
</DVAIProvider>;
|
|
104
|
-
function Chat() {
|
|
105
|
-
const { isReady, baseUrl } = useDVAI();
|
|
106
|
-
return isReady ? <div>Local AI live at {baseUrl}</div> : <Loading />;
|
|
107
|
-
}
|
|
108
|
-
```
|
|
109
|
-
|
|
110
|
-
```swift
|
|
111
|
-
// iOS
|
|
112
|
-
let server = try await DVAIBridge.shared.start()
|
|
113
|
-
// server.baseUrl = "http://127.0.0.1:38883/v1"
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
```kotlin
|
|
117
|
-
// Android
|
|
118
|
-
val server = DVAIBridge.start(context)
|
|
119
|
-
// server.baseUrl = "http://127.0.0.1:38883/v1"
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
```dart
|
|
123
|
-
// Flutter
|
|
124
|
-
final state = await DVAIBridge.instance.start(
|
|
125
|
-
backend: BackendKind.auto,
|
|
126
|
-
modelPath: '/path/to/model.gguf',
|
|
127
|
-
);
|
|
128
|
-
// state.baseUrl = "http://127.0.0.1:38883/v1"
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
```csharp
|
|
132
|
-
// .NET
|
|
133
|
-
var server = await DVAIBridge.Shared.StartAsync(new StartOptions {
|
|
134
|
-
Backend = BackendKind.Auto,
|
|
135
|
-
ModelPath = "/path/to/model.gguf",
|
|
136
|
-
});
|
|
137
|
-
// server.BaseUrl = "http://127.0.0.1:38883/v1"
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
Multimodal, streaming, embeddings, distributed offload, the Hub —
|
|
141
|
-
everything's at the [docs site](https://dvai-bridge.deepvoiceai.co).
|
|
142
|
-
|
|
143
|
-
---
|
|
144
|
-
|
|
145
|
-
## What's new in v3.1
|
|
146
|
-
|
|
147
|
-
- **DVAI Hub** — Tauri desktop utility that's the strong-peer side of v3
|
|
148
|
-
distributed inference. `brew install deepvoiceai/dvai-hub/dvai-hub` (or
|
|
149
|
-
`winget install DeepVoiceAI.DVAIHub`) → mobile apps on the same Wi-Fi
|
|
150
|
-
pair with it and offload heavy inference. [Guide →](https://dvai-bridge.deepvoiceai.co/guide/dvai-hub)
|
|
151
|
-
- **External-engine bridge.** Hub surfaces Ollama / LM Studio / vLLM /
|
|
152
|
-
llama-server / llamafile as additional backend pools so paired apps
|
|
153
|
-
serve from whatever's already cached. Opt-in per engine.
|
|
154
|
-
- **Strict substitution policy.** Models with mismatched family / version /
|
|
155
|
-
size / type are refused by default; quant-only mismatches gated behind a
|
|
156
|
-
per-pairing `preferBetterQuant` flag. No silent mis-routing.
|
|
157
|
-
- **HMAC-signed identity** on `/v1/chat/completions`. Per-app audit logs
|
|
158
|
-
surface who served what, with structured `(appId, peerDeviceId,
|
|
159
|
-
engine, requestedModel, servedModel, outcome)` rows.
|
|
160
|
-
- **Library finalization.** `httpBindHost` (LAN bind), `chatCompletionInterceptor`
|
|
161
|
-
(extension point), HMAC primitives re-exported, `/v1/dvai/*` routes
|
|
162
|
-
actually dispatched, TransformersBackend Node-mode device fix.
|
|
163
|
-
[Migration v3.0 → v3.1 →](https://dvai-bridge.deepvoiceai.co/migration/v3.0-to-v3.1)
|
|
164
|
-
|
|
165
|
-
---
|
|
166
|
-
|
|
167
|
-
## Robustness
|
|
168
|
-
|
|
169
|
-
Streaming-correct (SSE passthrough + blank-chunk detection), generation
|
|
170
|
-
timeout, automatic engine-state recovery on fatal errors, port fallback,
|
|
171
|
-
worker offloading, Private Network Access ready, CORS configured. The
|
|
172
|
-
boring substrate so your agent code never has to think about it.
|
|
173
|
-
|
|
174
|
-
---
|
|
175
|
-
|
|
176
|
-
## Licensing
|
|
177
|
-
|
|
178
|
-
Dual: **free for development & personal use** on `localhost` (verified at
|
|
179
|
-
runtime). **Commercial use** requires a license key — `info@deepvoiceai.co`.
|
|
180
|
-
|
|
181
|
-
---
|
|
182
|
-
|
|
183
|
-
## Contributing
|
|
184
|
-
|
|
185
|
-
PRs welcome.
|
|
186
|
-
|
|
187
|
-
```bash
|
|
188
|
-
pnpm install
|
|
189
|
-
pnpm build
|
|
190
|
-
bash scripts/build-all.sh # full matrix (auto-skips per-host)
|
|
191
|
-
```
|
|
192
|
-
|
|
193
|
-
[`CONTRIBUTING.md`](./CONTRIBUTING.md) for the PR flow. Per-platform
|
|
194
|
-
contributor docs (iOS / Android / RN / Flutter / .NET) under
|
|
195
|
-
[`docs/development/`](./docs/development/).
|
|
196
|
-
|
|
197
|
-
---
|
|
198
|
-
|
|
199
|
-
© Deep Voice AI Limited. All rights reserved.
|