From HTPC How-To's
Jump to: navigation, search



Short Description: A web based 'front-end' allowing control of HTPC related software
Written/Programmed in: Python, Flask



XBMC running on one or more systems on the network
Python 2.7
Python SetupTools


Maraschino can utilize standard links to display information from the following applications or any standard website(s):

Host Install

Linux/Mac OS X/Unix

Both of these links are from the Official Maraschino Site

Links from forum


Although instructions were written for Windows 7 and/or Windows Server 2008 R2, it should still apply to Windows Vista as well. This guide does NOT support the use of Windows XP.


Setup Files

During initial setup you need to create a '' so that your local database is found and Maraschino can access XBMC's JSON and HTTP interfaces. Thankfully there is a '' that demonstrates the required settings.

Breakdown of

These settings were taken from the '' as of Nov. 16th, some of these may change over time with things added/removed.

  • Database
DATABASE = '/path/to/maraschino.db'

For Windows Users, do NOT include the "C:" to your path name. If you follow the Windows Setup Guide above, your Database should appear as follows:

DATABASE = '/HTPC-Apps/Maraschino/maraschino.db'
  • CherryPy Port

Leaving this default in most cases will work fine, however if you get a "Socket Error" when attempting to get this to run, it is most likely a conflict with this port. Change 7000 to a different number (7001 for example) and it should correct this.

  • AUTH section
AUTH = {
    'username': 'username',
    'password': 'password'

The Username and Password here need to match those from XBMC's Network Settings page and allow Maraschino access to both the JSON and HTTP interfaces of XBMC. It has been reported by some users (at least on Windows) that not having a User/Pass setup tends to cause a few issues. It's recommended to setup a User/Pass for XBMC even if run inside a private network anyway.

  • Port
PORT = 5000

This port is used by the internal "Dev Server" ( in cases that you can not get the CherryPy version ( to run. Please note that Port 5000 is also the default port for CouchPotato and should be changed here if already being used there.

On Screen Config


Once you open Maraschino in your browser for the first time you'll see a screen similar to the image on the right. By moving your mouse to the upper left corner of the screen you'll see a 'cog' which will take you to the configuration when clicked. Once there, the first two things you'll notice are "Server Settings" and a couple "+ Add Module" spots.

First up is the Server Settings box:
The defaults in this box assume that you are running Maraschino on the same system as XBMC and haven't changed XBMC's default Network Settings. The first four input boxes are specific to XBMC's Network settings while the 2 drop-down boxes are specific to Maraschino. Even if you are running Maraschino on the same system as XBMC it is advised to change 'localhost' to the IP address of that system1. The first of the two drop-down boxes will change the background to the fanart of the TV Show or Movie while it is being played and back to the default once it's over. The second drop-down box will change the background (grass by default) to other images at random while not watching media. These backgrounds are stored in /static/images/backgrounds.
1 - It has been confirmed (at least on Windows) that leaving 'localhost' will break the Recent Episode Thumbnails when viewed from other systems/devices.

Next up is the "+ Add Module":
When you click on one of these it will allow you to select an unused widget to be placed in that location (ex. clicking the "+ Add Module" in the third column will place the widget in that column). So far, the current widgets available are:


Allows you to link to whatever applications you want (SABnzbd, SickBeard, etc.)

+Add Application
  • Name
  • URL (http:// required for links not relative to Maraschino's home directory)
  • Description
  • Icon File Name (images located in /static/images/applications)
  • Position (0,1,2,etc.)

Disk Space

Shows you available disk space on your various drives.

  • Poll Frequency (how often the widget is refreshed in seconds)
  • Delay in Loading
+Add Disk
  • Path (Windows Paths are currently NOT supported)
  • Position (0,1,2,etc.)

Media Library

Allows you to browse your media library and select items to play in XBMC.
Gives access to both Movies and TV Shows. No settings required.

Recently Added

Shows you episodes recently added to your library.

  • Poll Frequency (how often the widget is refreshed in seconds)
  • Delay in Loading
  • Number of Episodes to display


Shows you information about your SABnzbd+ downloads.

  • Poll Frequency (how often the widget is refreshed in seconds)
  • Delay in Loading
  • SABnzbd URL (in http://<hostname>:<port>/api?apikey=<apikeygoeshere> format)

Widget disappears when noting is downloading.


Shows you a plot synopsis of what you are currently watching.
No settings required. Widget disappears when nothing is playing.

Shows you what people are saying about what you are watching and allows you to add your own comments.

With all Widgets (excluding "Server Settings" box) they can be removed by clicking the "X" in the upper right corner of the widget while in Configuration Mode.

Bug Reporting and Support


If you find an actual bug, see below, otherwise, for general support you can post on this thread of the XBMC Forums. When making a post please state your Operating System and which method you're using for Maraschino (Apache, CherryPy, other).

Bug Reports

When posting a bug report please have the following information available if possible to ease in tracking the issue down:

  • Operating System
  • Method Used (Apache, CherryPy, Other.) (If Other, please explain in report)
  • Screenshots if possible

If requested to post your (in whole or in part) please remember to remove BOTH Username and Password like below:

DATABASE = '/HTPC-Apps/Maraschino/maraschino.db'
PORT = 5001
AUTH = {
    'username': 'REMOVED',
    'password': 'REMOVED'
Personal tools