Home

Awesome

<div align="center"> <img src="public/logo.svg" width="128"> <h1>Kainet Music</h1> <div> <a href="https://travis-ci.com/TheDavidDelta/kainet-music"> <img src="https://travis-ci.com/TheDavidDelta/kainet-music.svg?branch=main" alt="Travis Build"> </a> <a href="https://kainet.rocks/"> <img src="https://img.shields.io/github/deployments/TheDavidDelta/kainet-music/Production?label=vercel&logo=vercel&color=f5f5f5" alt="Vercel Status"> </a> <a href="https://dashboard.cypress.io/projects/jyio47/runs"> <img alt="Cypress Tests" src="https://img.shields.io/endpoint?url=https://dashboard.cypress.io/badge/simple/jyio47&style=flat&logo=cypress"> </a> <a href="./LICENSE"> <img src="https://img.shields.io/github/license/TheDavidDelta/kainet-music" alt="License"> </a> </div> <br /> Free and Open Source music streaming service <hr /> </div>

How does it work?

Inspired by projects like NewPipe, Nitter, Invidious, Bibliogram or my own Lingva, Kainet scrapes through YouTube Music and retrieves its information without using any Google-related service, preventing them from tracking.

For this purpose, Kainet uses mainly these two libraries:

In addition, the project uses the following Open Source resources:

Installation

You can optionally install Kainet as a Progressive Web App on your computer or mobile phone. This way, it'll be wrapped by your browser and be shown as another installed application.

When opening the application in a browser that supports PWAs, an install button should be shown in the top bar.

Custom playlists

Currently, Kainet still doesn't support user creation, so you can't create custom music playlists inside the platform.

Despite that, you're able to access any playlist from YouTube or YouTube Music. That way, if you don't mind that much going through Google, you can create your custom playlists on YouTube and use them on Kainet.

In order to find the playlist with ease, the best way is using its ID, which can be found in the YouTube URL:

https://youtube.com/playlist?list=PLjp0AEEJ0-fGi7bkjrGhBLUF9NMraL9cL

Once you have it, simply search it in the playlists section. In case it's not found, you can directly use the Kainet's playlists URL by adding VL to the ID:

https://kainet.rocks/playlist/VLPLjp0AEEJ0-fGi7bkjrGhBLUF9NMraL9cL

Deployment

As Kainet is a NextJS project you can deploy your own instance anywhere Next is supported.

The only requerement is to set an environment variable called NEXT_PUBLIC_SITE_DOMAIN with the domain you're deploying the instance under. This is used for the canonical URL and the meta tags.

The easiest way is to use their creators' own platform, Vercel, where you can deploy it for free with the following button.

Deploy with Vercel

Instances

These are the currently known Kainet instances. Feel free to make a Pull Request including yours (please remember to add [skip ci] to the last commit).

DomainHostingSSL Provider
kainet.rocks (Official)VercelLet's Encrypt
kainet.alefvanoon.xyzVercelLet's Encrypt

Contributors

Thanks goes to these wonderful people (emoji key):

<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section --> <!-- prettier-ignore-start --> <!-- markdownlint-disable --> <table> <tr> <td align="center"><a href="https://thedaviddelta.com/"><img src="https://avatars.githubusercontent.com/u/6679900?v=4?s=100" width="100px;" alt=""/><br /><sub><b>David</b></sub></a><br /><a href="#a11y-TheDavidDelta" title="Accessibility">️️️️♿️</a> <a href="https://github.com/TheDavidDelta/kainet-music/commits?author=TheDavidDelta" title="Code">💻</a> <a href="https://github.com/TheDavidDelta/kainet-music/commits?author=TheDavidDelta" title="Documentation">📖</a> <a href="#design-TheDavidDelta" title="Design">🎨</a> <a href="https://github.com/TheDavidDelta/kainet-music/commits?author=TheDavidDelta" title="Tests">⚠️</a></td> </tr> </table> <!-- markdownlint-restore --> <!-- prettier-ignore-end --> <!-- ALL-CONTRIBUTORS-LIST:END -->

This project follows the all-contributors specification. Contributions of any kind welcome!

License

Copyright © 2021 TheDavidDelta & contributors.
This project is GNU AGPLv3 licensed.