Skip to content

dragonpilee/FreeTubeMusic

Repository files navigation

FreeTubeMusic 🎵

Minimalist Unified Music Interface

Status Docker Astro TypeScript

FreeTubeMusic is a privacy-focused, Google-inspired music streaming application. Built for speed and simplicity, it leverages the Invidious API to provide a premium, ad-free experience with a "Pure Black" aesthetic and instant playback.


✨ Features

  • 🔍 Robust Search: Multi-instance fallback system (Invidious) ensures search always works without API keys.
  • 🎨 Premium Aesthetic: Pixel-perfect "Pure Black" theme (#000000) matching the high-end streaming experience.
  • 🌊 Ad-Free Streaming: Listen to your favorite tracks without interruptions or trackers.
  • 📱 PWA Ready: Installable as a native app on mobile with a responsive bottom navigation bar.
  • ⚡ Reactive UI: Smooth transitions and hover effects powered by React and Tailwind CSS.
  • 🔌 Dockerized: Plug & Play deployment with a single command.
  • 🇮🇳 Region-Specific Trends: Automatically loads top hits for India (configurable).

🚀 Quick Start

Prerequisites

  1. Docker Desktop: Ensure Docker is running.
  2. Git: To clone the repository.

Installation & Run

  1. Clone the repository:

    git clone https://github.com/dragonpilee/FreeTube.git
    cd FreeTube
  2. Configure Environment: Create a .env file in the root directory (optional for default settings):

    # Example configuration
    PUBLIC_REGION=IN
  3. Build and launch the container:

    docker compose up -d --build
  4. Open your browser and visit: http://localhost:3000

Docker Commands

# Restart containers
docker compose restart

# Stop containers
docker compose down

# View logs
docker compose logs -f

🛠️ Technology Stack

Component Technology
Frontend Framework Astro
UI Library React 18
Styling Tailwind CSS
State Management Nano Stores (Global Player)
Data Provider Invidious API (No Auth)
Infrastructure Docker

📱 Mobile Access

FreeTubeMusic is designed as a Progressive Web App (PWA).

  1. Find your PC IP: Run ipconfig (Windows) or ifconfig (Mac/Linux).
  2. Connect: Navigate to http://YOUR_PC_IP:3000 on your phone.
  3. Install: Select "Add to Home Screen" from your browser menu for a native experience.

🎨 Design Philosophy

  • Minimalism: Focus entirely on the music with a distraction-free, "Pure Black" interface.
  • Privacy First: No personal API keys required; all searches routed through public Invidious instances.
  • Performance: Server-first rendering with Astro for lightning-fast initial loads.
  • Responsiveness: Fluid layout that adapts seamlessly to desktop, tablet, and mobile.

🎯 How It Works

  1. Search: User enters a query. The app attempts to fetch results from a pool of reliable Invidious instances.
  2. Load: Metadata and thumbnails are retrieved instantly without user-side tracking.
  3. Stream: High-quality audio is played through a persistent, global React player.
  4. Sync: Explore trends and region-specific hits automatically loaded on the home page.

📝 License

This project is open source.


Developed with ❤️ by CineGeek
Minimalist Music Interface • Dockerized Deployment

About

A premium, ad-free Music built for performance and privacy.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors