Skip to content

About

A sleek, lightweight desktop audio player built with C# and Avalonia UI. Stream music seamlessly from YouTube Music with a modern Spotify-inspired dark │ interface, playlist management, and native LibVLC audio.

Topics

Resources

Stars

5 stars

Watchers

0 watching

Forks

Repository files navigation

AuraStream

A modern, lightweight desktop audio player and streaming suite built with .NET 10 & Avalonia UI.

Release .NET Avalonia UI Platform License

Stream music seamlessly from YouTube Music with a modern Spotify-inspired dark emerald interface, dynamic playlist management, and native LibVLC audio.


AuraStream Preview


Features

  • High-Fidelity Audio Streaming: Powered by native LibVLC and YoutubeExplode for low-latency, gapless playback.
  • Modern Dark Emerald Interface: Crafted with Avalonia UI, scalable vector icons, fluent design, and responsive layouts.
  • Playback Priority Queue: Right-click any track with "Play Next" and "Add to Queue" options that prioritize queued tracks before resuming ambient playlists.
  • Slide-Out Queue Drawer: Collapsible real-time side drawer displaying Now Playing, Next in Queue (with individual remove and clear controls), and Next Up from Source.
  • Fisher-Yates Smart Shuffle: True non-repeating randomized track ordering with active track preservation.
  • 3-State Repeat Cycle: Dynamic cycling between Repeat Off, Repeat All (full playlist loop), and Repeat One (single track loop).
  • 1-Click Volume Mute & Memory: Clickable speaker icon with instant volume mute, cached sound memory, and auto-restore.
  • Instant Search & Discovery: Search songs, artists, and albums in real time with interactive top results and audio metadata analysis.
  • Playlist & Library Management: Create, organize, and manage custom playlists and Liked Songs with full right-click context menu control.
  • Smart Stream Caching: In-memory caching and predictive preloading of adjacent tracks for instant, interruption-free track switching.
  • Google Account Integration: Seamless 1-click browser sign-in syncing account name and avatar picture securely.
  • Responsive Player Controls: Microsecond-accurate seek slider, persistent volume controls, and deterministic play/pause state synchronization.

Tech Stack

Component Technology Description
Runtime .NET 10 High-performance C# runtime
GUI Framework Avalonia UI Cross-platform XAML GUI
Audio Engine LibVLCSharp Native LibVLC C binding for robust audio decoding
Stream Extraction YoutubeExplode YouTube stream resolution and metadata extraction
Image Loading AsyncImageLoader.Avalonia High-performance async thumbnail rendering

Installation & Getting Started

Option 1: Pre-built Binary (Recommended)

You do not need .NET installed to run AuraStream. Download the latest self-contained standalone build from GitHub Releases:

  1. System Prerequisite (LibVLC):

    • Arch / CachyOS / Manjaro: sudo pacman -S vlc
    • Ubuntu / Debian: sudo apt install vlc libvlc-dev
    • Fedora: sudo dnf install vlc vlc-devel
  2. Download & Run:

    # Extract the downloaded archive
    tar -xzf AuraStream-v1.2.0-linux-x64.tar.gz
    cd AuraStream-v1.2.0-linux-x64
    
    # Launch AuraStream
    ./AuraStream

Option 2: Build from Source

If you prefer compiling directly from source:

  1. Prerequisites:

  2. Clone & Run:

    git clone https://github.com/cyberps96/AuraStream.git
    cd AuraStream
    dotnet build
    dotnet run

Project Structure

AuraStream/
├── Models/
│   ├── PlaylistModel.cs         # Playlist data contracts
│   └── TrackItem.cs             # Track metadata & playback state
├── Services/
│   ├── AudioEngine.cs           # LibVLC audio playback & event engine
│   ├── AuthManager.cs           # Google profile & session management
│   ├── BrowserAuthService.cs    # Chromium CDP 1-click Google auth
│   ├── PlaybackCoordinator.cs   # Priority queue, shuffle, & 3-state repeat engine
│   ├── PlaylistManager.cs       # Persistent local playlist storage
│   ├── StorageService.cs        # Config directory & legacy migration service
│   └── StreamCacheService.cs    # YouTube audio stream resolver & cache
├── Views/
│   ├── CreatePlaylistDialog.*   # Playlist creation dialog
│   └── LoginWindow.*            # Google sign-in modal window
├── assets/
│   ├── icon.png                 # Official AuraStream high-res icon
│   └── preview.png              # UI preview screenshot
├── App.axaml                    # Application styling & FluentTheme
├── CHANGELOG.md                 # Release history & roadmap tracking
├── MainWindow.axaml             # Main desktop player view
├── Program.cs                   # Application entry point
└── sopfiy.csproj                # Project dependencies & build config

Contributing

Contributions, issues, and feature requests are welcome! Feel free to check the issues page if you want to contribute.


License

This project is licensed under the MIT License - see the LICENSE file for details.

About

A sleek, lightweight desktop audio player built with C# and Avalonia UI. Stream music seamlessly from YouTube Music with a modern Spotify-inspired dark │ interface, playlist management, and native LibVLC audio.

Topics

Resources

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages