Registry / devops / youtube-duration

youtube-duration

JSON →
library1.0.0jsnpmunverified

A lightweight utility to parse and format ISO 8601 duration strings (used by YouTube API v3) into human-readable time strings (e.g., '3:11') or total seconds. v1.0.0 is the current stable version. It focuses solely on duration formatting/conversion with no dependencies, making it ideal for serverless or browser projects. Unlike moment-duration-format, it is YouTube-API-tailored and much smaller.

npm install youtube-duration
INSTALL
IMPORT
SIG · YOUTUBE-DURATION
Y
youtube-duration
devopsjavascriptv1.0.0
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

format
import { format } from 'youtube-duration';
const format = require('youtube-duration').format;
Package does not ship ESM; requires CommonJS or dynamic import. Named import only works with bundlers like webpack (cjs-to-esm transformation).
toSecond
import { toSecond } from 'youtube-duration';
const ytDuration = require('youtube-duration'); ytDuration.toSecond(...);
Named export; function is also available as require(...).toSecond in Node.
default export
import ytDuration from 'youtube-duration';
module.exports = ...
Module has no default export. Only named exports format and toSecond exist.

Shows how to import and use both format and toSecond functions with various ISO 8601 duration strings.

const { format, toSecond } = require('youtube-duration'); console.log(format('PT3M11S')); // 3:11 console.log(format('P1DT1M27S')); // 24:01:27 console.log(toSecond('PT3M11S')); // 191 console.log(toSecond('P1DT1M27S')); // 1527 console.log(toSecond('PT1H')); // 3600
Debug
Known issues
gotchaInput must be valid ISO 8601 duration (e.g., 'PT1H30M'). Invalid strings may throw or return unexpected values.
fix
Validate duration format before calling functions. Use regex /^PT?\d+[HMS]/ or similar.
affects: >=1.0.0
gotchaformat function outputs '0:00' for zero duration; not all applications may expect that.
fix
Check for zero second input and handle separately if needed.
affects: >=1.0.0
gotchaPackage is CommonJS only; no ES modules support. Using import may require bundler configuration.
fix
Use require() or dynamic import. For ESM projects, consider a bundler that can consume CJS.
affects: >=1.0.0
Errors
Common errors & fixes
Cannot find module 'youtube-duration'
Package not installed or incorrect import path in Node.js.
fix
Run 'npm install youtube-duration' and use require('youtube-duration').
ytDuration.format is not a function
Using default import from CJS module which has no default export.
fix
Use named import: const { format } = require('youtube-duration');
undefined is not a function (evaluating 'require('youtube-duration').format(...)')
Package not found due to typo or missing installation.
fix
Double-check package name and install it.
Upgrade
Version history
1.0.0latest on npm
Audit
Dependencies

No dependency data recorded yet.

Agent activity
19 hits · last 30 days
node
18
Resources
youtube-duration — npm install youtube-duration · libregistry