extract-featurings
TypeScript icon, indicating that this package has built-in type declarations

2.0.0 • Public • Published

Extract artist featurings

Extract all featurings from a song title, which has one of the following formats:

  • "Songtitle (feat. artist1, artist2 & artist3)"
  • "Songtitle (featuring artist1, artist2 & artist3)"

Extract all featurings from a artist string, which has on of the following formats:

  • "MainArtist feat. FeatArtist1, FeatArtist2 & FeatArtist3"
  • "MainArtist featuring FeatArtist1, FeatArtist2 & FeatArtist3"

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Installing

The module has no further productive dependencies.

Install the module with npm to use it in your project.

npm install --production extract-featurings

To change the code or run tests of the module you can install it with its development dependencies:

npm install extract-featurings

Examples

Extract featurings from the song title:

import {TitleFeaturing, readTitleFeaturing} from 'extract-featurings';
 
const title: string = 'Title (feat. artist1, artist2 & artist3)';
 
// Extract the featurings from the song title
const featurings: TitleFeaturing = readTitleFeaturing(title);
 
// Logs the following result:
// featurings = {
//    title: 'Title',
//    feat: [ 'artist1', 'artist2', 'artist3' ]
// };
console.log(featurings);

Extract featurings from the artist string:

import { ArtistFeaturing, readArtistFeaturing } from 'extract-featurings';
 
const artist: string 'MainArtist feat. FeatArtist1, FeatArtist2 & FeatArtist3';
 
// Extract the featurings
const featurings: ArtistFeaturing = readArtistFeaturing(artist);
 
// Logs the following result
// featurings = {
//      artist: 'MainArtist',
//      feat: [ 'FeatArtist1', 'FeatArtist2', 'FeatArtist3' ] 
// };
console.log(featurings);

Testing the module

To test the module you can use the built in tests. For testing, the frameworks mocha and chai are used. To check the code coverage the framework istanbul is used.

To run the test install all development dependencies, with following command:

npm install extract-featurings

To start the tests run the following command:

gulp test

These test check different combinations of title and embeded featurings and if the output is correct.

Versioning

I use SemVer for versioning. For the versions available, see the tags on this repository.

Authors

License

This project is licensed under the MIT License

Readme

Keywords

Package Sidebar

Install

npm i extract-featurings

Weekly Downloads

1

Version

2.0.0

License

MIT

Last publish

Collaborators

  • stefanfcb94