docs: add community health files and package metadata - #30
Conversation
Adds the community and governance files Snyk's package health report flagged as missing, plus a LICENSE file the README already linked to. - LICENSE: MIT, crediting both the original youtube-transcript project and this fork. The file was absent entirely, so the README link was broken and the published npm tarball shipped no license text. - CONTRIBUTING.md: setup, dev commands, project layout, testing rules (nock only, no live YouTube calls), commit and PR conventions. - CODE_OF_CONDUCT.md: Contributor Covenant 2.1. - SECURITY.md: private disclosure via GitHub advisories, response expectations, and an explicit scope section clarifying that YouTube rate limiting and upstream API breakage are not vulnerabilities. - Issue forms for bug reports and feature requests, a PR template, and an ISSUE_TEMPLATE config routing security reports to private advisories. - package.json: expand keywords for discoverability, add sideEffects: false for bundler tree-shaking (the module graph is declaration-only, no top-level side effects). - README: link the new contributing and security docs. No functional or API changes.
PR Summary by QodoAdd community health files, templates, and npm package metadata
AI Description
Diagram
High-Level Assessment
Files changed (10)
|
Code Review by Qodo🐞 Bugs (0) 📘 Rule violations (0) 📎 Requirement gaps (0)
Great, no issues found!Qodo reviewed your code and found no material issues that require reviewTo customize comments, go to the Qodo configuration screen, or learn more in the docs. |
Why
Our Snyk package health report scores the package 67/100. None of that deduction is security — 0 known vulnerabilities across all 11 published versions. The score is held down by the Community: LIMITED bucket, which checks for exactly the governance files this repo was missing.
This is PR 1 of 2. PR 2 covers CI hardening and npm provenance.
What changed
LICENSE(new) — The repo had no LICENSE file at all. The README's[MIT](LICENSE)link was broken, GitHub couldn't detect the license, and the published npm tarball shipped no license text. Now included in the tarball (verified withnpm pack --dry-run). Credits both the originalyoutube-transcriptproject and this fork, since upstream declares MIT on npm but ships no LICENSE file of its own.CONTRIBUTING.md(new) — Setup, the four dev commands CI runs, project layout, testing conventions (notably: mock withnock, never call YouTube for real), Conventional Commits, and PR guidance.CODE_OF_CONDUCT.md(new) — Contributor Covenant 2.1. Snyk calls this out by name.SECURITY.md(new) — Private disclosure via GitHub advisories with response-time expectations. The scope section is the useful part: it says explicitly that YouTube rate limiting and upstream Innertube breakage are not vulnerabilities, which should keep the private channel clear of ordinary bug reports.Issue and PR templates (new) — Bug report and feature request issue forms, a PR template with the CI checklist, and an
ISSUE_TEMPLATE/config.ymlthat routes security reports to private advisories. The bug form requires the video ID, package version, and Node version up front, since behavior varies so much by video and region.package.json— Expandedkeywordsfrom["youtube", "transcript"]to cover captions/subtitles/srt/vtt/innertube for discoverability. Added"sideEffects": falsefor bundler tree-shaking; verified safe, as the module graph is declaration-only with no top-level side effects.README.md— Added Contributing and Security sections; pointed the feature-request link at/issues/new/chooseso it picks up the new forms.Notes
FUNDING.ymlpointing at a nonexistent page would be a dead link. Skipped deliberately.SECURITY.mddescribes npm provenance, which PR 2 actually implements. Both land before the release, but worth merging PR 2 before publishing so the claim is true.Two repo settings to enable manually
Neither can be done from a PR:
SECURITY.mdand the issue template won't work for reporters.Testing
No functional or API changes; this is docs and metadata only.