Download the PHP package stevenfoncken/multitool-for-spotify-php without Composer

On this page you can find all versions of the php package stevenfoncken/multitool-for-spotify-php. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package multitool-for-spotify-php

Multi-Tool for Spotify

Report a Bug ยท Request a Feature ยท Ask a Question

version: 2.0.2 Minimum PHP Version: 8.2 PHP-FIG license: MIT Total Downloads

A handy command-line application for archiving playlists, searching your library for tracks, or creating playlists with complete artist catalogs.

๐Ÿค” Why?

Initially, it was an automatic (CronJob) playlist archiving tool for "New Music Friday" playlists from popular EDM labels. It allowed me to compensate for FOMO when I didn't have time to discover new music right away.

Over time, I developed the desire to rewrite the otherwise lifelong beta (never touch a running system) and sprinkle some structured overhead on top ;-)

๐Ÿ“– Table of Contents

Click to expand - [๐Ÿ“– Table of Contents](#-table-of-contents) - [โ›“ Features](#-features) - [๐Ÿš€ Getting Started](#-getting-started) - [Requirements](#requirements) - [Installation](#installation) - [Download or Clone the Project](#download-or-clone-the-project) - [Install Dependencies via Composer](#install-dependencies-via-composer) - [Config](#config) - [.env](#env) - [Connecting to Spotify's Web API](#connecting-to-spotifys-web-api) - [Usage](#usage) - [Playlist Archiving](#playlist-archiving) - [List Archived Playlists](#list-archived-playlists) - [Delete Archived Playlists](#delete-archived-playlists) - [Create Artist Catalog Playlist](#create-artist-catalog-playlist) - [Search Library Playlists for a Given Track](#search-library-playlists-for-a-given-track) - [๐Ÿ”จ Development](#-development) - [Tech Stack](#tech-stack) - [โ˜‘๏ธ TODOs](#%EF%B8%8F-todos) - [โœจ Future Features](#-future-features) - [Changelog](#changelog) - [Help & Questions](#help--questions) - [Contributing](#contributing) - [๐Ÿ‘ค Author](#-author) - [๐Ÿค Credits](#-credits) - [๐Ÿ’› Support](#-support) - [โš–๏ธ Disclaimer](#%EF%B8%8F-disclaimer) - [๐Ÿ“ƒ License](#-license)

โ›“ Features

๐Ÿš€ Getting Started

Requirements

Installation

Download or Clone the Project

or

Now cd into the project directory.


Install Dependencies via Composer

Skip when create-project was used.


Config

.env

Set your timezone in APP_TIMEZONE - List of Supported Timezones.


Connecting to Spotify's Web API

multitool-for-spotify-php needs to connect to Spotify's Web API in order to function.

  1. Log in to the Spotify Developer Dashboard.
  2. Click Create app.
    • Choose name, description, website
    • Redirect URI: http://localhost:10276/mtfsp-auth-callback
    • Check Web API
  3. Click Save
  4. Click Settings
  5. Copy Client ID to .env SPOTIFY_API_CLIENT_ID
  6. Copy Client Secret to .env SPOTIFY_API_CLIENT_SECRET

It should look like this (but with your own values):

`

  1. Open your terminal.
  2. Run: php bin/console mtfsp:auth
  3. Follow the displayed instructions.

Now you are ready to use multitool-for-spotify-php ๐ŸŽ‰


Usage

Playlist Archiving

Each playlist has a snapshot ID that is written to the description of the archived playlist to check whether the playlist has already been archived.

A new archive playlist is only created if the content (so the snapshot ID) has been changed.

Example of the name of an generated archive playlist: SFY-2024-06-Top 50 Global (PREFIX-YYYY-WW-SUFFIX or PLAYLIST_NAME)

You can choose between single playlist IDs or a path to a CSV file as an argument:

Argument playlist ID:

Single or comma-separated spotify playlist ID(s).

Argument CSV file path:

CSV header Description Required
Playlist_Name_Prefix Custom abbreviation e.g. SFY for spotify playlists. Uses ARCHIVE when not set. No
Playlist_Name_Suffix Custom playlist name. Uses the playlist name when not set. No
Playlist_Sort_Order desc => recent added tracks at top, asc => oldest added tracks at top. Uses playlist default oder when not set. No
Playlist_Id The ID of the spotify playlist. Yes
Tags For personal use. No

The CSV must be separated by semicolons. Example: playlists-to-archive.dist.csv

Option for mailing:

If you set the mail env vars in your .env file, you can use --mail to receive notifications when the archiving process is complete.

This is particularly useful when using a CronJob.


List Archived Playlists


Delete Archived Playlists

Currently all archived playlists will be deleted. But multiple "are you sure" checks will protect you from hasty mistakes ;-)


Create Artist Catalog Playlist

If you specify a playlist ID, the catalog will be added to this playlist, otherwise a new playlist will be created.


Search Library Playlists for a Given Track

Set --withArchived if you want to include archived playlists in the search.

๐Ÿ”จ Development

Tech Stack

The project is built using the Symfony Console component.

โ˜‘๏ธ TODOs

โœจ Future Features

Changelog

Please see CHANGELOG.md for more information on what has changed recently.

Help & Questions

Start a new discussion in the Discussions Tab.

Contributing

... is welcome.

Just fork the repository and create a pull request.

For major changes, please first start a discussion in the Discussions Tab to discuss what you would like to change.

IMPORTANT: By submitting a patch, you agree to allow the project owner(s) to license your work under the terms of the MIT License.

Thank you!

๐Ÿ‘ค Author

multitool-for-spotify-php is primarily written and maintained by:

๐Ÿฆœ Steven Foncken

๐Ÿค Credits

Like most software, multitool-for-spotify-php is build upon third-party code/libraries which was/were written by others.

I would therefore like to thank the people below for open-sourcing their work:

Project: jwilsson/spotify-web-api-php

Author: @jwilsson (Jonathan Wilsson)

Copyright (c) Jonathan Wilsson

License: MIT

Project: symfony/console

Author: @fabpot (Fabien Potencier)

Copyright (c) 2004-present Fabien Potencier

License: MIT

... and more, see composer.json.

๐Ÿ’› Support

If this project was helpful for you or your organization, please consider supporting my work directly:

Everything helps, thanks! ๐Ÿ™

โš–๏ธ Disclaimer

"Spotify" is a registered trademark of "Spotify AB" and/or its (worldwide) subsidiaries.

This project or its author is in no way officially connected to, affiliated with, associated with, authorized by, built by, endorsed by, licensed by, maintained by, promoted by, or sponsored by "Spotify AB" or any of its affiliates, licensors, (worldwide) subsidiaries, or other entities under its control.

All trademarks are the property of their respective owners.

This is an independent project that utilizes "Spotify"s Web API to perform various tasks in the personal account.

Before taking legal action, please contact this address: dev[at]stevenfoncken[dot]de

Use at your own risk.

๐Ÿ“ƒ License

multitool-for-spotify-php is licensed under the MIT License.

See LICENSE for details.

Copyright (c) 2020-present Steven Foncken \<dev[at]stevenfoncken[dot]de>

^ back to top ^


All versions of multitool-for-spotify-php with dependencies

PHP Build Version
Package Version
Requires php Version >=8.2
ext-curl Version *
ext-fileinfo Version *
ext-zlib Version *
ext-gd Version *
intervention/image Version ^3.2
jwilsson/spotify-web-api-php Version ^6.0
monolog/monolog Version ^3.5
parsecsv/php-parsecsv Version ^1.3
symfony/console Version ^7.0
symfony/lock Version ^7.0
symfony/mailer Version ^7.0
symfony/validator Version ^7.0
vlucas/phpdotenv Version ^5.6
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package stevenfoncken/multitool-for-spotify-php contains the following files

Loading the files please wait ....