npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

youtinx

v0.4.1

Published

`youtinx {playlistId}` will save in `./data/{playlistId}/` a set of JSON files representing records ready to be uploaded to Algolia.

Downloads

8

Readme

youtinx

youtinx {playlistId} will save in ./data/{playlistId}/ a set of JSON files representing records ready to be uploaded to Algolia.

Each generated file represents the list of captions for a specific video. Each caption contains its content and start, as well as metadata about the parent video and playlist.

Playlist and video metadata is copied into all the records. This is a lot of duplicate code, but is required for the distinct feature of Algolia to work.

All responses from the YouTube API are cached in .cache. This makes development faster and prevents wasting API call quotas. In production, it is recommended to delete the .cache folder between each run.

Notes

  • Private videos are skipped (they still show in the progress spinner though)
  • Videos without captions are still indexed

ENV

YOUTUBE_API_KEY is required to pull.

ALGOLIA_API_KEY is required to push.

Config

Youtinx will display a list of all videos where it failed to download captions. This might be due to a bug in youtinx or is expected because no caption is uploaded. If you want to reduce the noise, you can pass an array of video ids to knownVideosWithoutCaptions in your youtinx.config.js file. No error will be displayed for ids found in this array.

By default, it will fetch 20 captions at a time. You can change this value depending on your network/laptop power by changing the concurrency.captions key.

Linter

We recommand not having your husky/lintstaged lint the files saved in the ./data folder as there are too many of them and this will consume a lot of memory.