Kodi Community Forum

Full Version: Maraschino (formerly HTPC Frontend) - a summary web interface for your XBMC HTPC
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I wanted a simple web interface to act as a nice overview/front page for my XBMC HTPC. Nothing that was already available really suited my needs so I created something myself.

You can find setup instructions and more information on the project homepage:
http://www.maraschinoproject.com/

There is also a forum where you can submit feature requests, bug reports, etc. (as this thread is started to get rather cluttered):
http://forums.maraschinoproject.com/

It currently has the following features:
  • Customisable applications module providing quick access to your web interfaces (e.g. SABnzb+, SickBeard, or whatever else you want to link to)

  • Recently added episodes module - click an episode to play it in XBMC

  • Media library browser - browse your movies and TV shows, and click to play in XBMC

  • SABnzbd module which appears when something is downloading and hides again when finished - shows you what is currently downloading, speed, time/MB remaining, and a progress bar

  • Currently playing bar with play/pause/stop controls

  • trakt.tv module which shows you what people are saying about the episode or movie that you're watching, and allows you to add your own shouts (requires a free trakt.tv account)

  • Sickbeard module which allows you to browse upcoming episodes (coming soon: the ability to manage Sickbeard from Maraschino)

  • Disk space module showing you used/remaining space on your various drives

  • Full-screen background image changes to the fanart of what you're currently watching (optional, can be turned off)

  • Customisable from within the application itself - add new modules, rearrange them and modify their settings without touching any settings files

Here's a screenshot (click for larger image):

Image

Here's another with automatically-switching fanart backgrounds enabled:

Image

Please note that it requires XBMC Eden (although Frodo should also work if you enjoy living on the cutting edge).

This is a work-in-progress - things are still being changed, and new features and modules are being added quite frequently.

-----

IRC users: There is an official Maraschino IRC channel. Details are as follows:
  • Server: irc.freenode.net
  • Channel: #maraschino

Currently it's mostly us developers talking about technical things and the way forward for Maraschino. Sometimes we lurk, so may not always be available. Feel free to drop in - if you're having configuration problems and we're online, feel free to ask. Also, aspiring developers - drop in and get involved. Tell us what you think!
wow! I like it.
Wow, looks great. Can't wait to give it a test later.
Awesome job! going to kill mediafrontpage!

If running a windows server would it be possible to use WampServer 2.2a?
Thanks for the kind words!

fluentdesigns Wrote:Awesome job! going to kill mediafrontpage!
If running a windows server would it be possible to use WampServer 2.2a?

I haven't used it before, but based on what Google tells me, WampServer includes Apache - so you should be able to install mod_wsgi and configure Apache to serve this app using that. Google "apache windows mod_wsgi" for some pointers.

Sorry if that's a little vague - I plan on writing some proper documentation eventually, but I only started writing this app a few days ago and want to make it worth writing documentation for before doing so, if that makes sense Smile
Sounds good thanks!
Just pushed a trakt.tv module (see updated screenshot) as well some other, smaller changes.
It looks incredible!

I tried to install it on my ubuntu server, I think I got everything ready but there is still one error that's keeping me from using it :
Code:
File "/var/www/htpc/htpcfrontend.py", line 2, in <module>
[Wed Oct 26 11:05:05 2011] [error] [client XXX.2.97.XXX]     from settings import *
[Wed Oct 26 11:05:05 2011] [error] [client XXX.2.97.XXX] ImportError: No module named settings

It seems it doesn't find the settings.py file (figured I had to rename settings_example.py?) which is in the same directory...

Is there a line to add somewhere in my apache config to help him load or locate the file? Smile

Thank you and again, amazing work!
snoopy1492 Wrote:It looks incredible!

I tried to install it on my ubuntu server, I think I got everything ready but there is still one error that's keeping me from using it :
Code:
File "/var/www/htpc/htpcfrontend.py", line 2, in <module>
[Wed Oct 26 11:05:05 2011] [error] [client XXX.2.97.XXX]     from settings import *
[Wed Oct 26 11:05:05 2011] [error] [client XXX.2.97.XXX] ImportError: No module named settings

It seems it doesn't find the settings.py file (figured I had to rename settings_example.py?) which is in the same directory...

Is there a line to add somewhere in my apache config to help him load or locate the file? Smile

Thank you and again, amazing work!

EDIT: I think it's because you don't have /var/www/htpc on your Python path. Your wsgi file should look something like this:

Code:
import sys
sys.path.insert(0, "/var/www/htpc")

from htpcfrontend import app as application

The information in the next post is still useful though Smile

Probably worth mentioning that I've just pushed some changes (such as automatically-changing backgrounds if you enable the trakt.tv module) so you might want to make sure that you have the latest version.
Edit: this post used to contain setup instructions, but you can now find up-to-date instructions on the project homepage:

http://www.maraschinoproject.com/
Thanks for those info! It helped a lot!

I have it working now, the only problem is that it's not working if I put an other alias than / into my apache conf :
Code:
client XXX.X.XX.XXX] File does not exist: /var/www/static
and also :
Code:
File does not exist: /var/www/xhr

I tried to work my way into your code but I don't know anything about Python or Flask so I did not figured out a way to make it work outside of the root...

So that's how I did it thanks to your info mrkipling! Smile

  1. Next to the file htpcfrontend.py, create an empty file named htpcfrontend.wsgi and place inside :
    Code:
    import sys
    sys.path.insert(0, "/location/of/the/files")
    from htpcfrontend import app as application
  2. Add a line into your apache configuration :
    Code:
    WSGIScriptAlias / /linktowhereyouinstalledtheprogram

EDIT :
Unfortunately I can't get the Trakt or XBMC widget to work... Wonder if it's because I'm using a XBMC build from two days ago, the JSON-RPC API could have been changed...
But regarding trakt, I don't know Sad

But still, it looks very promising! (and I love the design Smile )
Ah and while I'm thinking, it would be better if the application widget was opening a new tab/window rather than opening the link in the same window Wink

I will follow this thread daily then!
snoopy1492 Wrote:Thanks for those info! It helped a lot!

EDIT :
Unfortunately I can't get the Trakt or XBMC widget to work... Wonder if it's because I'm using a XBMC build from two days ago, the JSON-RPC API could have been changed...
But regarding trakt, I don't know Sad

The JSON RPC API has changed quite significantly in Eden. I'm currently using the stable release, but perhaps I should switch to unstable and get ready for Eden.

Regarding Trakt, have you:

* entered your Trakt API key in the settings? (you can find this in your Trakt profile)
* entered your Trakt username in the settings?
* set your profile to public/unprotected?

I'm guessing that it's probably the last one. I should add support for protected profiles - it's on my todo list!

Edit: I've just updated my XBMC installation to get the latest nightly updates. The next development that I do will be to make the app work with the current API in the nightly builds (not least because it doesn't work for me any more unless I do that - I have motivation!)
Ok thanks, I'll wait for the updates Smile
snoopy1492 Wrote:Ok thanks, I'll wait for the updates Smile

Okay, I hacked away at it this evening and now have it working with the unstable (Eden-pre) version of XBMC. It no longer works with Dharma. I feel that this is right way to go Smile

If you pull from the master branch and restart Apache then things should just start working (assuming that you've configured it correctly in settings.py). Let me know if you encounter any problems, feedback/bug reports would be much appreciated.

N.B. 'click to play' on recently added items doesn't work with the new API yet. That's the next thing that I'm working on though, and then all existing functionality will be working properly with the new API. Will probably be done tonight or tomorrow.
Wow, that was fast!

So now, the XBMC latest episodes and currently playing work Big Grin, but I still don't have the trakt widget showing up... Sad

Thanks for the update!

PS: I would propose my help for this project as I'm a web developper myself, but I don't know anything about Python...