w3bs.AccountStart building
PACKAGES / Profullstack

p0dcasters

p0d, the p0dcasters.com CLI: search the podcast directory, list episodes, submit shows and export the directory as OPML. One Node 22 script, no package manager.

ThreatCrush · No malware found
INSTALLw3bs install p0dcasters.com/p0dcasters

No w3bs yet? curl -fsSL https://w3bs.org/install.sh | sh

Get started

What to type once it is installed.

  1. w3bs install p0dcasters.com/p0dcastersInstall p0dcasters and track it for updates
  2. p0d search bookbindingSearch the podcast directory
  3. p0d episodes <slug> --limit 3List a podcast's latest episodes
  4. p0d submit https://example.org/podcast.rssAdd a show to the directory (a feed, a site or an OPML file)
  5. p0d opml > p0dcasters.opmlThe whole directory as an OPML list any podcast app imports

Every option: p0d --help · docs ↗

Malware scan

ThreatCrush found no malware indicators in p0dcasters 0.4.2. The other findings below are ordinary code-review notes, not malware.

Scanned
2026-11-03 10:50 UTC · threatcrush 0.13.30
Files
227 (installer + github.com/profullstack/p0dcasters@32c3b4102a0b)
Findings
2 high · 37 medium · 5 low
44 other findings (not malware)
  • high
    outbound request to a non-constant URLsource/public/sw.js:45js-ssrf-outbound-request · CWE-918
  • high
    outbound request to a non-constant URLsource/src/app/api/audio/route.ts:34js-ssrf-outbound-request · CWE-918
  • medium
    SQL built from a template literal or f-stringsource/scripts/build_live.py:16sql-template-interpolation · CWE-89
  • medium
    SQL built from a template literal or f-stringsource/scripts/build_live.py:28sql-template-interpolation · CWE-89
  • medium
    SQL assembled by concatenation or interpolationsource/scripts/export_indie.py:221sql-string-concatenation · CWE-89
  • medium
    SQL built from a template literal or f-stringsource/scripts/load_directory.mjs:84sql-template-interpolation · CWE-89
  • medium
    SQL built from a template literal or f-stringsource/scripts/load_directory.mjs:112sql-template-interpolation · CWE-89
  • medium
    SQL built from a template literal or f-stringsource/scripts/load_directory.mjs:173sql-template-interpolation · CWE-89
  • medium
    unescaped HTML renderingsource/src/app/about/page.tsx:101js-unescaped-html-sink · CWE-79
  • medium
    SQL built from a template literal or f-stringsource/src/app/category/[category]/page.tsx:62sql-template-interpolation · CWE-89
  • medium
    unescaped HTML renderingsource/src/app/category/[category]/page.tsx:75js-unescaped-html-sink · CWE-79
  • medium
    SQL built from a template literal or f-stringsource/src/app/language/[lang]/page.tsx:64sql-template-interpolation · CWE-89
  • medium
    SQL built from a template literal or f-stringsource/src/app/language/[lang]/page.tsx:78sql-template-interpolation · CWE-89
  • medium
    unescaped HTML renderingsource/src/app/language/[lang]/page.tsx:91js-unescaped-html-sink · CWE-79
  • medium
    unescaped HTML renderingsource/src/app/layout.tsx:141js-unescaped-html-sink · CWE-79
  • medium
    SQL built from a template literal or f-stringsource/src/app/networks/[slug]/page.tsx:47sql-template-interpolation · CWE-89
  • medium
    SQL built from a template literal or f-stringsource/src/app/networks/[slug]/page.tsx:49sql-template-interpolation · CWE-89
  • medium
    unescaped HTML renderingsource/src/app/networks/[slug]/page.tsx:62js-unescaped-html-sink · CWE-79
  • medium
    SQL built from a template literal or f-stringsource/src/app/networks/page.tsx:23sql-template-interpolation · CWE-89
  • medium
    unescaped HTML renderingsource/src/app/podcast/[slug]/page.tsx:134js-unescaped-html-sink · CWE-79
  • medium
    unescaped HTML renderingsource/src/app/podcasts/page.tsx:48js-unescaped-html-sink · CWE-79
  • medium
    unescaped HTML renderingsource/src/app/radio/page.tsx:131js-unescaped-html-sink · CWE-79
  • medium
    SQL built from a template literal or f-stringsource/src/app/search/page.tsx:18sql-template-interpolation · CWE-89
  • medium
    SQL built from a template literal or f-stringsource/src/app/self-hosted/page.tsx:28sql-template-interpolation · CWE-89
  • medium
    SQL built from a template literal or f-stringsource/src/app/self-hosted/page.tsx:34sql-template-interpolation · CWE-89
  • medium
    SQL built from a template literal or f-stringsource/src/app/self-hosted/page.tsx:35sql-template-interpolation · CWE-89
  • medium
    SQL built from a template literal or f-stringsource/src/app/self-hosted/page.tsx:37sql-template-interpolation · CWE-89
  • medium
    unescaped HTML renderingsource/src/app/self-hosted/page.tsx:48js-unescaped-html-sink · CWE-79
  • medium
    unescaped HTML renderingsource/src/app/tv/[id]/page.tsx:71js-unescaped-html-sink · CWE-79
  • medium
    unescaped HTML renderingsource/src/app/tv/page.tsx:115js-unescaped-html-sink · CWE-79
  • medium
    redirect to a non-constant destinationsource/src/components/AuthForm.tsx:110js-open-redirect · CWE-601
  • medium
    unescaped HTML renderingsource/src/components/PitFooter.tsx:17js-unescaped-html-sink · CWE-79
  • medium
    redirect to a non-constant destinationsource/src/components/SubmitForm.tsx:53js-open-redirect · CWE-601
  • medium
    SQL built from a template literal or f-stringsource/src/lib/platforms.ts:98sql-template-interpolation · CWE-89
  • medium
    SQL built from a template literal or f-stringsource/src/lib/queries.ts:69sql-template-interpolation · CWE-89
  • medium
    SQL built from a template literal or f-stringsource/src/lib/queries.ts:111sql-template-interpolation · CWE-89
  • medium
    SQL built from a template literal or f-stringsource/src/lib/queries.ts:112sql-template-interpolation · CWE-89
  • medium
    SQL built from a template literal or f-stringsource/src/lib/submit.ts:408sql-template-interpolation · CWE-89
  • medium
    SQL built from a template literal or f-stringsource/src/lib/submit.ts:520sql-template-interpolation · CWE-89
  • low
    predictable temporary filesource/firetv/emulator-test.sh:23sh-predictable-temp-path · CWE-377
  • low
    SQL built from a template literal or f-stringsource/test/feed-crawl.test.mjs:32sql-template-interpolation · CWE-89
  • low
    SQL built from a template literal or f-stringsource/test/feed-crawl.test.mjs:66sql-template-interpolation · CWE-89
  • low
    SQL built from a template literal or f-stringsource/test/newsletter.test.mjs:294sql-template-interpolation · CWE-89
  • low
    SQL built from a template literal or f-stringsource/test/newsletter.test.mjs:295sql-template-interpolation · CWE-89

Badge for your README

ThreatCrush: No malware found

[![ThreatCrush scan](https://w3bs.org/api/packages/p0dcasters.com/p0dcasters/badge.svg)](https://w3bs.org/packages/p0dcasters.com/p0dcasters)