aboutsummaryrefslogtreecommitdiffhomepage
path: root/doc/Home.html
diff options
context:
space:
mode:
authornodiscc <nodiscc@gmail.com>2015-06-26 21:56:43 +0200
committernodiscc <nodiscc@gmail.com>2015-06-26 21:58:07 +0200
commitda9b0e3e807f05831c00b2f02a16b76eafbb6743 (patch)
tree0a52c576d99bfeb033a6bd02eac86642c1334a54 /doc/Home.html
parent927a84119ca1067d950a23dbd14159e11513a5cd (diff)
downloadShaarli-da9b0e3e807f05831c00b2f02a16b76eafbb6743.tar.gz
Shaarli-da9b0e3e807f05831c00b2f02a16b76eafbb6743.tar.zst
Shaarli-da9b0e3e807f05831c00b2f02a16b76eafbb6743.zip
[doc] sync doc with latest wiki, build HTML
Diffstat (limited to 'doc/Home.html')
-rw-r--r--doc/Home.html137
1 files changed, 92 insertions, 45 deletions
diff --git a/doc/Home.html b/doc/Home.html
index e4d117f1..2cb54c86 100644
--- a/doc/Home.html
+++ b/doc/Home.html
@@ -14,8 +14,7 @@
14<body> 14<body>
15<h1 id="shaarli-wiki">Shaarli wiki</h1> 15<h1 id="shaarli-wiki">Shaarli wiki</h1>
16<p>Welcome to the <a href="https://github.com/shaarli/Shaarli/">Shaarli</a> wiki! Here you can find some info on how to use, configure, tweak and solve problems with your Shaarli. For general info, read the <a href="https://github.com/shaarli/Shaarli/blob/master/README.md">README</a>.</p> 16<p>Welcome to the <a href="https://github.com/shaarli/Shaarli/">Shaarli</a> wiki! Here you can find some info on how to use, configure, tweak and solve problems with your Shaarli. For general info, read the <a href="https://github.com/shaarli/Shaarli/blob/master/README.md">README</a>.</p>
17<p>If you have any questions or ideas, please join the <a href="https://gitter.im/shaarli/Shaarli">chat</a> (also reachable via <a href="https://irc.gitter.im/">IRC</a>), post them in our <a href="https://github.com/shaarli/Shaarli/issues/44">general discussion</a> or read the current <a href="https://github.com/shaarli/Shaarli/issues">issues</a>. If you've found a bug, please create a <a href="https://github.com/shaarli/Shaarli/issues/new">new issue</a>.</p> 17<p>If you have any questions or ideas, please join the <a href="https://gitter.im/shaarli/Shaarli">chat</a> (also reachable via <a href="https://irc.gitter.im/">IRC</a>), post them in our <a href="https://github.com/shaarli/Shaarli/issues/44">general discussion</a> or read the current <a href="https://github.com/shaarli/Shaarli/issues">issues</a>. If you've found a bug, please create a <a href="https://github.com/shaarli/Shaarli/issues/new">new issue</a>. If you would like a feature added to Shaarli, check the issues labeled <a href="https://github.com/shaarli/Shaarli/labels/feature"><code>feature</code></a>, <a href="https://github.com/shaarli/Shaarli/labels/enhancement"><code>enhancement</code></a>, and <a href="https://github.com/shaarli/Shaarli/labels/plugin"><code>plugin</code></a>.</p>
18<p>If you'd like a feature added, see if it fits in the list of <a href="Ideas-for-plugins">Ideas for Plugins</a> and update the corresponding bug report.</p>
19<p><em>Note: This documentation is available online at <a href="https://github.com/shaarli/Shaarli/wiki">https://github.com/shaarli/Shaarli/wiki</a>, and locally in the <code>doc/</code> directory of your Shaarli installation.</em></p> 18<p><em>Note: This documentation is available online at <a href="https://github.com/shaarli/Shaarli/wiki">https://github.com/shaarli/Shaarli/wiki</a>, and locally in the <code>doc/</code> directory of your Shaarli installation.</em></p>
20<hr /> 19<hr />
21<!-- MarkdownTOC depth=3 --> 20<!-- MarkdownTOC depth=3 -->
@@ -25,7 +24,9 @@
25<li><p><a href="#basic-usage">Basic Usage</a></p> 24<li><p><a href="#basic-usage">Basic Usage</a></p>
26<ul> 25<ul>
27<li><a href="#add-the-sharing-button-_bookmarklet_-to-your-browser">Add the sharing button (<em>bookmarklet</em>) to your browser</a><br /></li> 26<li><a href="#add-the-sharing-button-_bookmarklet_-to-your-browser">Add the sharing button (<em>bookmarklet</em>) to your browser</a><br /></li>
27<li><a href="#add-shaarli-as-a-sharing-service-to-firefox">Add Shaarli as a sharing service to Firefox</a><br /></li>
28<li><a href="#share-links-using-the-_bookmarklet_">Share links using the <em>bookmarklet</em></a><br /></li> 28<li><a href="#share-links-using-the-_bookmarklet_">Share links using the <em>bookmarklet</em></a><br /></li>
29<li><a href="#sharing-links-using-firefox-share">Sharing links using Firefox share</a><br /></li>
29</ul></li> 30</ul></li>
30<li><p><a href="#other-usage-examples">Other usage examples</a></p> 31<li><p><a href="#other-usage-examples">Other usage examples</a></p>
31<ul> 32<ul>
@@ -59,7 +60,14 @@
59<li><a href="#various-hacks">Various hacks</a><br /></li> 60<li><a href="#various-hacks">Various hacks</a><br /></li>
60<li><a href="#changing-timestamp-for-a-link">Changing timestamp for a link</a><br /></li> 61<li><a href="#changing-timestamp-for-a-link">Changing timestamp for a link</a><br /></li>
61</ul></li> 62</ul></li>
62<li><a href="#related-software">Related software</a><br /></li> 63<li><p><a href="#related-software">Related software</a></p>
64<ul>
65<li><a href="#server-apps">Server apps</a><br /></li>
66<li><a href="#android-apps">Android apps</a><br /></li>
67<li><a href="#themes--templates">Themes &amp; templates</a><br /></li>
68<li><a href="#integrate-shaarli-with-other-platforms">Integrate Shaarli with other platforms</a><br /></li>
69<li><a href="#alternative-to-shaarli">Alternative to Shaarli</a><br /></li>
70</ul></li>
63<li><a href="#other-links">Other links</a><br /></li> 71<li><a href="#other-links">Other links</a><br /></li>
64<li><p><a href="#faq">FAQ</a></p> 72<li><p><a href="#faq">FAQ</a></p>
65<ul> 73<ul>
@@ -70,6 +78,7 @@
70<li><p><a href="#technical-details">Technical details</a></p> 78<li><p><a href="#technical-details">Technical details</a></p>
71<ul> 79<ul>
72<li><a href="#directory-structure">Directory structure</a><br /></li> 80<li><a href="#directory-structure">Directory structure</a><br /></li>
81<li><a href="#development">Development</a><br /></li>
73<li><a href="#why-not-use-a-real-database--files-are-slow-">Why not use a real database ? Files are slow !</a><br /></li> 82<li><a href="#why-not-use-a-real-database--files-are-slow-">Why not use a real database ? Files are slow !</a><br /></li>
74</ul></li> 83</ul></li>
75<li><p><a href="#wiki---todo">Wiki - TODO</a></p></li> 84<li><p><a href="#wiki---todo">Wiki - TODO</a></p></li>
@@ -89,6 +98,12 @@
89</ul> 98</ul>
90<p><em>This bookmarklet button in compatible with Firefox, Opera, Chrome and Safari. Under Opera, you can't drag'n drop the button: You have to right-click on it and add a bookmark to your personal toolbar.</em></p> 99<p><em>This bookmarklet button in compatible with Firefox, Opera, Chrome and Safari. Under Opera, you can't drag'n drop the button: You have to right-click on it and add a bookmark to your personal toolbar.</em></p>
91<p><img src="images/bookmarklet.png" /></p> 100<p><img src="images/bookmarklet.png" /></p>
101<h3 id="add-shaarli-as-a-sharing-service-to-firefox">Add Shaarli as a sharing service to Firefox</h3>
102<ul>
103<li>Open your Shaarli and <code>Login</code><br /></li>
104<li>Click the <code>Tools</code> button in the top bar<br /></li>
105<li>Click the <code>✚Add to Firefox social</code> button and accept the activation.</li>
106</ul>
92<h3 id="share-links-using-the-bookmarklet">Share links using the <em>bookmarklet</em></h3> 107<h3 id="share-links-using-the-bookmarklet">Share links using the <em>bookmarklet</em></h3>
93<ul> 108<ul>
94<li>When you are visiting a webpage you would like to share with Shaarli, click the <em>bookmarklet</em> you just added.<br /></li> 109<li>When you are visiting a webpage you would like to share with Shaarli, click the <em>bookmarklet</em> you just added.<br /></li>
@@ -98,6 +113,12 @@
98<li>You can also check the “Private” box so that the link is saved but only visible to you.<br /></li> 113<li>You can also check the “Private” box so that the link is saved but only visible to you.<br /></li>
99<li>Click <code>Save</code>.<strong>Voila! Your link is now shared.</strong></li> 114<li>Click <code>Save</code>.<strong>Voila! Your link is now shared.</strong></li>
100</ul> 115</ul>
116<h3 id="sharing-links-using-firefox-share">Sharing links using Firefox share</h3>
117<ul>
118<li>Add the sharing service as described above<br /></li>
119<li>When you are visiting a webpage you would like to share with Shaarli, click the Firefox <em>Share</em> button [[images/firefoxshare.png]]<br /></li>
120<li>You can edit your link before and after saving, just like the bookmarklet above.</li>
121</ul>
101<h1 id="other-usage-examples">Other usage examples</h1> 122<h1 id="other-usage-examples">Other usage examples</h1>
102<p>Shaarli can be used:</p> 123<p>Shaarli can be used:</p>
103<ul> 124<ul>
@@ -134,7 +155,7 @@
134<li>The same method <strong>also works for a full-text search</strong> (<em>Search</em> box) <strong>and for the Picture Wall</strong> (want to only see pictures about <code>nature</code>?)<br /></li> 155<li>The same method <strong>also works for a full-text search</strong> (<em>Search</em> box) <strong>and for the Picture Wall</strong> (want to only see pictures about <code>nature</code>?)<br /></li>
135<li>You can also build the URL manually: <code>https://my.shaarli.domain/?do=rss&amp;searchtags=nature</code>, <code>https://my.shaarli.domain/links/?do=picwall&amp;searchterm=poney</code></li> 156<li>You can also build the URL manually: <code>https://my.shaarli.domain/?do=rss&amp;searchtags=nature</code>, <code>https://my.shaarli.domain/links/?do=picwall&amp;searchterm=poney</code></li>
136</ul> 157</ul>
137<p><img src="rss-filter-1.png" /> <img src="rss-filter-2.png" /></p> 158<p><img src="images/rss-filter-1.png" /> <img src="images/rss-filter-2.png" /></p>
138<h1 id="configuration">Configuration</h1> 159<h1 id="configuration">Configuration</h1>
139<h3 id="main-dataoptions.php-file">Main data/options.php file</h3> 160<h3 id="main-dataoptions.php-file">Main data/options.php file</h3>
140<p>To change the configuration, create the file <code>data/options.php</code>, example:</p> 161<p>To change the configuration, create the file <code>data/options.php</code>, example:</p>
@@ -153,10 +174,10 @@
153<li><code>BAN_AFTER (4)</code> : An IP address will be banned after this many failed login attempts.<br /></li> 174<li><code>BAN_AFTER (4)</code> : An IP address will be banned after this many failed login attempts.<br /></li>
154<li><code>BAN_DURATION (1800)</code> : Duration of ban (in seconds). (1800 seconds = 30 minutes)<br /></li> 175<li><code>BAN_DURATION (1800)</code> : Duration of ban (in seconds). (1800 seconds = 30 minutes)<br /></li>
155<li><code>OPEN_SHAARLI (false)</code> : If you set this option to true, anyone will be able to add/modify/delete/import/exports links without having to login.<br /></li> 176<li><code>OPEN_SHAARLI (false)</code> : If you set this option to true, anyone will be able to add/modify/delete/import/exports links without having to login.<br /></li>
156<li><code>HIDE_TIMESTAMPS (false)</code> : If you set this option to true, the date/time of each link will not be displayed (including in RSS Feed).<br /></li> 177<li><code>HIDE_TIMESTAMPS (false)</code> : If you set this option to true, the date/time of each link will not be displayed (including in RSS Feed).#related-software<br /></li>
157<li><code>ENABLE_THUMBNAILS (true)</code> : Enable/disable thumbnails.<br /></li> 178<li><code>ENABLE_THUMBNAILS (true)</code> : Enable/disable thumbnails.<br /></li>
158<li><code>RAINTPL_TMP (tmp/)</code> : Raintpl cache directory (keep the trailing slash!)<br /></li> 179<li><code>RAINTPL_TMP (tmp/)</code> : Raintpl cache directory (keep the trailing slash!)<br /></li>
159<li>`RAINTPL_TPL (tpl/) : Raintpl template directory (keep the trailing slash!). Edit this option if you want to change the rendering template (page structure) used by Shaarli. See <a href="#changing-template">Changing template</a><br /></li> 180<li><code>RAINTPL_TPL (tpl/)</code> : Raintpl template directory (keep the trailing slash!). Edit this option if you want to change the rendering template (page structure) used by Shaarli. See <a href="#changing-template">Changing template</a><br /></li>
160<li><code>CACHEDIR ('cache')</code> : Directory where the thumbnails are stored.<br /></li> 181<li><code>CACHEDIR ('cache')</code> : Directory where the thumbnails are stored.<br /></li>
161<li><code>ENABLE_LOCALCACHE (true)</code> : If you have a limited quota on your webspace, you can set this option to false: Shaarli will not generate thumbnails which need to be cached locally (vimeo, flickr, etc.). Thumbnails will still be visible for the services which do not use the local cache (youtube.com, imgur.com, dailymotion.com, imageshack.us)<br /></li> 182<li><code>ENABLE_LOCALCACHE (true)</code> : If you have a limited quota on your webspace, you can set this option to false: Shaarli will not generate thumbnails which need to be cached locally (vimeo, flickr, etc.). Thumbnails will still be visible for the services which do not use the local cache (youtube.com, imgur.com, dailymotion.com, imageshack.us)<br /></li>
162<li><code>UPDATECHECK_FILENAME ($GLOBALS['config']['DATADIR'].'/lastupdatecheck.txt')</code> : name of the file used to store available shaarli version.<br /></li> 183<li><code>UPDATECHECK_FILENAME ($GLOBALS['config']['DATADIR'].'/lastupdatecheck.txt')</code> : name of the file used to store available shaarli version.<br /></li>
@@ -164,7 +185,8 @@
164<li><code>ENABLE_UPDATECHECK</code>: Determines whether Shaarli check for new releases at <a href="https://github.com/shaarli/Shaarli">https://github.com/shaarli/Shaarli</a><br /></li> 185<li><code>ENABLE_UPDATECHECK</code>: Determines whether Shaarli check for new releases at <a href="https://github.com/shaarli/Shaarli">https://github.com/shaarli/Shaarli</a><br /></li>
165<li><code>SHOW_ATOM (false)</code> : Show an <code>ATOM Feed</code> button next to the <code>Subscribe</code> (RSS) button. ATOM feeds are available at the address <code>?do=atom</code> regardless of this option.<br /></li> 186<li><code>SHOW_ATOM (false)</code> : Show an <code>ATOM Feed</code> button next to the <code>Subscribe</code> (RSS) button. ATOM feeds are available at the address <code>?do=atom</code> regardless of this option.<br /></li>
166<li><code>ARCHIVE_ORG (false)</code> : For each link, display a link to an archived version on archive.org<br /></li> 187<li><code>ARCHIVE_ORG (false)</code> : For each link, display a link to an archived version on archive.org<br /></li>
167<li><code>ENABLE_RSS_PERMALINKS (true)</code>: choose whether the RSS item title link points directly to the link, or to the entry on Shaarli (permalink). <code>true</code> is the original Shaarli bahevior (point directly to the link)</li> 188<li><code>ENABLE_RSS_PERMALINKS (true)</code>: choose whether the RSS item title link points directly to the link, or to the entry on Shaarli (permalink). <code>true</code> is the original Shaarli bahevior (point directly to the link)<br /></li>
189<li><code>HIDE_PUBLIC_LINKS (false)</code>: setting this to true hides all links, even public ones, for non-logged in users.</li>
168</ul> 190</ul>
169<h3 id="changing-theme">Changing theme</h3> 191<h3 id="changing-theme">Changing theme</h3>
170<ul> 192<ul>
@@ -177,14 +199,14 @@
177<li><a href="https://github.com/shaarli/Shaarli/wiki/Download-CSS-styles-for-shaarlis-listed-in-an-opml-file">Download CSS styles for shaarlis listed in an opml file</a></li> 199<li><a href="https://github.com/shaarli/Shaarli/wiki/Download-CSS-styles-for-shaarlis-listed-in-an-opml-file">Download CSS styles for shaarlis listed in an opml file</a></li>
178</ul> 200</ul>
179<h3 id="changing-template">Changing template</h3> 201<h3 id="changing-template">Changing template</h3>
180<p>| 💥 | This feature is currently being worked on and will be improved in the next releases. Experimental. |<br />|---------|---------|</p> 202<p>| WARNING | This feature is currently being worked on and will be improved in the next releases. Experimental. |<br />|---------|---------|</p>
181<ul> 203<ul>
182<li>Find the template you'd like to install. See the list of available templates (TODO). Find it's git clone URL or download the zip archive for the template.<br /></li> 204<li>Find the template you'd like to install. See the list of available templates (TODO). Find it's git clone URL or download the zip archive for the template.<br /></li>
183<li>In your Shaarli <code>tpl/</code> directory, run <code>git clone https://url/of/my-template/</code> or unpack the zip archive. There should now be a <code>my-template/</code> directory under the <code>tpl/</code> dir, containing directly all the template files.<br /></li> 205<li>In your Shaarli <code>tpl/</code> directory, run <code>git clone https://url/of/my-template/</code> or unpack the zip archive. There should now be a <code>my-template/</code> directory under the <code>tpl/</code> dir, containing directly all the template files.<br /></li>
184<li>Edit <code>data/options.php</code> to have Shaarli use this template. Eg.</li> 206<li>Edit <code>data/options.php</code> to have Shaarli use this template. Eg.</li>
185</ul> 207</ul>
186<p><code>$GLOBALS['config']['RAINTPL_TPL'] = 'tpl/my-template/' ;</code></p> 208<p><code>$GLOBALS['config']['RAINTPL_TPL'] = 'tpl/my-template/' ;</code></p>
187<p>You can find a list of compatible templates in <a href="#Related-software">Related Software</a></p> 209<p>You can find a list of compatible templates in <a href="#related-software">Related Software</a></p>
188<h1 id="backup">Backup</h1> 210<h1 id="backup">Backup</h1>
189<p>You have two ways of backing up your database:</p> 211<p>You have two ways of backing up your database:</p>
190<ul> 212<ul>
@@ -248,7 +270,14 @@ SetEnv PHP_VER 5</code></pre>
248<ul> 270<ul>
249<li><a href="Example-patch---add-new-via-field-for-links">Example patch: add a new &quot;via&quot; field for links</a><br /></li> 271<li><a href="Example-patch---add-new-via-field-for-links">Example patch: add a new &quot;via&quot; field for links</a><br /></li>
250<li><a href="Copy-a-Shaarli-installation-over-SSH-SCP,-serve-it-locally-with-php-cli">Copy a Shaarli installation over SSH SCP, serve it locally with php cli</a><br /></li> 272<li><a href="Copy-a-Shaarli-installation-over-SSH-SCP,-serve-it-locally-with-php-cli">Copy a Shaarli installation over SSH SCP, serve it locally with php cli</a><br /></li>
251<li>To display the array representing the data saved in datastore.php, use the following snippet (TODO where is it gone?)</li> 273<li><p>To display the array representing the data saved in datastore.php, use the following snippet</p>
274<pre><code>$data = &quot;tZNdb9MwFIb... &lt;Commented content inside datastore.php&gt;&quot;;
275$out = unserialize(gzinflate(base64_decode($data)));
276echo &quot;&lt;pre&gt;&quot;; // Pretty printing is love, pretty printing is life
277print_r($out);
278echo &quot;&lt;/pre&gt;&quot;;
279exit;</code></pre>
280<p>This will output the internal representation of the datastore, &quot;unobfuscated&quot; (if this can really be considered obfuscation)</p></li>
252</ul> 281</ul>
253<h3 id="changing-timestamp-for-a-link">Changing timestamp for a link</h3> 282<h3 id="changing-timestamp-for-a-link">Changing timestamp for a link</h3>
254<ul> 283<ul>
@@ -256,33 +285,39 @@ SetEnv PHP_VER 5</code></pre>
256<li>Remove <code>type=&quot;hidden&quot;</code> from this line<br /></li> 285<li>Remove <code>type=&quot;hidden&quot;</code> from this line<br /></li>
257<li>A new date/time field becomes available in the edit/new link dialog. You can set the timestamp manually by entering it in the format <code>YYYMMDD_HHMMS</code>.</li> 286<li>A new date/time field becomes available in the edit/new link dialog. You can set the timestamp manually by entering it in the format <code>YYYMMDD_HHMMS</code>.</li>
258</ul> 287</ul>
259<pre><code>$data = &quot;tZNdb9MwFIb... &lt;Commented content inside datastore.php&gt;&quot;;
260$out = unserialize(gzinflate(base64_decode($data)));
261echo &quot;&lt;pre&gt;&quot;; // Pretty printing is love, pretty printing is life
262print_r($out);
263echo &quot;&lt;/pre&gt;&quot;;
264exit;</code></pre>
265<p>This will output the internal representation of the datastore, &quot;unobfuscated&quot; (if this can really be considered obfuscation)</p>
266<h1 id="related-software">Related software</h1> 288<h1 id="related-software">Related software</h1>
267<p>Unofficial but relatedd work on Shaarli. If you maintain one of these, please get in touch with us to help us find a way to adapt your work to our fork. <strong>TODO</strong> contact repos owners to see if they'd like to standardize their work for the community fork.</p> 289<p>Unofficial but relatedd work on Shaarli. If you maintain one of these, please get in touch with us to help us find a way to adapt your work to our fork. <strong>TODO</strong> contact repos owners to see if they'd like to standardize their work for the community fork.</p>
290<h3 id="server-apps">Server apps</h3>
268<ul> 291<ul>
269<li><a href="https://github.com/nodiscc/shaarchiver">shaarchiver</a> - Archive your Shaarli bookmarks and their content<br /></li> 292<li><a href="https://github.com/nodiscc/shaarchiver">shaarchiver</a> - Archive your Shaarli bookmarks and their content<br /></li>
293<li><a href="https://github.com/mknexen/shaarli-river">shaarli-river</a> - An aggregator for shaarlis with many features<br /></li>
294<li><a href="https://github.com/DMeloni/shaarlo">Shaarlo</a> - An aggregator for shaarlis with many features (a very popular running instance among french shaarliers: <a href="http://shaarli.fr/">shaarli.fr</a>)<br /></li>
295<li><a href="https://github.com/BoboTiG/shaarlimages">Shaarlimages</a> - An image-oriented aggregator for Shaarlis<br /></li>
296<li><a href="https://github.com/mknexen/shaarli-api">mknexen/shaarli-api</a> - A REST API for Shaarli</li>
297</ul>
298<h3 id="android-apps">Android apps</h3>
299<ul>
270<li><a href="http://sebsauvage.net/links/?ZAyDzg">Shaarli for Android</a> - Android application that adds Shaarli as a sharing provider<br /></li> 300<li><a href="http://sebsauvage.net/links/?ZAyDzg">Shaarli for Android</a> - Android application that adds Shaarli as a sharing provider<br /></li>
271<li><a href="https://play.google.com/store/apps/details?id=com.dimtion.shaarlier">Shaarlier for Android</a> - Android application to simply add links directly into your Shaarli<br /></li> 301<li><a href="https://github.com/dimtion/Shaarlier">Shaarlier for Android</a> - Android application to simply add links directly into your Shaarli</li>
272<li><a href="https://github.com/mknexen/shaarli-river">shaarli-river</a> - an aggregator for shaarlis with many features<br /></li> 302</ul>
273<li><a href="https://github.com/DMeloni/shaarlo">Shaarlo</a> - an aggregator for shaarlis with many features (<a href="http://shaarli.fr/">Demo</a>)<br /></li> 303<h3 id="themes-templates">Themes &amp; templates</h3>
304<ul>
305<li><a href="https://github.com/AkibaTech/Shaarli---SuperHero-Theme">AkibaTech/Shaarli Superhero Theme</a> - A template/theme for Shaarli<br /></li>
306<li><a href="https://github.com/alexisju/albinomouse-template">alexisju/albinomouse-template</a> - A full template for Shaarli<br /></li>
307<li><a href="https://github.com/dhoko/ShaarliTemplate">dhoko/ShaarliTemplate</a> - A template/theme for Shaarli<br /></li>
274<li><a href="https://github.com/kalvn/shaarli-blocks">kalvn/shaarli-blocks</a> - A template/theme for Shaarli<br /></li> 308<li><a href="https://github.com/kalvn/shaarli-blocks">kalvn/shaarli-blocks</a> - A template/theme for Shaarli<br /></li>
275<li><a href="https://github.com/kalvn/Shaarli-Material">kalvn/Shaarli-Material</a> -<br />A theme (template) based on Google's Material Design for Shaarli, the superfast delicious clone.<br /></li> 309<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.<br /></li>
310<li><a href="https://github.com/misterair/limonade">misterair/Limonade</a> - A fork of (legacy) Shaarli with a new template<br /></li>
276<li><a href="https://github.com/Vinm/Blue-theme-for-Shaarli">Vinm/Blue-theme-for Shaarli</a> - A template/theme for Shaarli (<a href="https://github.com/Vinm/Blue-theme-for-Shaarli/issues/2">unmaintained</a>, compatibility unknown)<br /></li> 311<li><a href="https://github.com/Vinm/Blue-theme-for-Shaarli">Vinm/Blue-theme-for Shaarli</a> - A template/theme for Shaarli (<a href="https://github.com/Vinm/Blue-theme-for-Shaarli/issues/2">unmaintained</a>, compatibility unknown)<br /></li>
277<li><a href="https://github.com/vivienhaese/shaarlitheme">vivienhaese/shaarlitheme</a> - A Shaarli fork meant to be run in an openshift instance<br /></li> 312<li><a href="https://github.com/vivienhaese/shaarlitheme">vivienhaese/shaarlitheme</a> - A Shaarli fork meant to be run in an openshift instance</li>
313</ul>
314<h3 id="integrate-shaarli-with-other-platforms">Integrate Shaarli with other platforms</h3>
315<ul>
278<li><a href="https://github.com/jcsaaddupuy/tt-rss-shaarli">tt-rss-shaarli</a> - <a href="http://tt-rss.org/">TinyTiny RSS</a> plugin that adds support for sharing articles with Shaarli<br /></li> 316<li><a href="https://github.com/jcsaaddupuy/tt-rss-shaarli">tt-rss-shaarli</a> - <a href="http://tt-rss.org/">TinyTiny RSS</a> plugin that adds support for sharing articles with Shaarli<br /></li>
279<li><a href="https://github.com/dhoko/ShaarliTemplate">dhoko/ShaarliTemplate</a> - A template/theme for Shaarli<br /></li> 317<li><a href="https://github.com/ahmet2mir/octopress-shaarli">octopress-shaarli</a> - octoprress plugin to retrieve SHaarli links on the sidebara</li>
280<li><a href="https://github.com/mknexen/shaarli-api">mknexen/shaarli-api</a> - a REST API for Shaarli<br /></li> 318</ul>
281<li><a href="https://github.com/alexisju/albinomouse-template">Albinomouse</a> - A full template for Shaarli<br /></li> 319<h3 id="alternative-to-shaarli">Alternative to Shaarli</h3>
282<li><a href="https://github.com/BoboTiG/shaarlimages">Shaarlimages</a> - An image-oriented aggregator for Shaarlis<br /></li> 320<ul>
283<li><a href="https://github.com/AkibaTech/Shaarli---SuperHero-Theme">Shaarli Superhero Theme</a> - A template/theme for Shaarli<br /></li>
284<li><a href="https://github.com/misterair/limonade">Limonade</a> - A fork of Shaarli with a new template<br /></li>
285<li><a href="https://github.com/ahmet2mir/octopress-shaarli">octopress-shaarli</a> - octoprress plugin to retrieve SHaarli links on the sidebara<br /></li>
286<li><a href="https://github.com/bookieio/bookie">Bookie</a> - Another self-hostable, Free bookmark sharing software, written in Python<br /></li> 321<li><a href="https://github.com/bookieio/bookie">Bookie</a> - Another self-hostable, Free bookmark sharing software, written in Python<br /></li>
287<li><a href="https://github.com/plainmade/unmark">Unmark</a> - An open source to do app for bookmarks (<a href="https://unmark.it/">Homepage</a>)</li> 322<li><a href="https://github.com/plainmade/unmark">Unmark</a> - An open source to do app for bookmarks (<a href="https://unmark.it/">Homepage</a>)</li>
288</ul> 323</ul>
@@ -333,36 +368,48 @@ exit;</code></pre>
333<h3 id="directory-structure">Directory structure</h3> 368<h3 id="directory-structure">Directory structure</h3>
334<p>Here is the directory structure of Shaarli and the purpose of the different files:</p> 369<p>Here is the directory structure of Shaarli and the purpose of the different files:</p>
335<pre><code> index.php : Main program. 370<pre><code> index.php : Main program.
371 application/ : Shaarli classes
372 ├── LinkDB.php
373 └── Utils.php
374 tests/ : Shaarli unitary &amp; functional tests
375 ├── LinkDBTest.php
376 ├── utils # utilities to ease testing
377 │ └── ReferenceLinkDB.php
378 └── UtilsTest.php
336 COPYING : Shaarli license. 379 COPYING : Shaarli license.
337 inc/ : Includes (libraries, CSS…) 380 inc/ : Includes (libraries, CSS…)
338 shaarli.css : Shaarli stylesheet. 381 ├── awesomplete.*: tags autocompletion library
339 jquery.min.js : jQuery javascript library. 382 ├── blazy.*: picture wall lazy image loading library
340 jquery-ui.min.js : jQuery-UI javascript library. 383 ├── shaarli.css, reset.css : Shaarli stylesheet.
341 jquery-MIT-LICENSE.txt: jQuery license. 384 ├── qr.* : qr code generation library
342 jquery.lazyload.min.js: LazyLoad javascript library. 385 └──rain.tpl.class.php : RainTPL templating library.
343 rain.tpl.class.php : RainTPL templating library.
344 tpl/ : RainTPL templates for Shaarli. They are used to build the pages. 386 tpl/ : RainTPL templates for Shaarli. They are used to build the pages.
345 images/ : Images and icons used in Shaarli. 387 images/ : Images and icons used in Shaarli.
346 data/ : Directory where data is stored (bookmark database, configuration, logs, banlist…) 388 data/ : Directory where data is stored (bookmark database, configuration, logs, banlist…)
347 config.php : Shaarli configuration (login, password, timezone, title…) 389 ├── config.php : Shaarli configuration (login, password, timezone, title…)
348 datastore.php : Your link database (compressed). 390 ├── datastore.php : Your link database (compressed).
349 ipban.php : IP address ban system data. 391 ├── ipban.php : IP address ban system data.
350 lastupdatecheck.txt : Update check timestamp file (used to check every 24 hours if a new version of Shaarli is available). 392 ├── lastupdatecheck.txt : Update check timestamp file (used to check every 24 hours if a new version of Shaarli is available).
351 log.txt : login/IPban log. 393 └──log.txt : login/IPban log.
352 cache/ : Directory containing the thumbnails cache. This directory is automatically created. You can erase it anytime you want. 394 cache/ : Directory containing the thumbnails cache. This directory is automatically created. You can erase it anytime you want.
353 tmp/ : Temporary directory for compiled RainTPL templates. This directory is automatically created. You can erase it anytime you want.</code></pre> 395 tmp/ : Temporary directory for compiled RainTPL templates. This directory is automatically created. You can erase it anytime you want.</code></pre>
396<h3 id="development">Development</h3>
397<ul>
398<li><a href="https://github.com/shaarli/Shaarli/tree/master/CONTRIBUTING.md">Contributing to Shaarli</a><br /></li>
399<li><a href="Running-unit-tests">Running unit tests</a><br /></li>
400<li>Patches should try to stick to the <a href="http://www.php-fig.org/psr/">PHP Standard Recommendations</a> (PSR), especially:<br /></li>
401<li><a href="http://www.php-fig.org/psr/psr-1/">PSR-1</a> - Basic Coding Standard<br /></li>
402<li><a href="http://www.php-fig.org/psr/psr-2/">PSR-2</a> - Coding Style Guide</li>
403</ul>
354<h3 id="why-not-use-a-real-database-files-are-slow">Why not use a real database ? Files are slow !</h3> 404<h3 id="why-not-use-a-real-database-files-are-slow">Why not use a real database ? Files are slow !</h3>
355<p>Does browsing <a href="http://sebsauvage.net/links/">this page</a> feel slow ? Try browsing older pages, too.</p> 405<p>Does browsing <a href="http://sebsauvage.net/links/">this page</a> feel slow ? Try browsing older pages, too.</p>
356<p>It's not slow at all, is it ? And don't forget the database contains more than 16000 links, and it's on a shared host, with 32000 visitors/day for my website alone. And it's still damn fast. Why ?</p> 406<p>It's not slow at all, is it ? And don't forget the database contains more than 16000 links, and it's on a shared host, with 32000 visitors/day for my website alone. And it's still damn fast. Why ?</p>
357<p>The data file is only 3.7 Mb. It's read 99% of the time, and is probably already in the operation system disk cache. So generating a page involves no I/O at all most of the time.</p> 407<p>The data file is only 3.7 Mb. It's read 99% of the time, and is probably already in the operation system disk cache. So generating a page involves no I/O at all most of the time.</p>
358<h1 id="wiki---todo">Wiki - TODO</h1> 408<h1 id="wiki---todo">Wiki - TODO</h1>
359<ul> 409<ul>
360<li>Translate (new page can be called Home.fr, Home.es ...) and linked from Home<br /></li> 410<li>translate (new page can be called Home.fr, Home.es ... and linked from Home)<br /></li>
361<li>add more screenshots<br /></li> 411<li>add more screenshots<br /></li>
362<li>add developer documentation (storage architecture, classes and functions, security handling, ...)<br /></li> 412<li>add developer documentation (storage architecture, classes and functions, security handling, ...)</li>
363<li>Contact related projects<br /></li>
364<li>Add a Table of Contents to the wiki (can be added to the sidebar)</li>
365</ul> 413</ul>
366<p>...</p>
367</body> 414</body>
368</html> 415</html>