šŸš€ Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more →
Socket
DemoInstallSign in
Socket

motify

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

motify

Motify is a python script that takes a playlist or a track or an album link directly from spotify and download the songs related to that link with the best quality alongs side embedding the songs data to enjoy the experiment with it's full potential

1.0.0
PyPI
Maintainers
1
Motify Cover

Motify

A powerful and modern music downloader and manager application built with Python.

Release License

Python PyPI PyPI Downloads

Build Status Code Coverage

Stars Issues Pull Requests

Discord Twitter Follow

✨ Features

  • šŸŽÆ Search and download music from multiple sources
  • šŸŽØ Modern and customizable UI with multiple themes
  • šŸ“‘ Smart playlist management and queue system
  • šŸŽµ High-quality audio downloads with format selection
  • šŸ“Š Download history and statistics tracking
  • šŸŽ¤ Integrated lyrics support
  • šŸ”„ Concurrent download capabilities
  • šŸ“± Desktop notifications
  • ⚔ YouTube integration
  • šŸŽÆ Duplicate detection and skip functionality

šŸš€ Installation

Prerequisites

  • Python 3.10 or higher
  • pip (Python package manager)
  • Spotify Developer Account for API access
  • Git (for cloning the repository)

Setup Methods

Method 1: Direct Download

  • Download the latest release from the Releases page
  • Extract the downloaded zip file
  • Navigate to the extracted directory

Method 2: Clone Repository

  • Clone the repository:
git clone https://github.com/mosh3eb/motify.git
cd motify

Installation Steps

  • Create and activate a virtual environment (recommended):
# On macOS/Linux
python3 -m venv venv
source venv/bin/activate

# On Windows
python -m venv venv
.\venv\Scripts\activate
  • Install dependencies:
pip install -r requirements.txt
  • Set up your Spotify credentials:

    • Go to Spotify Developer Dashboard
    • Create a new application
    • Copy your Client ID and Client Secret
    • Add http://localhost:8888/callback as a Redirect URI in your Spotify app settings
  • Create a copy of the example configuration:

cp app_config.example.json app_config.json
  • Configure your Spotify API credentials in app_config.json

Running the Application

  • Activate the virtual environment (if not already activated):
# On macOS/Linux
source venv/bin/activate

# On Windows
.\venv\Scripts\activate
  • Launch the application:
python run.py

šŸ“± Usage

Main Features

  • Search Tab: Search for tracks, albums, or artists
  • Queue Tab: Manage your download queue
  • History Tab: View download history and statistics
  • Lyrics Tab: View synchronized lyrics
  • YouTube Tab: Search and download from YouTube
  • Settings Tab: Customize application settings

Keyboard Shortcuts

  • Ctrl/Cmd + F: Focus search
  • Ctrl/Cmd + Q: Clear queue
  • Space: Play/Pause current track preview
  • Esc: Clear search

šŸ—ļø Project Structure

src/
ā”œā”€ā”€ services/         # Core services (downloader, Spotify)
ā”œā”€ā”€ ui/              # User interface components
└── utils/           # Utility functions and configurations

šŸ›Ÿ Support

If you encounter any issues or have suggestions:

  • Check the existing issues on GitHub
  • Open a new issue with a detailed description
  • Include your system information and logs

šŸ¤ Contributing

  • Fork the repository
  • Create your feature branch (git checkout -b feature/AmazingFeature)
  • Commit your changes (git commit -m 'Add some AmazingFeature')
  • Push to the branch (git push origin feature/AmazingFeature)
  • Open a Pull Request

šŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.

šŸ™ Acknowledgments

  • Spotify API for music data
  • Python community for amazing libraries
  • Contributors and users of Motify

šŸ”§ Deployment

Local Deployment

  • Follow the installation steps above
  • Configure your settings in app_config.json
  • Run the application using python run.py

System-wide Installation (Optional)

On macOS

  • Create an application bundle:
pip install py2app
python setup.py py2app
  • Move the created .app file to your Applications folder

On Windows

  • Create an executable:
pip install pyinstaller
pyinstaller --onefile --windowed --icon=resources/icon.ico run.py
  • The executable will be created in the dist directory

On Linux

  • Create a desktop entry:
sudo cp resources/motify.desktop /usr/share/applications/
sudo cp resources/icon.png /usr/share/icons/hicolor/256x256/apps/motify.png

Docker Deployment (Optional)

  • Build the Docker image:
docker build -t motify .
  • Run the container:
docker run -d \
  -v ${PWD}/downloads:/app/downloads \
  -v ${PWD}/app_config.json:/app/app_config.json \
  -e DISPLAY=${DISPLAY} \
  -v /tmp/.X11-unix:/tmp/.X11-unix \
  motify

Made with ā¤ļø by Mosh3eb

Keywords

music

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts