capnstruct 0.0.0-stage → 0.1.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/README.md +136 -2
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +75 -0
- package/dist/cli.js.map +1 -0
- package/dist/codegen.d.ts +23 -0
- package/dist/codegen.d.ts.map +1 -0
- package/dist/codegen.js +218 -0
- package/dist/codegen.js.map +1 -0
- package/dist/index.d.ts +358 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1076 -0
- package/dist/index.js.map +1 -0
- package/package.json +63 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,65 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "capnstruct",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Zero-Copy #[repr(C)] Structs for Web Workers, SharedArrayBuffer & WebAssembly — the missing shared-memory struct layer between JS, Workers, and Rust/Go WASM.",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"homepage": "https://capnstruct.teamchong.net",
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "git+https://github.com/teamchong/capnstruct.git"
|
|
10
|
+
},
|
|
11
|
+
"type": "module",
|
|
12
|
+
"sideEffects": false,
|
|
13
|
+
"main": "./dist/index.js",
|
|
14
|
+
"types": "./dist/index.d.ts",
|
|
15
|
+
"bin": {
|
|
16
|
+
"capnstruct": "./dist/cli.js"
|
|
17
|
+
},
|
|
18
|
+
"exports": {
|
|
19
|
+
".": {
|
|
20
|
+
"types": "./dist/index.d.ts",
|
|
21
|
+
"default": "./dist/index.js"
|
|
22
|
+
},
|
|
23
|
+
"./codegen": {
|
|
24
|
+
"types": "./dist/codegen.d.ts",
|
|
25
|
+
"default": "./dist/codegen.js"
|
|
26
|
+
},
|
|
27
|
+
"./cli": {
|
|
28
|
+
"types": "./dist/cli.d.ts",
|
|
29
|
+
"default": "./dist/cli.js"
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
"files": [
|
|
33
|
+
"dist",
|
|
34
|
+
"README.md"
|
|
35
|
+
],
|
|
36
|
+
"keywords": [
|
|
37
|
+
"repr-c",
|
|
38
|
+
"zero-copy",
|
|
39
|
+
"sharedarraybuffer",
|
|
40
|
+
"webassembly",
|
|
41
|
+
"wasm",
|
|
42
|
+
"web-workers",
|
|
43
|
+
"binary",
|
|
44
|
+
"struct",
|
|
45
|
+
"dataview",
|
|
46
|
+
"rust",
|
|
47
|
+
"tinygo"
|
|
48
|
+
],
|
|
49
|
+
"scripts": {
|
|
50
|
+
"prepublishOnly": "npm run build && npm test && npm run size",
|
|
51
|
+
"build": "tsc -p tsconfig.build.json",
|
|
52
|
+
"typecheck": "tsc --noEmit",
|
|
53
|
+
"test": "vitest run",
|
|
54
|
+
"bench": "node --import ./dist/index.js test/bench.js",
|
|
55
|
+
"size": "node scripts/check-size.mjs",
|
|
56
|
+
"docs:dev": "pnpm --filter capnstruct-docs dev",
|
|
57
|
+
"docs:build": "pnpm run build && pnpm --filter capnstruct-docs build"
|
|
58
|
+
},
|
|
59
|
+
"devDependencies": {
|
|
60
|
+
"@types/node": "^22.12.0",
|
|
61
|
+
"esbuild": "^0.25.0",
|
|
62
|
+
"typescript": "^5.8.2",
|
|
63
|
+
"vitest": "^3.0.7"
|
|
64
|
+
}
|
|
65
|
+
}
|