Creating skins for Shareaza is easy. You can make skins as simple or as complex as you want. These pages provide a simple tutorial and a detailed reference for Shareaza skinning capabilities. With this tutorial you'll be able to make:

This tutorial goes in parts. A great way to learn is to go through element-by-element and build your own skin!

Skins are stored in the C:\Program Files\Shareaza\Skins folder.

Each skin has its own folder, such as C:\Program Files\Shareaza\Skins\MySkin.

Each folder contains the main skin file and support files, such as images or icons.

Every skin has a skin definition file, which is in XML format.
XML is an easy to read text format not unlike HTML, but for more general purpose use.
It is recommended, but not required, that a text editor with XML syntax highlighting be used.
Examples are Notepad++ or EmEditor.
The skin definition file tells Shareaza about the skin -- things like who created it, which parts of the interface to change, and how to change them.

This skin specifies its name and author, and adds a watermark image to the main menu bar. Easy! Skins are just like this: you can change as much or as little as you want.

Note: The first two lines of this example should always be used without modification. The xmlns and version tags are important, and should not be edited at all. This is the version of the skinning core, not the version of your skin.

The Manifest Element

The example above included a <manifest> element, which specified the name of the skin. It's important to include some good meta-information about your skin so that others can identify it and search for it. Here is a complete reference for the <manifest> element:

<manifest

name="The name of the skin"

author="The person or organisation who created it"

updatedBy="The person who updated it"

description="A longer description of the skin, if desired"

link="http://a.url.for.the.skin.com/if/applicable/"

email="an@email.address.example.com"

version="1.5"

type="Skin"

dir="ltr"

/>

All of the attributes except for name are optional:

name - The name of the skin.

author - The person who created the skin.

updatedBy - The person who updated/improved the skin.

description - A longer description of the skin.

link - An optional web URL to visit for more information.

email - An optional email address to contact for more information.

version - The revision number of the skin.

type - Most skins should set this to "skin". The exception is language translation skins, which would set this to "language".

language - Only include if the type is set to "language" above. It specifies the language code which the translation provides, for example "en".

dir - Most skins can omit this. The values can be: "ltr" for left-to-right languages and "rtl" for right-to-left languages.

Visual Guide

The visual guide is a collection of screenshots and other visuals demonstrating what parts of the default skin correspond to which IDs.

Default.xml and Definitions.xml show a list of Shareaza's default icons and their corresponding IDs to help in figuring out how to modify a certain icon.
The documentation on commandImages should be consulted for the exact syntax for replacing icons.

Skin Elements

This section lists all of the different elements you can include in a skin file, with links to more detailed descriptions.

So that people all around the world can enjoy your skin you should make sure it is RTL (Right-to-Left) compatible. This is for languages that start on the right and read to the left like Hebrew and Arabic.

Shareaza Remote Skinning

Once you've learned the elements of Shareaza skinning, give skinning the remote a try!

Distributing Your Skins

Once you've created a cool skin, there isn't much point in keeping it all to yourself, right? Distributing Shareaza skins is easy, but there are a few tips which are worth mentioning.

Make sure the skin is ready for prime-time.
Test that it works without any strange results. If possible test it on a different computer.

Make sure everything is as neat & small as possible.If you've created image files, convert them to 8-bit, 256 colour bitmaps.

Check your manifest element.
This should provide an accurate name for the skin, the type of skin, and any other information you think is relevant.

The best way to package and distribute a Shareaza skin is to ZIP up all the files, and take advantage of the automatic skin installer that comes with Shareaza.

To do this:

ZIP the skins folder.

Rename your .ZIP file to a .SKS file.

Shareaza skin (.sks) files are automatically unzipped and installed into the correct location when they are opened by end-users.

Finally, be sure to submit your skin to the Shareaza skin library, and share it on Shareaza! Sharing skins on Shareaza is very important, as it will allow everyone to download them faster. After all, that's what we're about!

Getting Help

Need help with skinning? Want to talk to others about it, or make an announcement about your new skin? If so, visit the Skinning Forum.