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

@adahiya/music-library-scripts

v0.1.0

Published

[![npm](https://img.shields.io/npm/v/@adahiya/music-library-scripts.svg?label=@adahiya/music-library-scripts)](https://www.npmjs.com/package/@adahiya/music-library-scripts)

Downloads

5

Readme

adi's music library scripts

npm

Requirements: Node.js v19+

Getting started

Before you run the scripts, you'll need to make sure you have Node.js installed:

  • Install nvm
  • In a terminal, run nvm install 19 && nvm use 19

Next, you can install these scripts as a global NPM library:

npm install --global @adahiya/music-library-scripts

convert-swinsian-to-rekordbox-itunes-xml-library

Converts a Swinsian library to Rekordbox iTunes XML format.

1. Export your Swinsian library to an XML file

swinsian-export-1 swinsian-export-2

2. Run the Node.js script to generate a ModifiedLibrary.xml file

If you have your global node_modules configured on your shell's $PATH correctly, you can simply run the binary after installing the package:

music-library-scripts

If not, you can still run it via npm:

npm exec --global music-library-scripts

It will prompt you for a path to the exported SwinsianLibrary.xml file, and output something like this to the console:

> npm exec --global music-library-scripts

✔ Which script would you like to run? › Convert Swinsian library to Music.app/iTunes XML format
✔ Where is your exported SwinsianLibrary.xml located? … /Users/adi/Music/Swinsian export/Latest
Loading library at /Users/adi/Music/Swinsian export/Latest/SwinsianLibrary.xml
loadPlistFile: 8.220s
Building modified library
buildPlistOutput: 7.693s
Writing modified library to /Users/adi/Music/Swinsian export/Latest/ModifiedLibrary.xml

3. Point Rekordbox to the new modified library file

This configuration only needs to be done once!

rekordbox-itunes-xml

After the first time you configure Rekordbox to look for ModifiedLibrary.xml in this location, you can just hit the refresh button to load the library when you run this process again:

refresh

Automator workflow

There's an automator workflow in this repo which does most of the above steps for you. Here's an overview of its steps:

workflow-overview

Development

Tasks

  • Build from source: pnpm build
  • Run CLI: pnpm run-cli