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

vknplayer

v0.0.44-alpha3

Published

console audio player for listen music from vk.com and on-line radio

Downloads

21

Readme

README

vknplayer - это двухпанельный консольный аудио-плеер для воспроизведения музыки с vk.com написанный полностью на Node.js с использованием фреймворка blessed. В будущем планируется поддержка других ресурсов.

для компиляции модулей lame и speaker требуется наличие в системе make gcc libasound2-dev libmp3lame-dev libmpg123-dev и самого nodejs установить их можно коммандой

# apt-get install nodejs make gcc libasound2-dev libmp3lame-dev libmpg123-dev

Интерфейс плеера состоит из двух панелей, панели функциональных клавиш и строки ввода команд. Правая панель - статическая, представляет из себя плейллист, который наполняется с помощью команд search и radio. Левая панель содержит виртуальные каталоги Друзья, Сообщества, Новости, Закладки и др. Соответственно можно слушать свою музыку, друзей, групп. А так же музыку из новостей, и лайкнутых вами постов.

Консоль поддерживает следующий список команд:

  • ['play'] - без аргументов - начать воспроизведение текущего плейлиста, с аргументами - аналогична комманде search
  • ['stop'] - остановить воспроизведение
  • ['next'] - играть следующий трек
  • ['prev'] - играть предыдущий трек
  • ['volume', 'v'] - задать значение громкости - 0..100
  • ['shuffle', 'sh'] - перемешать активный плейлист
  • ['search', 's'] - искать заданного исполнителя. При этом композиции с одинаковым названием удаляются. То есть количество дублей сводится к минимуму
  • ['radio', 'r'] - играть радио, на основе заданного исполнителя. Алгоритм используется от vk.com
  • ['exit', 'quit', 'q'] - закрыть приложение

Перевод фокуса в консоль происходит клавишей Space. Из консоли в основной интерфейс - клавишей Esc. Особо хочется отметить возможность работы плеера на мини-компьютерах Raspberry-Pi, Banana-Pi, CubieBoard и др. платформах, поддерживающих NodeJS.

Авторизация. Если в момент запуска плейер не обнаруживает конфигурационный файл($HOME/.config/vknp/config.json), то появляется попап с просьбой авторизоваться. Можно авторизоваться двумя способами

  • первый сводится к нажатию кнопки получения ID, и последующем вводе его на интернет-странице плеера(которая сейчас представляет собой только поле для ввода, и кнопку получения токена). Подтверждение вами прав для приложения, генерации токена, и автоматическом получением его приложением. После этого остается его только перезапустить. Недостатком данного способа является невозможность получения прав для доступа к Стене пользователя, и соответственно, пропадает часть функционала - нельзя получать группы новостей, нельзя получать список закладок(лайкнутые вами посты)
  • второй способ менее удобный, но при этом доступен весь функционал. Нужно пройти по ссылке(на странице представлен укороченный вариант, но можно увидеть и полный url), и после редиректа прочитать сообщение от Администрации VK.COM. Понять, что вам это не грозит, скопировать содержимое адресной строки, и вставить в соответствующее поле в плеере и нажать либо Enter, либо кнопку Submit. Затем необходимо перезапустить приложение.
  • прямой авторизации не предусмотрено, так как я считаю это не безопасным, и так же не хочу брать на себя ответственность в получении вашего логина и пароля

Плеер далек до идеала, в нем есть баги и огрехи, но работа над их исправлениями ведется и им вполне можно пользоваться.

Для работы требуется установленный Node.js

# apt-get install nodejs npm

Установить плеер можно локально, склонировав репозитарий к себе, и выполнив в каталоге с плеером npm install для установки зависимостей. Или глобально - коммандой sudo npm install -g vknplayer Запуск. Если вы устанавливали через npm, то достаточно выпонить в консоли vknplayer. В противном случае выполните ./vknplayer.js или ./vknp из каталога с приложением. Из-за особеностей реализации модуля lame-node консоль периодически засирается всяким мусором. Исправить можно либо ресайзом окна, либо использованием bash-скрипта запуска vknp.

#В планах#

  • исправление ошибок
  • поддержка других музыкальных он-лайн сервисов
  • веб-интерфейс