Free & Open Source • Terminal & GUI • v0.7

ShellBeats

Listen to YouTube music your way. From the terminal or with a graphical interface. No distractions, no browser, no nonsense.

100% Free & Open Source
Simple to use
🎵
Stream & Download
📋
Create Playlists
📱
MP3 Player Ready
Surikata
Sync on All Devices
Community on Surikata.app
Explore the two editions ↓

Two Editions, One Music Player

Choose the version that fits your workflow.

ShellBeats Terminal

Linux • macOS • Written in C

  • ▶ ncurses-based terminal interface
  • ▶ Keyboard-driven, no mouse needed
  • ▶ 126KB binary, minimal dependencies
  • ▶ Shuffle & Repeat modes
  • ▶ SuriSync cloud sync
  • ▶ YouTube playlist import
  • ▶ MP3 download & batch queue
  • ▶ Open source (GitHub)
Download on GitHub

ShellBeatsNG GUI

Windows • macOS • Graphical Interface • C++ / Dear ImGui

  • ▶ Graphical window with tabs and buttons
  • ▶ Point and click, keyboard shortcuts too
  • ▶ Auto-downloads mpv, yt-dlp, ffmpeg
  • ▶ Shuffle & Repeat modes
  • ▶ SuriSync cloud sync
  • ▶ YouTube playlist import
  • ▶ MP3 download & batch queue
  • ▶ Single .exe, no installer needed
Download on Surikata

Why ShellBeats?

Born from the need to listen to music quickly, without distractions, even offline.

Simple to Use

No complex configurations. Just install it and start listening. Terminal or GUI, you are up and running in seconds.

Stream from YouTube

Search and play any song from YouTube instantly. No browser needed, no ads, no distractions. Just you and your music.

Download Your Music and Playlists

Save your favorite tracks for offline listening. Download singles or entire YouTube playlists with a single command or click.

Create Playlists

Organize your music into playlists. Export them as MP3 files ready to sync with your portable MP3 player.

MP3 Player Ready

All downloads are optimized and tagged. Just drag and drop to your MP3 player and enjoy your music anywhere.

Lightweight & Fast

Written in C and C++ with minimal dependencies. Uses almost no resources while delivering maximum performance.

ShellBeats Terminal

A beautiful ncurses-based TUI designed for keyboard-driven workflows. Linux & macOS.

shellbeats ~ main
Main Interface
shellbeats ~ search
YouTube Search
shellbeats ~ playlist
Playlist Manager
shellbeats ~ download
Download Queue

ShellBeatsNG GUI

A graphical interface with the same features, designed for Windows and Mac. Point and click, or use keyboard shortcuts.

ShellBeatsNG ~ Windows & Mac GUI
ShellBeatsNG graphical interface on Windows and Mac
Graphical Interface (Windows & Mac)

SurikataSuriSync

Sync your playlists across all your computers and share them with the community. Works with both Terminal and GUI editions.

Sync Everywhere

Push your playlists to the cloud and pull them on any other computer running ShellBeats or ShellBeatsNG. Desktop, laptop, server — they all stay in sync.

Share with the Community

Your playlists can be discovered by other users on surikata.app. Import playlists shared by others directly into your player.

Privacy First

Built on Surikata — a community designed around maximum creative freedom and privacy, free from big corp influence and marketing.

Features

Everything you need for a complete music experience. Available in both editions.

🔍

YouTube Search

Search millions of tracks directly from your terminal or GUI

▶️

Stream Playback & Playlists

Instant streaming of tracks or entire YouTube playlists

⬇️

MP3 Downloads

Save tracks in high-quality MP3 format

📁

Playlist Management

Create, edit, and organize your playlists

📥

Batch Downloads

Download entire playlists with one command or click

⏩️

Queue Download System

Build your download queue on the fly

⌨️

Keyboard Shortcuts

Full keyboard control in both Terminal and GUI

🔀

Shuffle & Repeat

Shuffle mode, repeat all, repeat one — your music, your rules

🔄

SuriSync

Sync playlists across all your computers via surikata.app

🌎

Community Playlists

Share your playlists and import others from the Surikata community

Seek & Jump

Seek forward/backward or jump to any position with configurable step

💻

Cross-Platform

Terminal edition for Linux/macOS, GUI edition for Windows/macOS

The Story

/*
 * ShellBeats
 * A music player for people who love music
 *
 * Christmas 2025
 */

#include <passion.h>
#include <family.h>
#include <cigars.h>
#include <chess.h>

int main() {
    while (on_vacation) {
        play_chess(kids);
        smoke_cigar();
        write_code();
    }
    return SHELLBEATS;
}

Christmas Vacation Project

ShellBeats was born during the Christmas holidays of 2025. I wanted to return to writing C code after a long time — there's something special about the simplicity and power of this language.

I was on vacation with my family, and between a cigar and a chess game with my kids, I started writing what would become ShellBeats. The goal was simple: listen to music quickly, without distractions, without opening a browser, without ads interrupting the flow.

What started as a small experiment grew into a full-featured music player. The terminal version came first, then ShellBeatsNG brought the same experience to Windows and Mac with a graphical interface. Same playlists, same sync, different look.

— Made with love and lots of coffee

Get in Touch

Found a bug? Have a feature request? Just want to say hi?

compose_message.sh
🔒 security_check
Loading challenge...