Mufetch
neofetch-style music cli
Install / Use
/learn @ashish0kumar/MufetchREADME
Features
- Beautiful terminal display with album cover art and artist photos
- Comprehensive metadata including tracks, albums, and artist information
- Interactive clickable links for Spotify URLs and cover art
- Responsive sizing via customizable image dimensions
- Cross-platform support, works in all modern terminals
Supported Content Types
| Type | Metadata Displayed | |------|-------------------| | Tracks | Name, Artist, Album, Duration, Track Number, Explicit, Release Date, Popularity, Genres | | Albums | Name, Artist, Type, Release Date, Track Count, Duration, Popularity, Genres, Label, Top Tracks | | Artists | Name, Followers, Popularity, Genres, Albums & Singles Count, Top Tracks |
Installation
AUR
yay -S mufetch
Homebrew
brew install mufetch
Nix
nix run nixpkgs#mufetch
Via go install
go install github.com/ashish0kumar/mufetch@latest
Build from Source
git clone https://github.com/ashish0kumar/mufetch.git
cd mufetch/
go build
sudo mv mufetch /usr/local/bin/
mufetch --help
Enhanced Image Quality
For the best image rendering quality, install chafa:
# Ubuntu/Debian
sudo apt install chafa
# macOS
brew install chafa
# Arch Linux
sudo pacman -S chafa
# Fedora/RHEL
sudo dnf install chafa
# Nix
nix-env -iA nixpkgs.chafa
[!NOTE]
mufetchworks without chafa using colorized Unicode blocks, butchafaprovides significantly better image quality with enhanced detail.
Setup
1. Get Spotify API Credentials
- Go to Spotify Developer Dashboard
- Log in with your Spotify account
- Click "Create an App"
- Fill in app name and description
- Copy your Client ID and Client Secret
2. Configure mufetch
Run the authentication setup
mufetch auth
Enter your Spotify Client ID: your_client_id_here
Enter your Spotify Client Secret: your_client_secret_here
Usage
Basic Commands
Auto-detect and search for music
mufetch search "Bohemian Rhapsody"
mufetch search "Smells Like Teen Spirit"
mufetch search "Let It Happen"
Search specific content types
mufetch search "Hotel California" --type track
mufetch search "Pink Floyd" --type artist
mufetch search "Ok Computer" --type album
Customize image size (20-50)
mufetch search "All I Need" --size 25
mufetch search "Holland, 1945" -s 40
Search Types
track- Search for specific songsalbum- Search for albums or EPsartist- Search for musicians and bands
Image Sizing
- Default:
20x20pixels - Range:
20-50pixels
Configuration
mufetch stores configuration in ~/.config/mufetch/config.yaml:
spotify_client_id: "your_client_id"
spotify_client_secret: "your_client_secret"
Environment Variables
You can also set credentials via environment variables:
export MUFETCH_SPOTIFY_CLIENT_ID="your_client_id"
export MUFETCH_SPOTIFY_CLIENT_SECRET="your_client_secret"
Contributing
Contributions are always welcome! Whether you want to:
- Report bugs or issues
- Suggest new features
- Improve the visual design
- Enhance documentation
- Submit code improvements
Please feel free to open an issue or submit a pull request.
Dependencies
- Cobra - CLI framework and command structure
- Viper - Configuration management
- Imaging - Image processing and resizing
Acknowledgments
- Inspired by neofetch for system information display
- Thanks to Spotify Web API for music metadata
- Unicode block art technique inspired by various terminal image viewers
