Portaldot Hacker House 2026 | Judges & Voting Demo Post (pdk — Portaldot Dev Kit)

Note: This post uses pdk, the champion project of Portaldot Online Mini Hackathon S1, as a demo to show the standard post structure for Judges and Community Choice Award voting. Demo and video are alternatives—this post uses the Demo Video. All links come from the project’s official DoraHacks page and are directly accessible.The first hackathon required projects to be deployed locally.


Project Introduction

pdk (Portaldot Dev Kit) is a Python CLI toolkit that covers the entire Portaldot local dev loop with 14 commands. Its hero feature, FailLens, decodes raw on-chain error codes into plain-language diagnoses + fixes, using the chain’s own metadata—no hard-coded tables. pip install portaldot-pdk and you’re in—no clone, no build.

Problem Solved

Portaldot is a brand-new, Rust-first chain. During Season 1 every developer runs a local node—and when a transaction fails, the node returns only ExtrinsicFailed: DispatchError { Module: { index: 6, error: 2 } }. No message, no explanation, no fix. The hackathon Q&A is dominated by “how do I get POT?” and “what does this error code mean?”—the #1 barrier to onboarding new Portaldot builders. pdk removes that friction at the root.

Link

:clapper_board: Live Web / Demo Video(choose one):https://youtu.be/EPNIRRc3qnw

:laptop: GitHub:https://github.com/PugarHuda/portaldot-dev-kit

:bar_chart: Pitch Deck:pdk — Pitch Deck(The first hackathon had no pitch deck requirement.)

Technical Highlights

1. FailLens: decodes with the chain’s own metadata, never falls behind runtime upgrades
pdk debug relies on no hard-coded error table; it parses against live chain metadata. Any runtime upgrade won’t break the diagnosis.

2. The only tool in the ecosystem that decodes raw Module codes
pdk explain --module 6 --error 2—no tx hash, no error name needed; it directly consumes the raw Module { index, error } printed by the node. 202 runtime indices are extracted live from portaldot-1002 metadata. No other tool in the Portaldot ecosystem does this.

3. AI diagnosis is attached automatically, but the trusted knowledge base is the source of truth
After setting PDK_AI_KEY once (a free OpenRouter key), every diagnosis automatically appends an “AI suggestion—unverified” panel; verified knowledge-base entries remain the final authority. --no-ai disables it with zero friction.

4. Real transactions end-to-end, zero mocks
Every chain-touching command submits real transactions to a local Portaldot node and pays POT as gas. The example proof transaction 0x8b605579...dd4d546a is verifiable on-chain. All 124 deterministic checks pass, with CI running on Python 3.11 + 3.12.

5. CI gate mode: let pipelines fail in plain language
pdk debug --json --exit-code returns rc 2 and a machine-readable JSON diagnosis, so Portaldot projects can fail in CI with a clear reason instead of a raw module error dump.

Team

AmpunBang — solo build by Pugar Huda Mantoro

  • GitHub: @PugarHuda
  • Email: hudapugar@gmail.com
  • Project nature: A single-person hackathon submission targeting Portaldot’s #1 onboarding pain: cryptic transaction failures and raw error codes

Judges & Voting Fit

For Judges: pdk is published on PyPI (v0.1.6), has real on-chain transaction proof, 124 tests green on CI, is MIT open source, and documents 50+ failure modes. It addresses the most urgent developer-acquisition problem in the Portaldot ecosystem right now.

For Community Voters: If you’ve ever been stuck on Portaldot by Module { index: 6, error: 2 }, pdk is built for you. The zero-install error lookup page works directly in your browser—no node, no installation required. A previous champion project, still actively iterating.

4 个赞