Description
n8n-nodes-dng



Official n8n community node pack for the DraftNGoal
exam. Install it in your own n8n, build a workflow with native n8n nodes on the canvas, and submit it
to the official scoring webhook hosted on the DraftNGoal n8n cloud — your score
and detailed feedback come back as the node’s output.
The pack ships:
- DNG Submit Level — submits your workflow graph (node
type,parameters, connections) to the scorer. - DNG Scoring Webhook credential — URL, cohort shared secret, personal exam token.
- A sanitized challenge catalogue (
nodes-dng/challenges/):
description, suggested node types (availablenodetypes), time limit, sanitized step blueprint. The
reference solutions and grading rubrics are never shipped with this
package.
v3.x scoring compares native n8n node types (e.g. n8n-nodes-base.webhook, n8n-nodes-base.openAi). Older community package releases that submitted DNG mirror labels are not accepted by the cloud scorer (clientversionunsupported) until you upgrade to ≥ 3.0.0.
Quick start (Docker)
git clone https://github.com/voltek62/n8n-nodes-dng.git
cd n8n-nodes-dng1. Build the community node pack (DNG Submit Level + credential)
(cd nodes-dng && npm install && npm run build)2. Boot a local n8n that auto-loads the pack
docker compose up -d3. Open n8n and finish the owner setup
open http://localhost:5678
Wire your candidate workflow
1. In n8n → Credentials → + New → search DNG Scoring Webhook, then fill:
– Webhook URL: keep the default https://draftngoal.app.n8n.cloud/webhook/dng-score.
– Shared secret: cohort secret — sent to you by email after you sign up at
– Exam token (per candidate): personal token — also sent by email.
2. Create a workflow using standard n8n nodes (Webhook, Set, OpenAI, IF, HTTP Request, LangChain Agent, …):
Manual Trigger (or Webhook)
└── Your native n8n nodes …
└── DNG Submit Level
3. In DNG Submit Level, pick a challenge from the dropdown, fill your name
and email, then Execute workflow.
4. The node returns the JSON response from the cloud:
{
"ok": true,
"audit_id": "…",
"challenge_id": "quick-summarize",
"overall_score": 92.5,
"passed": true,
"criteria_scores": [ … ],
"step_results": [ … ],
"grading_decisions": [ … ]
}
The same payload is also emailed to DraftNGoal admins for audit.
Available challenges
The candidate-facing catalogue is in nodes-dng/challenges/index.json.
Browse the per-challenge description and step blueprint in
nodes-dng/challenges/ — the reference
solution is not in those files. It lives only on the DraftNGoal cloud.
| id | difficulty | duration |
|—-|————|———:|
| quick-summarize | Easy | 10 min |
| lead-routing | Intermediate | 20 min |
| research-agent | Expert | 45 min |
Install via the n8n Community Nodes UI (alternative)
If you run n8n cloud or a self-hosted n8n that allows community nodes:
1. Settings → Community nodes → Install → enter n8n-nodes-dng.
2. Confirm the install. DNG Submit Level (and the credential type) appear after reload.
3. Configure the DNG Scoring Webhook credential (same fields as above).
Repository layout
.
├── nodes-dng/ # the published npm package (n8n-nodes-dng)
│ ├── nodes/ # DNG Submit Level only
│ ├── credentials/ # DNG Scoring Webhook credential type
│ ├── challenges/ # sanitized public catalogue (no answers)
│ └── scripts/ # challenge sanitizer
├── docker-compose.yml # local n8n for candidates
├── .github/ # CI, release, dependabot, issue templates
├── LICENSE # MIT
├── SECURITY.md
└── CODEOFCONDUCT.md
The server/ directory used by the maintainer (full challenges + scoring
workflow + auth wrapper) is gitignored and never published. Only DraftNGoal
operates that side, on n8n cloud at
Build & test the pack locally (contributors)
cd nodes-dng
npm install
npm run build # sanitize challenges + tsc
npm run lint # type-check
npm pack --dry-run # see what gets shipped to npm
Support
License
MIT © Vincent Terrasi / DraftNGoal.