Giter Club home page Giter Club logo

kutr's Introduction

kutr

Showcase

Intro

This repository contains a fork of Koel called Kutr (pronounced: Cuter). This will add many experimental features such as:

  • Storing all the available tags whenever possible like genre and being able to browse via them (thanks to @alex-phillips) [DONE]
  • The capability to browse your music collection by folders too [DONE]
  • A smarter tag extraction for invalid files [DONE]
  • A GUI that does not errors out (for example while importing songs with a progress bar, or drag and dropping songs, or selecting songs when column ordering is on) [DONE]
  • The ability to install Koel under a CMS (using your CMS' authentication) [DONE]
  • The ability to logout directly from your CMS [DONE]
  • Per folder "virtual album" (that is, if you save a '.virtual-album' file in a folder with numerous different songs, including "various" artists, "various" albums), they will appear in an album called the same as the folder, under "Various Artists", and will not clutter the album/artist listing with pletora of songs) [DONE]
  • Per user library with sharing capabilities [ABANDONED]
  • An Android player application [STARTED]

I'm trying to keep the changes to phanan's master branch as a minimum so it'll be possible to merge his modifications easily. However, I don't promise I'm not breaking things, but since I'm eating my own dog food, I should be well aware of bug I've induced. Also, I'm submitting my changes to phanan's repository, but he might decides not to merge them. In that case, they'll stay here for you to use if you need them.

Install and Upgrade Guide

For system requirements, installation/upgrade guides, troubleshooting etc., head over to the Official Documentation. All the steps here apply to this fork. As a side note, you need node 6.x or later (don't use LTS version, it does not work).

If you are upgrading, see Releases for guides corresponding to your version.

New feature documentation

The .env.example contains the new keys required to use the new features. If you already have a .env file on your koel installation, just diff them and add the missing keys.

Typically, if you intend to integrate kutr in your CMS/web application, you'll have to follow the steps described in cms_login.php.example to glue the required calls in kutr. This file has to be modified to fit your CMS and stored in your CMS/web application (it must be in the same subdomain as your application so the CMS's session is accessible). Else, you need to change the line that read const USING_CMS = true; in resources/assets/js/app.vue to const USING_CMS = false;

Also, due to the change required to support genres metadata, it's required to migrate your database schema and re-sync your library: php artisan migrate && php artisan koel:sync --force

kutr does not use cookies to store its sessions, but browser's LocalStorage.

Screenshots

The new features include folder browsing: folder

Live media library sync update: sync

Browsing by genres: genres genre

Updating

Also, since late update from Koel's master branch, you might encounter some difficulties with updating the code with composer install. Make sure you have BROADCAST_DRIVER=null in your .env file

Because I'm rebasing from Koel's master branch, the history for my master branch is changing, and this will likely confuse your git client. Rebase is easier for me than merging (less work), and produce a cleaner and linear history. The drawback is that you'll have to perform git pull --rebase to get the new code from my repository (don't do a git fetch ;-)

kutr's People

Contributors

0xcaff avatar alex-phillips avatar bartlomieju avatar brett-anderson avatar carusogabriel avatar christ0ph3r avatar daniele-athome avatar dogfalo avatar fieteboerner avatar funcoding avatar henriquebremenkanp avatar hultberg avatar icewind1991 avatar joanfont avatar juliusvdijk avatar kerwynrg avatar mattsches avatar mattstauffer avatar melonsmasher avatar nampnq avatar pedroborges avatar peterdavehello avatar phanan avatar piamancini avatar rundef avatar serima avatar tcyrus avatar urbancmc avatar wesleybliss avatar x-ryl669 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kutr's Issues

Tried to install but foreign key errors

I would like to use this, but when I try to install fresh I am getting foreign key errors in the koel:init command, doesn't seem to do that When installing Koel, any advice?

Class 'Genre' not found during install

Hello,

I am trying to install kutr.

I arrived at the stage where you have to execute the command "php artisan koel: init".

I fill the fields in the console with the identifiers of my database, the migration begins to run but blocks with the class "Gender":

App key exists - skipping
JWT secret exists - skipping
Migrating database

In 2016_11_18_150838_add_genre_table.php line 22:
                           
  Class 'Genre' not found

Do you have an idea to solve this problem?
Thank you in advance.

Error when scanning

Hello,

I tru to scan my media directory, but nothing append, in my logs i have:

production.ERROR: Symfony\Component\Debug\Exception\FatalThrowableError: Cannot access protected property App\Models\File::$song in /var/www/vhosts//httpdocs//app/Services/Media.php:178

Redirection

Hello,
on fresh installation mydomain.com redirect me to mydomain.com/loginRedir.php with onst USING_CMS set on "false".

Run Kutr on Web with a domain

How to run it with domain.

Can we run it with a domain as the server needs to be started with 127.0.0.1 and a port by php artisan serve

i can acess the login page with my http://www.domain.com, but i can't login. But if i artisan serve on my IP server with php artisan serve --host=... then i access http://...:port i can login.

Thank you

[suggestion] ampache collaboration ?

hey guys
so the guys (will basically the maintainer only) over at ampache are making a jump to laravel, ampache has a slew number of features that would be awesome on koel, and a very strong backend

why not do a joint venture into a single laravel powerhouse?

song-item-simple.vue not found

Hi,

I tried to install kutr on my ubuntu, but I have an error with gulp :

Browserify Failed!: Cannot find module './song-item-simple.vue' from '/home/gat/Code/kutr/resources/assets/js/components/shared'

I checked and this file is not present in the repository, but in /resources/assets/js/components/shared/folder-item.vue I found this :
import songItemSimple from './song-item-simple.vue' : line 46

I like your work on koel/kutr, and I really wish I could install it.
Thanks !

Song->multiple albums?

Hi can you help me through the following in figuring out a solution.

I have been looking to find a solution to add a single entry of song to multiple albums? I have looked through various details, like within the issues, there's conpilations. So basically, this might do that?

Looking into the database, i cant really say if it does how i would like it to work. Apparently, a single song could belong to multiple albums, so it's a one to many relation, yet i dont really that as an option.

Can anyone pls suggest if this is currently possible or would i need to go into the details and customize it for myself?

The way i see it, if the song path is duplicated and a new entity is made for each song that has to belong to another album, only a new id would need to be alloted but this doesn't really look like a good option.

The way this is currently established, i think this would be the fastest way around. Any suggestions on how i can do this? Put a single song in multiple albums?

Guest / No-login / read-only.

Since the original Dev has stated that there are no plans to integrate it I'm gonna ask here because you seem to put in new features.

Is there a way, or planned feature, that allow it to run without a user authentication?
Or is there a way to modify the files a bit to make it work this way?

In the sense of that you add music, but when you open the URL it will just display you with a read-only interface that you can use to play music. Without login, without playlist (or read-only playlists)?

I'd like to run it to share mainly fan-made music in a small group so the ability to have a guest-user without login would be very useful.

Not sure if the CMS-feature could be what I'm looking for.

details on cms

Hi,

I love your work on koel, i wonder if you have managed to successfully integrate the whole thing with some cms, i'd really like your input on that, if we can discuss a few things or you could talk a while? if too busy, can you please guide what did you integrate with kutr for cms? a laravel, custom built cms? or could there be something that'd speed up all the development?

beside, if you d share out your cms code, that would be like awesome! if not, if you can just guide a few things, that would be amazing!

[Suggestion] Docker image

I am not sure if this project is still active but if so what a docker image for us folks in the land of containers? there are a few for the official Koel repo, but I am liking your feature additions!

plyr (fast-forward / rewind)

Hi, :)
can you please guide me how would i go on about adding fast-forward and rewind buttons to the component? i have been trying for a few hours and of no luck, i cant seem to be able to access plyr's base functions through component.

Cms that you use

Can we know what cms do you use?

I want to test your kutr integration.

Thank you

Add folder playlist to the latest version

I have been looking for this feature for a long time, and finally saw it here. I am very excited, but not happy.
Because I don’t know programming, I want to add the folder function you developed to the latest version of KOEL.
I‘’m using a Pre-Compiled Archive V5.1.4...

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.