-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdeno.json
More file actions
127 lines (125 loc) · 8.61 KB
/
deno.json
File metadata and controls
127 lines (125 loc) · 8.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
{
"workspace": [
"./packages/core-runtime",
"./packages/core-cashu",
"./packages/tlsn-toolkit",
"./packages/photo-bounty",
"./packages/cashu-frost-oracle",
"./packages/cashu-conditional-swap",
"./packages/sdk"
],
"compilerOptions": {
"lib": ["esnext", "dom", "dom.iterable", "deno.ns"],
"jsx": "react-jsx",
"jsxImportSource": "react",
"strict": true
},
"imports": {
"hono": "jsr:@hono/hono@^4",
"hono/cors": "jsr:@hono/hono@^4/cors",
"hono/deno": "jsr:@hono/hono@^4/deno",
"zod": "jsr:@zod/zod@^4",
"@noble/hashes/sha2.js": "jsr:@noble/hashes@^2/sha2.js",
"@noble/hashes/utils.js": "jsr:@noble/hashes@^2/utils.js",
"@std/testing/bdd": "jsr:@std/testing@^1/bdd",
"@std/testing/mock": "jsr:@std/testing@^1/mock",
"@std/expect": "jsr:@std/expect@^1",
"@cashu/cashu-ts": "npm:@cashu/cashu-ts@^3",
"postgres": "npm:postgres@^3",
"nostr-tools": "npm:nostr-tools@^2",
"nostr-tools/pool": "npm:nostr-tools@^2/pool",
"nostr-tools/filter": "npm:nostr-tools@^2/filter",
"nostr-tools/core": "npm:nostr-tools@^2/core",
"nostr-tools/nip19": "npm:nostr-tools@^2/nip19",
"nostr-tools/nip44": "npm:nostr-tools@^2/nip44",
"nostr-tools/pure": "npm:nostr-tools@^2/pure",
"@noble/curves/secp256k1": "npm:@noble/curves@^2/secp256k1.js",
"@anthropic-ai/sdk": "npm:@anthropic-ai/sdk@^0.78",
"@modelcontextprotocol/sdk/client/index.js": "npm:@modelcontextprotocol/sdk@^1/client/index.js",
"@modelcontextprotocol/sdk/client/stdio.js": "npm:@modelcontextprotocol/sdk@^1/client/stdio.js",
"@modelcontextprotocol/sdk/server/mcp.js": "npm:@modelcontextprotocol/sdk@^1/server/mcp.js",
"@modelcontextprotocol/sdk/server/stdio.js": "npm:@modelcontextprotocol/sdk@^1/server/stdio.js",
"@modelcontextprotocol/sdk/shared/transport.js": "npm:@modelcontextprotocol/sdk@^1/shared/transport.js",
"@modelcontextprotocol/sdk/types.js": "npm:@modelcontextprotocol/sdk@^1/types.js",
"@logtape/logtape": "jsr:@logtape/logtape@^2",
"react": "npm:react@^19",
"react-dom": "npm:react-dom@^19",
"react-dom/client": "npm:react-dom@^19/client",
"@tanstack/react-query": "npm:@tanstack/react-query@^5",
"@tanstack/query-core": "npm:@tanstack/query-core@^5",
"lucide-react": "npm:lucide-react@^0.577",
"radix-ui": "npm:radix-ui@^1",
"clsx": "npm:clsx@^2",
"tailwind-merge": "npm:tailwind-merge@^3",
"class-variance-authority": "npm:class-variance-authority@^0.7",
"puppeteer": "npm:puppeteer@^24",
"playwright": "npm:playwright@^1.58",
"esbuild": "npm:esbuild@^0.25"
},
"unstable": ["sloppy-imports", "detect-cjs"],
"tasks": {
"start": "deno run --allow-net --allow-env --allow-read --allow-write --allow-run --allow-sys --env src/infrastructure/server.ts",
"dev": "deno run --watch --allow-all --env src/infrastructure/server.ts",
"test:unit": "deno test src/ packages/photo-bounty/ packages/tlsn-toolkit/ packages/cashu-frost-oracle/ packages/cashu-conditional-swap/ packages/core-runtime/ packages/core-cashu/ --allow-env --allow-read --allow-write --allow-net --allow-run --allow-sys '--ignore=src/**/*.integration.test.ts,src/protocol-*.test.ts,packages/sdk/'",
"test:protocol": "deno test src/protocol-trustless.test.ts src/protocol-attacks.test.ts src/protocol-exploits.test.ts src/protocol-quorum.test.ts --allow-env --allow-read --allow-write --allow-net --allow-run --allow-sys",
"test:frost": "deno test src/infrastructure/frost/ src/infrastructure/nostr/frost-dm.test.ts src/infrastructure/oracle/oracle-server-frost.test.ts src/infrastructure/oracle/oracle-nostr-frost.test.ts e2e/frost-threshold.test.ts --allow-env --allow-read --allow-write --allow-net --allow-run --allow-sys",
"test:integration": "deno test src/infrastructure/worker-api.integration.test.ts src/infrastructure/mcp-server.integration.test.ts --allow-env --allow-read --allow-write --allow-net --allow-run --allow-sys",
"test:e2e": "deno test e2e/ --allow-env --allow-read --allow-write --allow-net --allow-run --allow-sys",
"test:e2e:frost": "deno test e2e/frost-threshold.test.ts --allow-env --allow-read --allow-write --allow-net --allow-run --allow-sys",
"test:e2e:relay": "NOSTR_RELAYS=ws://localhost:7777 BLOSSOM_SERVERS=http://localhost:3333 deno test e2e/relay.test.ts --allow-env --allow-read --allow-write --allow-net --allow-run --allow-sys",
"test:regtest": "CASHU_MINT_URL=http://localhost:3338 NOSTR_RELAYS=ws://localhost:7777 BLOSSOM_SERVERS=http://localhost:3333 deno test e2e/regtest-cashu.test.ts e2e/regtest-htlc-trustless.test.ts e2e/regtest-htlc-attacks.test.ts e2e/core-flow.test.ts e2e/conditional-swap.test.ts e2e/two-party-binary-bet-lifecycle.test.ts e2e/two-party-binary-bet-orderbook-pg.test.ts e2e/sdk-integration.test.ts --allow-env --allow-read --allow-net --allow-run",
"test:ci": "deno test src/ packages/photo-bounty/ packages/tlsn-toolkit/ packages/cashu-frost-oracle/ packages/cashu-conditional-swap/ packages/core-runtime/ packages/core-cashu/ --allow-env --allow-read --allow-write --allow-net --allow-run --allow-sys '--ignore=src/**/*.integration.test.ts,packages/sdk/'",
"test:example": "deno test --allow-all example/",
"test": "deno test src/ packages/photo-bounty/ packages/tlsn-toolkit/ packages/cashu-frost-oracle/ packages/cashu-conditional-swap/ packages/core-runtime/ packages/core-cashu/ e2e/ --allow-env --allow-read --allow-write --allow-net --allow-run --allow-sys",
"test:packages": "deno test packages/photo-bounty/ packages/tlsn-toolkit/ packages/cashu-frost-oracle/ packages/cashu-conditional-swap/ packages/core-runtime/ packages/core-cashu/ packages/sdk/src/customer.test.ts packages/sdk/src/provider.test.ts packages/sdk/src/schema.test.ts packages/sdk/src/nostr.test.ts packages/sdk/src/oracle.test.ts packages/sdk/src/cashu.test.ts packages/sdk/src/events.test.ts packages/sdk/src/integration.test.ts --allow-env --allow-read --allow-write --allow-net --allow-run --allow-sys",
"test:pentest": "deno test e2e/pentest/ --allow-env --allow-read --allow-net --allow-run --allow-sys",
"test:all": "./scripts/test-all.sh --local",
"test:all:docker": "./scripts/test-all.sh --docker",
"test:all:full": "./scripts/test-all.sh full",
"lint": "deno lint",
"lint:strict": "deno lint && deno task lint:arch && deno task lint:invariants && deno task lint:paths && deno task lint:types && deno task lint:deprecation && deno task lint:no-history-comments",
"lint:deps": "cd crates/frost-signer && cargo audit 2>/dev/null; cd ../tlsn-prover && cargo audit 2>/dev/null; cd ../tlsn-server && cargo audit 2>/dev/null; echo 'Cargo audit complete'",
"lint:arch": "deno run --allow-read scripts/arch-lint.ts",
"lint:invariants": "deno run --allow-read scripts/lint-invariants.ts",
"lint:paths": "deno run --allow-read --allow-env --allow-run scripts/check-no-local-paths.ts",
"lint:refactor": "deno run --allow-read scripts/refactor-lint.ts",
"lint:types": "deno run --allow-read scripts/lint-types.ts",
"lint:deprecation": "deno run --allow-read --allow-env --allow-run scripts/lint-deprecation.ts",
"lint:no-history-comments": "deno run --allow-read --allow-env --allow-run scripts/lint-no-history-comments.ts",
"setup:hooks": "git config core.hooksPath scripts/git-hooks && echo '✓ git hooks installed (core.hooksPath → scripts/git-hooks)'",
"build:ui": "deno run --allow-all scripts/build-ui.ts",
"build:css": "deno run --allow-all scripts/build-css.ts",
"screenshot:market": "deno run --allow-all scripts/market-screenshots.ts",
"setup:tlsn-ext": "git clone https://github.com/motxx/tlsn-extension.git /tmp/tlsn-extension 2>/dev/null || (cd /tmp/tlsn-extension && git pull) && cd /tmp/tlsn-extension && npm install && npm run build"
},
"exclude": ["mobile", "node_modules", "dist/", "example/two-party-binary-bet/src/demo.ts", "example/two-party-binary-bet/src/nostr-market.ts", "example/two-party-binary-bet/ui/main.js", "example/two-party-binary-bet/ui/main.js.map"],
"lint": {
"rules": {
"tags": ["recommended"],
"include": [
"no-eval",
"no-self-compare",
"default-param-last"
],
"exclude": [
"no-unused-vars",
"require-await",
"no-explicit-any",
"no-slow-types",
"jsx-button-has-type",
"no-import-prefix"
]
},
"exclude": [
"mobile",
"example/two-party-binary-bet/src/demo.ts",
"example/two-party-binary-bet/src/nostr-market.ts",
"example/two-party-binary-bet/ui/main.js",
"example/two-party-binary-bet/ui/main.js.map",
"dist/",
"scripts/",
"src/infrastructure/log-stream.ts"
]
},
"nodeModulesDir": "auto"
}