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 🙏

© 2026 – Pkg Stats / Ryan Hefner

canticle

v0.0.5

Published

CLI music streaming app using Blessed

Readme

Canticle

Canticle is a command-line music/audio streaming application. It uses Blessed as front-end for youtube-dl and mplayer. Canticle is designed for streaming only and does not download media for off-line playback.

NOTICE

This software uses the MIT License.

Development Status PRE-RELEASE

Canticle has served me well for a good stretch of time even though I neglect doing work to improve it. If I were to put forth the effort to finish cleaning it up, it might even be something nice. Not sure if that'll ever happen. Occasionally dependencies will break this app; be patient, sometimes these things work themselves out.

Features

  • Uses the entire terminal window to provide a friendly user interface.
  • Command console accepts text commands for managing playlists and playback.
  • Add URL's from popular streaming sites such as YouTube to local playlists.
  • Option to shuffle playback.
  • Keyboard shortcuts for seeking through tracks. (0.0.3)
  • Keyboard shortcuts for controlling in-app volume. (0.0.3)
  • User specific options can be set in ~/.config/canticle/*.json. (0.0.3)
  • Keyboard shortcuts for controlling playback. (0.0.3)
  • (0.0.4) Command to validate that existing tracks in a playlist have valid streams.
  • (0.0.4) Example: validate playlist example
  • (0.0.4) Maintenence script can optionally prune invalid tracks
  • (0.0.4) Ability to import existing public YouTube playlists
  • (0.0.4) dj and autoplay commands for quickly starting playback
  • (0.0.4) Add tracks to playlists via CLI
  • (0.0.4) WinAMP style title scroll in the Now Playing widget
  • (0.0.4) Keyboard shortcuts for navigating playlist
    • PgUp Select first track in playlist
    • PgDn Select last track in playlist
    • Home Move playlist selection up the number of visible tracks
    • End Move playlist selection down the number of visible tracks

What's New (0.0.5)

  • Published on yarn
  • Switched to yarn for development
  • File logging path can be set in user config under logging
    • Default false
  • Database file path can be set in user config
    • Default /home/$USER/.config/canticle/database.sql

Coming Soon

  • Interactive help command
  • Ability to delete tracks from the app
  • mysql and postgres support.
  • VIM Style keybindings.
  • mpv and VLC support.
  • Move tracks between playlists.
  • Trash playlist that acts like a recycle bin.
  • Export tracks to text file.
  • Desktop notications.
  • Time-weighted shuffle.

Dependencies

  • A modern version of node (Developed using v8.9.3)
  • mplayer
  • sqlite3

Installation (Ubuntu 18.04)

  • sudo apt install mplayer
  • yarn global add canticle
  • If it isn't already you'll need to put your yarn global bin in your $PATH.

Usage

Though there is some mouse support, Canticle is primarily controlled by text commands.

Commands

  • add playlist [name] - add a new playlist to the playlist manager
  • add track [URL] - add a new track to the open playlist
  • add tracks [playlist url] - add tracks from a public YouTube playlist to the open playlist
  • play - Opens a playlist, if a playist is open, play the highlighted track
    • play [integer]
    • play track [integer] - Opens a specific track in the playlist by index
    • play [name]
    • play playlist [name] - Opens a specific track in the playlist manager by name
  • shuffle - Toggles track shuffling
  • next - Highlight the next track to be played
  • dj - Opens a playlist, enables shuffle, selects the next track, and starts playback
  • validate playlist [name] validate each track in a playlist
  • pause - Toggle pausing playback
  • quit - Quit the application

Keyboard shortcuts

  • Esc - Blur the command console (click in text area to reselect)
  • Ctrl+c - When command console is blurred exit the app
  • home - Select first track in the open playlist
  • end - Select the last track in the open playlist
  • PgUp - Move playlist selection up the number of visible tracks
  • PgDn - Move playlist selection down the number of visible tracks
  • Right Arrow - Seek ahead in track
  • Left Arrow - Seek behind in track
  • Up Arrow - Go back in command history
  • Down Arrow - Go forward in command history or blank console

Inspiration

Inspired by mps-youtube

License

  • MIT