@nexart/codemode-sdk 1.5.0 → 1.6.0
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 +326 -0
- package/CODE_MODE_PROTOCOL.md +471 -0
- package/LICENSE.md +62 -0
- package/README.md +296 -58
- package/builder.manifest.schema.json +62 -0
- package/dist/builder-manifest.d.ts +79 -0
- package/dist/builder-manifest.d.ts.map +1 -0
- package/dist/builder-manifest.js +97 -0
- package/dist/core-index.d.ts +21 -0
- package/dist/core-index.d.ts.map +1 -0
- package/dist/core-index.js +26 -0
- package/dist/engine.d.ts +17 -39
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +52 -253
- package/dist/execute.d.ts +46 -0
- package/dist/execute.d.ts.map +1 -0
- package/dist/execute.js +283 -0
- package/dist/execution-sandbox.d.ts +107 -0
- package/dist/execution-sandbox.d.ts.map +1 -0
- package/dist/execution-sandbox.js +207 -0
- package/dist/index.d.ts +24 -17
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +30 -16
- package/dist/loop-engine.d.ts +3 -0
- package/dist/loop-engine.d.ts.map +1 -1
- package/dist/loop-engine.js +17 -7
- package/dist/noise-bridge.d.ts +44 -0
- package/dist/noise-bridge.d.ts.map +1 -0
- package/dist/noise-bridge.js +68 -0
- package/dist/noise-engine.d.ts +74 -0
- package/dist/noise-engine.d.ts.map +1 -0
- package/dist/noise-engine.js +132 -0
- package/dist/noise-sketches/fractalNoise.d.ts +11 -0
- package/dist/noise-sketches/fractalNoise.d.ts.map +1 -0
- package/dist/noise-sketches/fractalNoise.js +121 -0
- package/dist/noise-sketches/index.d.ts +21 -0
- package/dist/noise-sketches/index.d.ts.map +1 -0
- package/dist/noise-sketches/index.js +28 -0
- package/dist/p5-runtime.d.ts +3 -1
- package/dist/p5-runtime.d.ts.map +1 -1
- package/dist/p5-runtime.js +2 -0
- package/dist/sound-bridge.d.ts +89 -0
- package/dist/sound-bridge.d.ts.map +1 -0
- package/dist/sound-bridge.js +128 -0
- package/dist/soundart-engine.d.ts +87 -0
- package/dist/soundart-engine.d.ts.map +1 -0
- package/dist/soundart-engine.js +173 -0
- package/dist/soundart-sketches/chladniBloom.d.ts +3 -0
- package/dist/soundart-sketches/chladniBloom.d.ts.map +1 -0
- package/dist/soundart-sketches/chladniBloom.js +53 -0
- package/dist/soundart-sketches/dualVortex.d.ts +3 -0
- package/dist/soundart-sketches/dualVortex.d.ts.map +1 -0
- package/dist/soundart-sketches/dualVortex.js +67 -0
- package/dist/soundart-sketches/geometryIllusion.d.ts +3 -0
- package/dist/soundart-sketches/geometryIllusion.d.ts.map +1 -0
- package/dist/soundart-sketches/geometryIllusion.js +89 -0
- package/dist/soundart-sketches/index.d.ts +39 -0
- package/dist/soundart-sketches/index.d.ts.map +1 -0
- package/dist/soundart-sketches/index.js +72 -0
- package/dist/soundart-sketches/isoflow.d.ts +3 -0
- package/dist/soundart-sketches/isoflow.d.ts.map +1 -0
- package/dist/soundart-sketches/isoflow.js +60 -0
- package/dist/soundart-sketches/loomWeave.d.ts +3 -0
- package/dist/soundart-sketches/loomWeave.d.ts.map +1 -0
- package/dist/soundart-sketches/loomWeave.js +59 -0
- package/dist/soundart-sketches/noiseTerraces.d.ts +3 -0
- package/dist/soundart-sketches/noiseTerraces.d.ts.map +1 -0
- package/dist/soundart-sketches/noiseTerraces.js +53 -0
- package/dist/soundart-sketches/orb.d.ts +3 -0
- package/dist/soundart-sketches/orb.d.ts.map +1 -0
- package/dist/soundart-sketches/orb.js +50 -0
- package/dist/soundart-sketches/pixelGlyphs.d.ts +3 -0
- package/dist/soundart-sketches/pixelGlyphs.d.ts.map +1 -0
- package/dist/soundart-sketches/pixelGlyphs.js +72 -0
- package/dist/soundart-sketches/prismFlowFields.d.ts +3 -0
- package/dist/soundart-sketches/prismFlowFields.d.ts.map +1 -0
- package/dist/soundart-sketches/prismFlowFields.js +51 -0
- package/dist/soundart-sketches/radialBurst.d.ts +3 -0
- package/dist/soundart-sketches/radialBurst.d.ts.map +1 -0
- package/dist/soundart-sketches/radialBurst.js +60 -0
- package/dist/soundart-sketches/resonantSoundBodies.d.ts +3 -0
- package/dist/soundart-sketches/resonantSoundBodies.d.ts.map +1 -0
- package/dist/soundart-sketches/resonantSoundBodies.js +89 -0
- package/dist/soundart-sketches/rings.d.ts +11 -0
- package/dist/soundart-sketches/rings.d.ts.map +1 -0
- package/dist/soundart-sketches/rings.js +89 -0
- package/dist/soundart-sketches/squares.d.ts +3 -0
- package/dist/soundart-sketches/squares.d.ts.map +1 -0
- package/dist/soundart-sketches/squares.js +52 -0
- package/dist/soundart-sketches/waveStripes.d.ts +3 -0
- package/dist/soundart-sketches/waveStripes.d.ts.map +1 -0
- package/dist/soundart-sketches/waveStripes.js +44 -0
- package/dist/static-engine.d.ts +7 -0
- package/dist/static-engine.d.ts.map +1 -1
- package/dist/static-engine.js +69 -14
- package/dist/types.d.ts +67 -5
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -1
- package/package.json +26 -15
package/dist/types.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* NexArt Code Mode Runtime SDK - Types
|
|
3
|
-
* Version: 1.
|
|
3
|
+
* Version: 1.6.0 (Protocol v1.2.0)
|
|
4
4
|
*
|
|
5
5
|
* Type definitions for the Code Mode runtime engine.
|
|
6
6
|
* This is the canonical type surface for @nexart/codemode-sdk.
|
|
@@ -17,6 +17,12 @@ export declare const PROTOCOL_IDENTITY: {
|
|
|
17
17
|
readonly deterministic: true;
|
|
18
18
|
};
|
|
19
19
|
export type RenderMode = 'static' | 'loop';
|
|
20
|
+
/**
|
|
21
|
+
* Runtime Canvas
|
|
22
|
+
* Abstraction for browser (HTMLCanvasElement) and Node (canvas package) environments.
|
|
23
|
+
* In Node, the `canvas` npm package provides an HTMLCanvasElement-compatible interface.
|
|
24
|
+
*/
|
|
25
|
+
export type RuntimeCanvas = HTMLCanvasElement;
|
|
20
26
|
export interface EngineConfig {
|
|
21
27
|
mode: RenderMode;
|
|
22
28
|
width?: number;
|
|
@@ -24,20 +30,36 @@ export interface EngineConfig {
|
|
|
24
30
|
duration?: number;
|
|
25
31
|
fps?: number;
|
|
26
32
|
}
|
|
27
|
-
|
|
28
|
-
|
|
33
|
+
/**
|
|
34
|
+
* Render Result (Discriminated Union)
|
|
35
|
+
*
|
|
36
|
+
* Static mode can return either:
|
|
37
|
+
* - blob: For display/download (PNG)
|
|
38
|
+
* - imageData: For oracle hashing (raw pixels)
|
|
39
|
+
*
|
|
40
|
+
* Video mode returns blob with frame/duration metadata.
|
|
41
|
+
*/
|
|
42
|
+
export type RenderResult = {
|
|
43
|
+
type: 'image';
|
|
44
|
+
blob: Blob;
|
|
45
|
+
} | {
|
|
46
|
+
type: 'image';
|
|
47
|
+
imageData: ImageData;
|
|
48
|
+
} | {
|
|
49
|
+
type: 'video';
|
|
29
50
|
blob: Blob;
|
|
30
51
|
frames?: number;
|
|
31
52
|
duration?: number;
|
|
32
|
-
}
|
|
53
|
+
};
|
|
33
54
|
export interface RunOptions {
|
|
34
55
|
code: string;
|
|
35
56
|
seed?: number;
|
|
36
57
|
vars?: number[];
|
|
37
|
-
onPreview?: (canvas:
|
|
58
|
+
onPreview?: (canvas: RuntimeCanvas) => void;
|
|
38
59
|
onProgress?: (progress: ProgressInfo) => void;
|
|
39
60
|
onComplete: (result: RenderResult) => void;
|
|
40
61
|
onError?: (error: Error) => void;
|
|
62
|
+
returnImageData?: boolean;
|
|
41
63
|
}
|
|
42
64
|
export interface ProgressInfo {
|
|
43
65
|
phase: 'setup' | 'rendering' | 'encoding' | 'complete';
|
|
@@ -126,4 +148,44 @@ export interface ExecuteCodeModeResult {
|
|
|
126
148
|
frames?: ImageData[];
|
|
127
149
|
metadata: ProtocolMetadata;
|
|
128
150
|
}
|
|
151
|
+
/**
|
|
152
|
+
* Builder Manifest (v1.6.0)
|
|
153
|
+
*
|
|
154
|
+
* Passive, declarative metadata for builder attribution.
|
|
155
|
+
* This is data-only with no logic, rewards, or enforcement attached.
|
|
156
|
+
*
|
|
157
|
+
* Rules:
|
|
158
|
+
* - Registration is optional
|
|
159
|
+
* - Missing or invalid manifest does NOT throw
|
|
160
|
+
* - No network calls, no telemetry, no analytics
|
|
161
|
+
* - Does NOT affect execution behavior or determinism
|
|
162
|
+
* - Used for future attribution and ecosystem discovery
|
|
163
|
+
*/
|
|
164
|
+
export interface NexArtBuilderManifest {
|
|
165
|
+
protocol: 'nexart';
|
|
166
|
+
manifestVersion: string;
|
|
167
|
+
app?: {
|
|
168
|
+
name?: string;
|
|
169
|
+
url?: string;
|
|
170
|
+
description?: string;
|
|
171
|
+
contact?: string;
|
|
172
|
+
};
|
|
173
|
+
sdk?: {
|
|
174
|
+
package?: string;
|
|
175
|
+
version?: string;
|
|
176
|
+
execution?: string;
|
|
177
|
+
};
|
|
178
|
+
renderer?: {
|
|
179
|
+
package?: string;
|
|
180
|
+
version?: string;
|
|
181
|
+
mode?: 'preview' | 'canonical';
|
|
182
|
+
};
|
|
183
|
+
features?: Record<string, boolean>;
|
|
184
|
+
declaration?: {
|
|
185
|
+
usesOfficialSdk?: boolean;
|
|
186
|
+
noRuntimeModification?: boolean;
|
|
187
|
+
noProtocolBypass?: boolean;
|
|
188
|
+
};
|
|
189
|
+
timestamp?: string;
|
|
190
|
+
}
|
|
129
191
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;;;CAMpB,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE3C,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;GAGG;AACH,eAAO,MAAM,iBAAiB;;;;;;CAMpB,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE3C;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,iBAAiB,CAAC;AAE9C,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,YAAY,GACpB;IACE,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,IAAI,CAAC;CACZ,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,SAAS,EAAE,SAAS,CAAC;CACtB,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,IAAI,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEN,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;IAC5C,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAC;IAC9C,UAAU,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,CAAC;IAC3C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,OAAO,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,CAAC;IACvD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,MAAM;IACrB,GAAG,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,SAAS,EAAE,MAAM,QAAQ,CAAC,YAAY,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;CAChG;AAED;;GAEG;AACH,eAAO,MAAM,YAAY,EAAE,iBAE1B,CAAC;AAEF,eAAO,MAAM,cAAc;;;;;;;CAOjB,CAAC;AAEX;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,UAAU,CAAC;IACnB,eAAe,EAAE,OAAO,CAAC;IACzB,KAAK,EAAE,CAAC,CAAC;IACT,aAAa,EAAE,IAAI,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,UAAU,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,IAAI,EAAE,UAAU,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC;IACrB,QAAQ,EAAE,gBAAgB,CAAC;CAC5B;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,QAAQ,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,GAAG,CAAC,EAAE;QACJ,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,GAAG,CAAC,EAAE;QACJ,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,IAAI,CAAC,EAAE,SAAS,GAAG,WAAW,CAAC;KAChC,CAAC;IACF,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,WAAW,CAAC,EAAE;QACZ,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,qBAAqB,CAAC,EAAE,OAAO,CAAC;QAChC,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B,CAAC;IACF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB"}
|
package/dist/types.js
CHANGED
package/package.json
CHANGED
|
@@ -1,36 +1,47 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nexart/codemode-sdk",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "NexArt Code Mode
|
|
5
|
-
"license": "MIT",
|
|
6
|
-
"main": "dist/index.js",
|
|
7
|
-
"types": "dist/index.d.ts",
|
|
3
|
+
"version": "1.6.0",
|
|
4
|
+
"description": "NexArt Code Mode SDK - Canonical execution engine for deterministic generative art",
|
|
8
5
|
"type": "module",
|
|
6
|
+
"main": "./dist/core-index.js",
|
|
7
|
+
"types": "./dist/core-index.d.ts",
|
|
8
|
+
"exports": {
|
|
9
|
+
".": {
|
|
10
|
+
"types": "./dist/core-index.d.ts",
|
|
11
|
+
"import": "./dist/core-index.js"
|
|
12
|
+
}
|
|
13
|
+
},
|
|
9
14
|
"files": [
|
|
10
|
-
"dist"
|
|
15
|
+
"dist",
|
|
16
|
+
"README.md",
|
|
17
|
+
"CHANGELOG.md",
|
|
18
|
+
"CODE_MODE_PROTOCOL.md",
|
|
19
|
+
"LICENSE.md",
|
|
20
|
+
"builder.manifest.schema.json"
|
|
11
21
|
],
|
|
12
22
|
"scripts": {
|
|
13
23
|
"build": "tsc",
|
|
14
|
-
"
|
|
15
|
-
|
|
16
|
-
"devDependencies": {
|
|
17
|
-
"typescript": "^5.0.0"
|
|
24
|
+
"test": "npx tsx smoke-test.ts",
|
|
25
|
+
"prepublishOnly": "npm run build && npm run test"
|
|
18
26
|
},
|
|
19
27
|
"keywords": [
|
|
28
|
+
"nexart",
|
|
20
29
|
"generative-art",
|
|
30
|
+
"nft",
|
|
21
31
|
"p5js",
|
|
22
|
-
"canvas",
|
|
23
|
-
"rendering",
|
|
24
32
|
"deterministic",
|
|
25
|
-
"
|
|
26
|
-
"creative-coding"
|
|
33
|
+
"codemode"
|
|
27
34
|
],
|
|
35
|
+
"author": "NexArt",
|
|
36
|
+
"license": "MIT",
|
|
28
37
|
"repository": {
|
|
29
38
|
"type": "git",
|
|
30
39
|
"url": "https://github.com/artnames/nexart-codemode-sdk.git"
|
|
31
40
|
},
|
|
32
|
-
"author": "NexArt",
|
|
33
41
|
"publishConfig": {
|
|
34
42
|
"access": "public"
|
|
43
|
+
},
|
|
44
|
+
"devDependencies": {
|
|
45
|
+
"typescript": "^5.0.0"
|
|
35
46
|
}
|
|
36
47
|
}
|