n8n-nodes-widespread 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 +18 -2
- package/index.js +1 -0
- package/nodes/Widespread/Widespread.node.js +64 -0
- package/nodes/Widespread/widespread.svg +1 -0
- package/package.json +15 -4
package/README.md
CHANGED
|
@@ -1,3 +1,19 @@
|
|
|
1
|
-
#
|
|
1
|
+
# n8n-nodes-widespread
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
n8n community node for the [Widespread](https://github.com/TerexitariusStomp/widespread-bridge)
|
|
4
|
+
protocol — verified-work bounty discovery for agent workflows.
|
|
5
|
+
|
|
6
|
+
Operations: List Bounties · List Markets · Feed Search · List Runners ·
|
|
7
|
+
Get State — all against the public bridge (or a self-hosted base URL).
|
|
8
|
+
Non-custodial read surface; the signed earn loop runs through the
|
|
9
|
+
[Widespread MCP server](https://widespread-bridge.widespread.workers.dev/install).
|
|
10
|
+
|
|
11
|
+
## Install
|
|
12
|
+
|
|
13
|
+
```sh
|
|
14
|
+
npm install n8n-nodes-widespread
|
|
15
|
+
# n8n → Settings → Community Nodes → Install → n8n-nodes-widespread
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Verified-community listing submitted to n8n; self-hosters can also install
|
|
19
|
+
directly from npm.
|
package/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = {};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
const BASE = "https://widespread-bridge.widespread.workers.dev";
|
|
3
|
+
|
|
4
|
+
module.exports = {
|
|
5
|
+
description: {
|
|
6
|
+
displayName: "Widespread",
|
|
7
|
+
name: "widespread",
|
|
8
|
+
icon: "file:widespread.svg",
|
|
9
|
+
group: ["transform"],
|
|
10
|
+
version: 1,
|
|
11
|
+
subtitle: '={{$parameter["operation"]}}',
|
|
12
|
+
description: "Verified-work bounty discovery on the Widespread protocol (non-custodial; read surface)",
|
|
13
|
+
defaults: { name: "Widespread" },
|
|
14
|
+
inputs: ["main"],
|
|
15
|
+
outputs: ["main"],
|
|
16
|
+
properties: [
|
|
17
|
+
{
|
|
18
|
+
displayName: "Operation",
|
|
19
|
+
name: "operation",
|
|
20
|
+
type: "options",
|
|
21
|
+
noDataExpression: true,
|
|
22
|
+
options: [
|
|
23
|
+
{ name: "List Bounties", value: "bounties", description: "Open bounty postings", action: "List open bounties", routing: { request: { method: "GET", url: `=${"$parameter.baseUrl"}/api/state` } } },
|
|
24
|
+
{ name: "List Markets", value: "markets", description: "Open escrowed work markets", action: "List open markets", routing: { request: { method: "GET", url: `=${"$parameter.baseUrl"}/api/markets` } } },
|
|
25
|
+
{ name: "Feed Search", value: "feed", description: "Search the cross-forge work feed", action: "Search the work feed", routing: { request: { method: "GET", url: `=${"$parameter.baseUrl"}/api/feed` } } },
|
|
26
|
+
{ name: "List Runners", value: "runners", description: "Sealed execution runners", action: "List runners", routing: { request: { method: "GET", url: `=${"$parameter.baseUrl"}/api/runners` } } },
|
|
27
|
+
{ name: "Get State", value: "state", description: "Claims + bounties dashboard snapshot", action: "Get state", routing: { request: { method: "GET", url: `=${"$parameter.baseUrl"}/api/state` } } },
|
|
28
|
+
],
|
|
29
|
+
default: "bounties",
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
displayName: "Base URL",
|
|
33
|
+
name: "baseUrl",
|
|
34
|
+
type: "string",
|
|
35
|
+
default: BASE,
|
|
36
|
+
description: "Bridge base URL — override for a self-hosted deployment",
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
displayName: "Query",
|
|
40
|
+
name: "query",
|
|
41
|
+
type: "string",
|
|
42
|
+
default: "",
|
|
43
|
+
displayOptions: { show: { operation: ["feed"] } },
|
|
44
|
+
routing: { send: { type: "query", property: "q" } },
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
displayName: "Source",
|
|
48
|
+
name: "source",
|
|
49
|
+
type: "string",
|
|
50
|
+
default: "",
|
|
51
|
+
displayOptions: { show: { operation: ["feed"] } },
|
|
52
|
+
routing: { send: { type: "query", property: "source" } },
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
displayName: "Limit",
|
|
56
|
+
name: "limit",
|
|
57
|
+
type: "number",
|
|
58
|
+
default: 25,
|
|
59
|
+
displayOptions: { show: { operation: ["feed"] } },
|
|
60
|
+
routing: { send: { type: "query", property: "limit" } },
|
|
61
|
+
},
|
|
62
|
+
],
|
|
63
|
+
},
|
|
64
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10" fill="none" stroke="currentColor" stroke-width="2"/><path d="M7 12h10M12 7v10" stroke="currentColor" stroke-width="2"/></svg>
|
package/package.json
CHANGED
|
@@ -1,6 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "n8n-nodes-widespread",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "n8n community node for the Widespread protocol — verified-work bounty discovery",
|
|
5
|
+
"license": "MIT",
|
|
6
|
+
"author": "TerexitariusStomp",
|
|
7
|
+
"keywords": ["n8n-community-node-package", "mcp", "bounties", "agents"],
|
|
8
|
+
"repository": { "type": "git", "url": "https://github.com/TerexitariusStomp/widespread-bridge" },
|
|
9
|
+
"files": ["dist", "nodes"],
|
|
10
|
+
"main": "index.js",
|
|
11
|
+
"n8n": {
|
|
12
|
+
"n8nNodesApiVersion": 1,
|
|
13
|
+
"nodes": ["nodes/Widespread/Widespread.node.js"]
|
|
14
|
+
},
|
|
15
|
+
"devDependencies": {},
|
|
16
|
+
"peerDependencies": { "n8n-workflow": "*" }
|
|
17
|
+
}
|