<!DOCTYPE html> <!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]--> <!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]--> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="shortcut icon" href="../img/favicon.ico"> <title>Theming - Shaarli Documentation</title> <link href='https://fonts.googleapis.com/css?family=Lato:400,700|Roboto+Slab:400,700|Inconsolata:400,700' rel='stylesheet' type='text/css'> <link rel="stylesheet" href="../css/theme.css" type="text/css" /> <link rel="stylesheet" href="../css/theme_extra.css" type="text/css" /> <link rel="stylesheet" href="../css/highlight.css"> <link href="../github-markdown.css" rel="stylesheet"> <script> // Current page data var mkdocs_page_name = "Theming"; var mkdocs_page_input_path = "Theming.md"; var mkdocs_page_url = "/Theming/"; </script> <script src="../js/jquery-2.1.1.min.js"></script> <script src="../js/modernizr-2.8.3.min.js"></script> <script type="text/javascript" src="../js/highlight.pack.js"></script> </head> <body class="wy-body-for-nav" role="document"> <div class="wy-grid-for-nav"> <nav data-toggle="wy-nav-shift" class="wy-nav-side stickynav"> <div class="wy-side-nav-search"> <a href=".." class="icon icon-home"> Shaarli Documentation</a> <div role="search"> <form id ="rtd-search-form" class="wy-form" action="../search.html" method="get"> <input type="text" name="q" placeholder="Search docs" /> </form> </div> </div> <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation"> <ul class="current"> <li class="toctree-l1"> <a class="" href="..">Home</a> </li> <li class="toctree-l1"> <span class="caption-text">Setup</span> <ul class="subnav"> <li class=""> <a class="" href="../Download-and-Installation/">Download and Installation</a> </li> <li class=""> <a class="" href="../Upgrade-and-migration/">Upgrade and migration</a> </li> <li class=""> <a class="" href="../Server-requirements/">Server requirements</a> </li> <li class=""> <a class="" href="../Server-configuration/">Server configuration</a> </li> <li class=""> <a class="" href="../Server-security/">Server security</a> </li> <li class=""> <a class="" href="../Shaarli-configuration/">Shaarli configuration</a> </li> <li class=""> <a class="" href="../Plugins/">Plugins</a> </li> </ul> </li> <li class="toctree-l1"> <span class="caption-text">Docker</span> <ul class="subnav"> <li class=""> <a class="" href="../docker/docker-101/">Docker 101</a> </li> <li class=""> <a class="" href="../docker/shaarli-images/">Shaarli images</a> </li> <li class=""> <a class="" href="../docker/reverse-proxy-configuration/">Reverse proxy configuration</a> </li> <li class=""> <a class="" href="../docker/resources/">Docker resources</a> </li> </ul> </li> <li class="toctree-l1"> <span class="caption-text">Usage</span> <ul class="subnav"> <li class=""> <a class="" href="../Features/">Features</a> </li> <li class=""> <a class="" href="../Bookmarklet/">Bookmarklet</a> </li> <li class=""> <a class="" href="../Browsing-and-searching/">Browsing and searching</a> </li> <li class=""> <a class="" href="../Firefox-share/">Firefox share</a> </li> <li class=""> <a class="" href="../RSS-feeds/">RSS feeds</a> </li> <li class=""> <a class="" href="../REST-API/">REST API</a> </li> </ul> </li> <li class="toctree-l1"> <span class="caption-text">How To</span> <ul class="subnav"> <li class=""> <a class="" href="../Backup,-restore,-import-and-export/">Backup, restore, import and export</a> </li> <li class=""> <a class="" href="../Various-hacks/">Various hacks</a> </li> </ul> </li> <li class="toctree-l1"> <a class="" href="../Troubleshooting/">Troubleshooting</a> </li> <li class="toctree-l1"> <span class="caption-text">Development</span> <ul class="subnav"> <li class=""> <a class="" href="../Development-guidelines/">Development guidelines</a> </li> <li class=""> <a class="" href="../Continuous-integration-tools/">Continuous integration tools</a> </li> <li class=""> <a class="" href="../GnuPG-signature/">GnuPG signature</a> </li> <li class=""> <a class="" href="../Coding-guidelines/">Coding guidelines</a> </li> <li class=""> <a class="" href="../Directory-structure/">Directory structure</a> </li> <li class=""> <a class="" href="../3rd-party-libraries/">3rd party libraries</a> </li> <li class=""> <a class="" href="../Plugin-System/">Plugin System</a> </li> <li class=""> <a class="" href="../Release-Shaarli/">Release Shaarli</a> </li> <li class=""> <a class="" href="../Versioning-and-Branches/">Versioning and Branches</a> </li> <li class=""> <a class="" href="../Security/">Security</a> </li> <li class=""> <a class="" href="../Static-analysis/">Static analysis</a> </li> <li class=" current"> <a class="current" href="./">Theming</a> <ul class="subnav"> <li class="toctree-l3"><a href="#foreword">Foreword</a></li> <li class="toctree-l3"><a href="#custom-css">Custom CSS</a></li> <li class="toctree-l3"><a href="#themes">Themes</a></li> <li class="toctree-l3"><a href="#community-css-themes">Community CSS & themes</a></li> <ul> <li><a class="toctree-l4" href="#custom-css_1">Custom CSS</a></li> <li><a class="toctree-l4" href="#themes_1">Themes</a></li> <li><a class="toctree-l4" href="#shaarli-forks">Shaarli forks</a></li> </ul> <li class="toctree-l3"><a href="#example-installation-albinomouse-theme">Example installation: AlbinoMouse theme</a></li> </ul> </li> <li class=""> <a class="" href="../Unit-tests/">Unit tests</a> </li> </ul> </li> <li class="toctree-l1"> <span class="caption-text">About</span> <ul class="subnav"> <li class=""> <a class="" href="../FAQ/">FAQ</a> </li> <li class=""> <a class="" href="../Community-&-Related-software/">Community & Related software</a> </li> </ul> </li> </ul> </div> </nav> <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"> <nav class="wy-nav-top" role="navigation" aria-label="top navigation"> <i data-toggle="wy-nav-top" class="fa fa-bars"></i> <a href="..">Shaarli Documentation</a> </nav> <div class="wy-nav-content"> <div class="rst-content"> <div role="navigation" aria-label="breadcrumbs navigation"> <ul class="wy-breadcrumbs"> <li><a href="..">Docs</a> »</li> <li>Development »</li> <li>Theming</li> <li class="wy-breadcrumbs-aside"> <a href="https://github.com/shaarli/Shaarli/edit/master/docs/Theming.md" class="icon icon-github"> Edit on GitHub</a> </li> </ul> <hr/> </div> <div role="main"> <div class="section"> <h2 id="foreword">Foreword</h2> <p>There are two ways of customizing how Shaarli looks:</p> <ol> <li>by using a custom CSS to override Shaarli's CSS</li> <li>by using a full theme that provides its own RainTPL templates, CSS and Javascript resources</li> </ol> <h2 id="custom-css">Custom CSS</h2> <p>Shaarli's appearance can be modified by adding CSS rules to: - Shaarli < <code>v0.9.0</code>: <code>inc/user.css</code> - Shaarli >= <code>v0.9.0</code>: <code>data/user.css</code></p> <p>This file allows overriding rules defined in the template CSS files (only add changed rules), or define a whole new theme.</p> <p><strong>Note</strong>: Do not edit <code>tpl/default/css/shaarli.css</code>! Your changes would be overridden when updating Shaarli.</p> <p>See also <a href="../Download CSS styles from an OPML list">Download CSS styles from an OPML list</a></p> <h2 id="themes">Themes</h2> <p><em>WARNING - This feature is currently being worked on and will be improved in the next releases. Experimental.</em></p> <p>Installation: - find a theme you'd like to install - copy or clone the theme folder under <code>tpl/<a_sweet_theme></code> - enable the theme: - Shaarli < <code>v0.9.0</code>: edit <code>data/config.json.php</code> and set the value of <code>raintpl_tpl</code> to the new theme name: <code>"raintpl_tpl": "tpl\/my-template\/"</code> - Shaarli >= <code>v0.9.0</code>: select the theme through the <em>Tools</em> page</p> <h2 id="community-css-themes">Community CSS & themes</h2> <h3 id="custom-css_1">Custom CSS</h3> <ul> <li><a href="https://github.com/mrjovanovic/serious-theme-shaarli">mrjovanovic/serious-theme-shaarli</a> - A serious theme for Shaarli</li> <li><a href="https://github.com/shaarli/shaarli-themes">shaarli/shaarli-themes</a></li> </ul> <h3 id="themes_1">Themes</h3> <ul> <li><a href="https://github.com/AkibaTech/Shaarli---SuperHero-Theme">AkibaTech/Shaarli Superhero Theme</a> - A template/theme for Shaarli</li> <li><a href="https://github.com/alexisju/albinomouse-template">alexisju/albinomouse-template</a> - A full template for Shaarli</li> <li><a href="https://github.com/ArthurHoaro/shaarli-launch">ArthurHoaro/shaarli-launch</a> - Customizable Shaarli theme</li> <li><a href="https://github.com/dhoko/ShaarliTemplate">dhoko/ShaarliTemplate</a> - A template/theme for Shaarli</li> <li><a href="https://github.com/kalvn/shaarli-blocks">kalvn/shaarli-blocks</a> - A template/theme for Shaarli</li> <li><a href="https://github.com/kalvn/Shaarli-Material">kalvn/Shaarli-Material</a> - A theme (template) based on Google's Material Design for Shaarli, the superfast delicious clone</li> <li><a href="https://github.com/ManufacturaInd/shaarli-2004licious-theme">ManufacturaInd/shaarli-2004licious-theme</a> - A template/theme as a humble homage to the early looks of the del.icio.us site</li> </ul> <h3 id="shaarli-forks">Shaarli forks</h3> <ul> <li><a href="https://github.com/misterair/limonade">misterair/Limonade</a> - A fork of (legacy) Shaarli with a new template</li> <li><a href="https://github.com/vivienhaese/shaarlitheme">vivienhaese/shaarlitheme</a> - A Shaarli fork meant to be run in an openshift instance</li> </ul> <h2 id="example-installation-albinomouse-theme">Example installation: AlbinoMouse theme</h2> <p>With the following configuration: - Apache 2 / PHP 5.6 - user sites are enabled, e.g. <code>/home/user/public_html/somedir</code> is served as <code>http://localhost/~user/somedir</code> - <code>http</code> is the name of the Apache user</p> <pre><code class="bash">$ cd ~/public_html # clone repositories $ git clone https://github.com/shaarli/Shaarli.git shaarli $ pushd shaarli/tpl $ git clone https://github.com/alexisju/albinomouse-template.git $ popd # set access rights for Apache $ chgrp -R http shaarli $ chmod g+rwx shaarli shaarli/cache shaarli/data shaarli/pagecache shaarli/tmp </code></pre> <p>Get config written: - go to the freshly installed site - fill the install form - log in to Shaarli</p> <p>Edit Shaarli's <a href="../configuration|Shaarli configuration">configuration|Shaarli configuration</a>:</p> <pre><code class="bash"># the file should be owned by Apache, thus not writeable => sudo $ sudo sed -i s=tpl=tpl/albinomouse-template=g shaarli/data/config.php </code></pre> </div> </div> <footer> <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation"> <a href="../Unit-tests/" class="btn btn-neutral float-right" title="Unit tests">Next <span class="icon icon-circle-arrow-right"></span></a> <a href="../Static-analysis/" class="btn btn-neutral" title="Static analysis"><span class="icon icon-circle-arrow-left"></span> Previous</a> </div> <hr/> <div role="contentinfo"> <!-- Copyright etc --> </div> Built with <a href="http://www.mkdocs.org">MkDocs</a> using a <a href="https://github.com/snide/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>. </footer> </div> </div> </section> </div> <div class="rst-versions" role="note" style="cursor: pointer"> <span class="rst-current-version" data-toggle="rst-current-version"> <a href="https://github.com/shaarli/Shaarli" class="fa fa-github" style="float: left; color: #fcfcfc"> GitHub</a> <span><a href="../Static-analysis/" style="color: #fcfcfc;">« Previous</a></span> <span style="margin-left: 15px"><a href="../Unit-tests/" style="color: #fcfcfc">Next »</a></span> </span> </div> <script src="../js/theme.js"></script> </body> </html>