pop

popyt

A very easy to use Youtube Data v3 API wrapper.

Showing:

Popularity

Downloads/wk

5.9K

GitHub Stars

39

Maintenance

Last Commit

2mos ago

Contributors

8

Package

Dependencies

0

Size (min+gzip)

11.2KB

License

Unlicense

Type Definitions

Built-In

Tree-Shakeable

No?

Readme

popyt

Want to access data from the YouTube Data v3 API? Want a Node.js YouTube API wrapper with typings, promises, and caching? No problem! We've got ya covered. npm i popyt

GitHub issues GitHub stars GitHub license Coverage status Actions status DeepScan grade Downloads Version

Examples

See the documentation.

Here are some basic methods:

Instantiate the object:

const { YouTube } = require('popyt')
const youtube = new YouTube(apiKey)

Instantiate the object without caching:

const { YouTube } = require('popyt')
const youtube = new YouTube(apiKey, undefined, { cache: false })

Get a video by ID:

const video = await youtube.getVideo('dQw4w9WgXcQ')
console.log(video)

You can do the same thing with playlists, channels, and comments by replacing Video with any of them.

Get a video by URL:

const video = await youtube.getVideo('https://youtube.com/watch?v=dQw4w9WgXcQ')
console.log(video)

Get a video by title (or similar title):

const video = await youtube.getVideo('never gonna give you up')
console.log(video)

Search videos:

const videos = await youtube.searchVideos('never gonna give you up', 12)
console.log(videos) // array of 12 partial video objects

Note: This wrapper does not implement every feature of the YouTube API. If you would like anything added, feel free to open an issue. The limits imposed by the wrapper are not imposed by YouTube.

Development/Contributing

Before committing:

  • Run yarn lint.
  • Run yarn coverage or npm run coverage to check if you've added enough tests. It should display 100% statement, line, and branch coverage.
  • Also, make sure that every test passes.

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100