Skip to content

leanghok120/podden

Repository files navigation

podden

demo

A minimal TUI MP3 player written in Go with Bubble Tea and beep.

Inspired by the iPod Classic (5th Gen).

✨ Features

  • Songs view: Browse and play songs from your music folder.
  • Albums view: Browse albums.
  • Artists view: Browse artists.
  • Playing view: Show currently playing song details.
  • Playback Controls: Pause, next, previous, fast forward, rewind.
  • Lyrics: Synchronized song lyrics.
  • Configuration: Customize podden to look how you want it to.

📦 Installation

Make sure you have Go installed (version 1.21+ recommended).
Then run:

go install github.com/leanghok120/podden@latest

🚀 Usage

After installing, simply run:

podden

If you want to use your own music driectory:

podden -m path

Notes

  • Podden is still in very early stages.
  • By default, it looks for music in the ~/Music directory. (Use -m to change to your own music directory)
  • Plays only .mp3, .flac, .m4a files.

🗒️ Todos

  • play songs with beep
  • pause, next, prev songs
  • play the next song after finished
  • add albums page
  • add artists page
  • show elapsed time / total time
  • add lyrics
  • fast forward/rewind songs
  • allow user to choose their own music folder
  • add config
  • add a help menu
  • highlight lyrics
  • system notifications
  • volume control
  • add cover image

🤝 Contributing

Contributions are welcome as long as they align with what the project's needs! If you’d like to help improve podden, you can:

  1. Fork the repository
  2. Commit your changes
  3. Open a Pull Request

🙏 Acknowledgements

  • Charmbracelet for the TUI libraries
  • gopxl for the beep audio library
  • 0xAX for the desktop notification library
  • lrclib for the synchronized lyrics
  • The iPod Classic (5th Gen) — for inspiring the look & feel