Skip to main content

TUI music player

Project description

Lysn — CLI Music Player

Lysn is a lightweight, terminal-based music player with built-in downloading support.
It’s designed for speed, simplicity, and full keyboard control.

✨ Features

  • ▶️ Play local audio files from /Music
  • ⬇️ Download music from SoundCloud (users, playlists, albums, songs)
  • ⌨️ Fast, keyboard-driven interface
  • 📀 Album-based playback
  • 🔀 Shuffle support
  • 🚧 Upcoming: Spotify integration

📦 Installation

pip install lysn

🚀 Usage

Run the application:

lysn

🎮 Controls

Navigation

Key Action
↑ / ↓ Move selection
Enter Open / Confirm
Backspace Go back

Playback

Key Action
Space Pause / Resume
S Stop
R Restart song
N Next song
B Previous song

Seeking

Key Action
D Forward 10 seconds
A Backward 10 seconds

Volume

Key Action
W Volume up
X Volume down
M Mute toggle

Album Actions

Key Action
P Play album
Z Shuffle album

Quit

Key Action
Ctrl+Q Exit application

📁 Music Directory

Place all your music inside the /Music directory. Albums are detected as subfolders inside /Music. Supported formats depend on your system’s audio backend.

🧭 Interface Overview

📀 Album Tab

  • Reads your /Music directory.
  • Subfolders are treated as albums.
  • Enter an album to view tracks.
  • Press:
    • P → Play album
    • Z → Shuffle album
  • Press Backspace to return.

🌐 Browse Tab (Downloads)

Currently supports SoundCloud only.

Available options:

  • Likes
  • Playlists / Albums
  • Single Song

Enter only the exact names from the URL. You can paste in with CTRL+V

Examples:

Likes:

url: https://soundcloud.com/mjimmortal/likes

username: mjimmortal

Playlist / Album:

url: https://soundcloud.com/mjimmortal/sets/thriller-40

username: mjimmortal
playlist/album: thriller-40

Song download:

url: https://soundcloud.com/mjimmortal/billie-jean-single-version

username: mjimmortal
song: billie-jean-single-version

Download Behavior

  • Downloads go into /Music.
  • The app may appear frozen during download - this is normal.
  • In some cases, progress may not appear in the UI.

❓ Help Tab

  • Displays all keybindings inside the app.

⚙️ CLI Flags

lysn --help
lysn --helpf
lysn --version
lysn --update

📝 Notes

  • All downloaded content is saved to /Music.
  • Make sure names match exactly with SoundCloud URLs.
  • Performance depends on your system and audio backend.

Enjoy your music - right from the terminal.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lysn-0.2.2.tar.gz (10.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lysn-0.2.2-py3-none-any.whl (11.1 kB view details)

Uploaded Python 3

File details

Details for the file lysn-0.2.2.tar.gz.

File metadata

  • Download URL: lysn-0.2.2.tar.gz
  • Upload date:
  • Size: 10.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for lysn-0.2.2.tar.gz
Algorithm Hash digest
SHA256 cc13deb9e136e059cbe4ba524a0242a409a36a65c3c06e02aee52ff723d5a5c7
MD5 935069a42ec4e728678c3a5f2507b132
BLAKE2b-256 0735cd91327d26ce917295bf1b288d309e152bc9c228dc49b8d7ce2dcef9d28b

See more details on using hashes here.

File details

Details for the file lysn-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: lysn-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 11.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for lysn-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b9b8ab310cee3fcff5524bb0a57336182522d742e7050d089071bf3779e57393
MD5 83ec9d6d314c26bd84cba9f768b1dbc4
BLAKE2b-256 e2944d79b6c654b478c51811ec13ca5edb2f2069763c27cbf5541930554dfbb0

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page