Chorus2 redesign/port
#1
Hello, my name is Alex Ionkov and I am interested in pursuing the chorus2 redesign/port in either Elm or Svelte. I made a figma of my current ideas for the redesign here. I think as a media player, Kodi can adopt a more current look and feel to it. I looked to Netflix and Amazon for some inspiration. As the web interface, it would be used in many cases where a friendlier user interface would help both laptop and mobile users. I would begin by porting or rewriting a lot of the backend from CoffeeScript to Elm or Svelte and then work on the GUI. I like Svelte for its relatively small footprint. I would appreciate any and all feedback to my design and possibly advice on where to begin porting.
Reply
#2
Hey there, nice to have you.

Looking at the old design (for e.g. via https://kodi.tv/article/new-webinterface-called-chorus2 ), I'm not to sure a simple Netfilx like design can actually host some of the more professional features. I'm also not sure if we have the needed pictures, as all your pictures need to have the movie names for the user to be able to understand them.
Reply
#3
(2020-02-28, 10:13)Razze Wrote: Hey there, nice to have you.

Looking at the old design (for e.g. via https://kodi.tv/article/new-webinterface-called-chorus2 ), I'm not to sure a simple Netfilx like design can actually host some of the more professional features. I'm also not sure if we have the needed pictures, as all your pictures need to have the movie names for the user to be able to understand them.

Ah yeah, you're right that makes sense. I'm going to start experimenting with Svelte before I take a more invested look into the chorus2 source.
Reply
#4
@Razze Am I correct in assuming that chorus2 doesn't actually interact with Kodi apart from using the same source directories? Based on what I've been reading, chorus2 just acts as a local webserver interface for the source directories but I could definitely be wrong. The reason I ask is because if it can be considered separate then I can just build the chorus source rather than waiting for Kodi to build as well.
Reply
#5
(2020-03-03, 19:25)ionif Wrote: @Razze Am I correct in assuming that chorus2 doesn't actually interact with Kodi apart from using the same source directories? Based on what I've been reading, chorus2 just acts as a local webserver interface for the source directories but I could definitely be wrong. The reason I ask is because if it can be considered separate then I can just build the chorus source rather than waiting for Kodi to build as well.

As far as I know it's completely separate. It's not using the same source directories, but kodi's (json-rpc) api to query/mutate the data.
Reply
#6
Hi, My name is Biraj, undergraduate in B.tech computer science from Shri Mata Vaishno devi university. I'm willing to work on redesigning the chorous2.
Just wanted to ask a few questions.
You have mentioned in your idealist to use elm. Can I use react instead?
Also how should I share you my work, through a PR or the link to the Repository that I make?
Also what other relevent contributions You suggest to make to the design?
Hope I make some sense.
some guidance is highly appreciated.
Reply
#7
(2020-03-06, 09:40)Biraj Wrote: Hi, My name is Biraj, undergraduate in B.tech computer science from Shri Mata Vaishno devi university. I'm willing to work on redesigning the chorous2.
Just wanted to ask a few questions.
You have mentioned in your idealist to use elm. Can I use react instead?
Also how should I share you my work, through a PR or the link to the Repository that I make?
Also what other relevent contributions You suggest to make to the design?
Hope I make some sense.
some guidance is highly appreciated.

Yes, you can use react, but Elm would be preferable, as it's much easier to maintain, even for people without any web knowledge/js.
Everything is possible, do whatever you feel comfortable with, we had some people using google documents last year. (I actually can't remember what google wants to have from you)
I'm actually not expecting many redesigns, but would be open to do that, if it makes sense. We could also go for a completely different design, but I would focus on:
1. Getting a build running and shipping it to kodi (also choosing some dependencies)
2. Interfacing with kodi
3. Implementing as many frontends as possible
4. Optimizing for mobile layouts
5. Writing some tests
Reply
#8
Small update @Razze, the jsonrpc package for elm doesn't support elm 1.9.1 but this might not matter since websockets might be a better way to do this. I'm testing it out now.
Reply
#9
@Razze are there any drawbacks to using Python with a web framework like flask for this? I've gotten jsonrpc request working well in Python. I could probably write it in js too though.
Reply
#10
(2020-03-14, 17:21)ionif Wrote: @Razze are there any drawbacks to using Python with a web framework like flask for this? I've gotten jsonrpc request working well in Python. I could probably write it in js too though.

Never mind, I have it working using the kodi-ws module for node. Going to make a small music player as a proof of concept.
Reply
#11
The drawbacks with python are, that it will be not as dependable and way harder to maintain. As we need to keep it going even after your gsoc is done.

We could also see if we can update the elm jsonrpc package, if it does not include kernel code (which was a hack)
Reply
#12
Here's my proposal draft so far: here

updating the jsonrpc elm package would definitely be an option, I'm not sure its the best way though.
Reply
#13
In case you haven't already noticed it, Chorus includes an Kodi API Browser to help devs build apps, see the Readme on Github for details. Don't know if it will be of any use to you, just pointing it out in case you hadn't already found it.
Reply
#14
I would always suggest to include a timeline in your proposal, it helps to see if it's enough work or even too much Smile
Reply
#15
@jjd-uk 
Yeah true, that api browser is pretty useful since it lets you submit jsonrpc requests without writing your own script. I haven't used it much yet but it definitely looks like a good resource especially to cross check my code.

@Razze 
Thanks for the feedback, I added a rough timeline. Not sure how much detail I should go into since the frameworks aren't set into stone.
Reply

Logout Mark Read Team Forum Stats Members Help
Chorus2 redesign/port0