nightingale

Crates.ionightingale
lib.rsnightingale
version0.1.0
created_at2025-11-07 16:37:47.999546+00
updated_at2025-11-07 16:37:47.999546+00
descriptionA desktop application for searching YouTube videos and downloading them as MP3 files
homepage
repositoryhttps://github.com/ehamiter/nightingale
max_upload_size
id1921829
size6,652,227
Eric Hamiter (ehamiter)

documentation

README

Nightingale 🎵

A desktop application for searching YouTube videos and downloading them as MP3 files.

Screenshot

Installation

From crates.io

cargo install nightingale

Then run with:

nightingale

Building from Source

macOS App Bundle

  1. Clone and build:

    git clone git@github.com:ehamiter/nightingale.git
    cd nightingale
    cargo build --release
    
  2. Create .app bundle:

    ./build_app.sh
    
  3. Run the app:

    open target/release/Nightingale.app
    
  4. Install to Applications (optional):

    cp -r target/release/Nightingale.app /Applications/
    

Linux Desktop Application

  1. Clone and build:

    git clone git@github.com:ehamiter/nightingale.git
    cd nightingale
    cargo build --release
    
  2. Install as desktop app:

    ./build_linux.sh
    
  3. Run the app:

    • Search for "Nightingale" in your application launcher (GNOME, KDE, etc.)
    • Or run: nightingale from terminal

The app will be installed to:

  • Binary: ~/.local/bin/nightingale
  • Desktop file: ~/.local/share/applications/nightingale.desktop
  • Icon: ~/.local/share/icons/hicolor/512x512/apps/nightingale.png

Note: Ensure ~/.local/bin is in your PATH. Add to ~/.bashrc or ~/.zshrc:

export PATH="$HOME/.local/bin:$PATH"

Adding a Custom Icon

  1. Create or find a square PNG image (1024x1024 or 512x512 recommended)

  2. Run the icon builder:

    ./build_icon.sh path/to/your/icon.png
    
  3. Rebuild the app:

    # macOS
    ./build_app.sh
    
    # Linux
    ./build_linux.sh
    

Usage

First Run

  1. Launch Nightingale
  2. Click the ⚙️ button to open Settings
  3. Set your preferred download directory
  4. If yt-dlp is not installed, click "Install yt-dlp"

Searching and Downloading

  1. Enter a search query (e.g., "artist - song name")
  2. Results are automatically ranked by relevance (official audio versions prioritized)
  3. Click "Download MP3" on any result - you'll be prompted to customize the filename
  4. Downloads save to your configured directory
  5. View logs for troubleshooting if downloads fail
Commit count: 0

cargo fmt