Skip to content

n-ce/ytify

Repository files navigation

Netlify Status Telegram Members Matrix

ytify is the fastest (50KB to load) and the lightest (7K LOC only) audio streaming web application built with a unprecedented hybrid [Vanilla Typescript + SolidJS] approach for maximum efficiency. Listen to Podcasts, Audiobooks, Music, Livestreams and other Audio focused YouTube Videos, even under the lowest network conditions.

As covered in https://blog.csdn.net/gitblog_00024/article/details/139895018 and https://medevel.com/ytify-youtube/

What else are you getting ?

  • Queue 🚦:
    • Add multiple streams to keep your audio streams going.
    • You can share your queue with anyone just by sharing the url.
    • Auto-Queue : automatically enqueues relevant streams.
  • Playlists 🎶:
    • View YouTube playlists , queue them to the player. You can also both subscribe and import it into your own collection
    • ytify Collections : create your own playlists disconnected from YouTube, share it with the world with share link.
  • Theming 🎨:
    • Modern Autonomous themed UI based on stream thumbnail.
    • High Contrast Mode for increased legibility.
  • PWA 📱: Install as an app on your device which also allows you to play YouTube links with it from your OS share menu.
  • Radio 📻: Fetches similar streams and creates a playlist for your stream, great for music listeners.
  • Library 📚: Discover feed, history, favorites, Channels, YouTube playlists, custom playlists (collections) & Subscription Feed!
  • Download ⬇️ : Download any audio stream using the button on the action menu.
  • Lyrics 🎼 : Immersive Synced Lyrics using the button on the action menu.
  • For You 🎻 : Get audio tailored specifically for you based on your Favorites, generated on device without any violation of privacy.
  • Parental Controls 👨‍👦 : Disable Parts of the application according to your needs.

1000012574 1000012580 1000012579

WHY / The story of ytify with n-ce

  • I was an avid NewPipe user back in 2021, which I used for background playback.
  • I noticed it wasn't able to stream under low network conditions.
  • So i decided to create an issue.
  • Upon finding no active resolution on the issue, I took it to myself and created this project on Jan 2022.

Usage 👆

License 📝

Read More.

Contributing 📋

This project is actively seeking contributors, Read More Here.

Development 🔧

  1. Prerequisites : Node.js , Beginner TypeScript Knowledge.
  2. Clone repository with
git clone https://github.com/n-ce/ytify --depth 1

or

 gh repo clone n-ce/ytify -- --depth 1
  1. Move to Directory, Update & Install Dependencies
cd ytify ; npm run update; npm i
  1. If you prefer using DevTools, you may disable eruda in vite.config.ts injectEruda(false),

  2. Start the development server and open localhost

npm run dev -- --open
  1. Learn More at our wiki.

Acknowledgements 🙏

  • Uma - Instances Manager
  • Piped - YouTube Data API & Adaptive Streaming Proxy
  • Invidious - YouTube Data API & Progressive Streaming Proxy
  • Hyperpipe - YT Music Artist Data API
  • Cobalt - YouTube Download API
  • LRCLIB - Synced Lyrics Provider
  • wsrv - Image Proxy Provider
  • Solid - Delightful JSX Library
  • HLS.js - HLS Support Library
  • Netlify - Hosting, PR Previews, User Feedback Forms, Edge Functions
  • Vite - Development Server, Code Bundling, Project Scaffolding.
  • Autoprefixer - CSS Prefixes Solution.
  • Remix Icons - Efficient Icon Solution.
  • Google Fonts - NotoSans Font.