aboutsummaryrefslogtreecommitdiffhomepage
path: root/doc/Directory-structure.html
blob: 2369950abe767817bfb3cfceb333a678fa5e7ac6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="generator" content="pandoc">
  <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">
  <title>Shaarli – Directory structure</title>
  <style type="text/css">code{white-space: pre;}</style>
  <style type="text/css">
div.sourceCode { overflow-x: auto; }
table.sourceCode, tr.sourceCode, td.lineNumbers, td.sourceCode {
  margin: 0; padding: 0; vertical-align: baseline; border: none; }
table.sourceCode { width: 100%; line-height: 100%; }
td.lineNumbers { text-align: right; padding-right: 4px; padding-left: 4px; color: #aaaaaa; border-right: 1px solid #aaaaaa; }
td.sourceCode { padding-left: 5px; }
code > span.kw { color: #007020; font-weight: bold; } /* Keyword */
code > span.dt { color: #902000; } /* DataType */
code > span.dv { color: #40a070; } /* DecVal */
code > span.bn { color: #40a070; } /* BaseN */
code > span.fl { color: #40a070; } /* Float */
code > span.ch { color: #4070a0; } /* Char */
code > span.st { color: #4070a0; } /* String */
code > span.co { color: #60a0b0; font-style: italic; } /* Comment */
code > span.ot { color: #007020; } /* Other */
code > span.al { color: #ff0000; font-weight: bold; } /* Alert */
code > span.fu { color: #06287e; } /* Function */
code > span.er { color: #ff0000; font-weight: bold; } /* Error */
code > span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
code > span.cn { color: #880000; } /* Constant */
code > span.sc { color: #4070a0; } /* SpecialChar */
code > span.vs { color: #4070a0; } /* VerbatimString */
code > span.ss { color: #bb6688; } /* SpecialString */
code > span.im { } /* Import */
code > span.va { color: #19177c; } /* Variable */
code > span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
code > span.op { color: #666666; } /* Operator */
code > span.bu { } /* BuiltIn */
code > span.ex { } /* Extension */
code > span.pp { color: #bc7a00; } /* Preprocessor */
code > span.at { color: #7d9029; } /* Attribute */
code > span.do { color: #ba2121; font-style: italic; } /* Documentation */
code > span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
code > span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
code > span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
  </style>
  <link rel="stylesheet" href="github-markdown.css">
  <!--[if lt IE 9]>
    <script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
  <![endif]-->
</head>
<body>
<div id="local-sidebar">
<ul>
<li><a href="Home.html">Home</a></li>
<li>Installation
<ul>
<li><a href="Download.html">Download</a></li>
<li><a href="Server-requirements.html">Server requirements</a></li>
<li><a href="Server-configuration.html">Server configuration</a></li>
<li><a href="Server-security.html">Server security</a></li>
<li><a href="Shaarli-installation.html">Shaarli installation</a></li>
<li><a href="Shaarli-configuration.html">Shaarli configuration</a></li>
<li><a href="Plugin-installation-&amp;-configuration.html">Plugin installation &amp; configuration</a></li>
</ul></li>
<li><a href="Docker.html">Docker</a></li>
<li><a href="Plugin-list.html">Plugin list</a></li>
<li><a href="Usage.html">Usage</a>
<ul>
<li><a href="Sharing-button.html">Sharing button</a> (bookmarklet)</li>
<li><a href="Browsing-and-Searching.html">Browsing and Searching</a></li>
<li><a href="Firefox-share.html">Firefox share</a></li>
<li><a href="RSS-feeds.html">RSS feeds</a></li>
</ul></li>
<li>How To
<ul>
<li><a href="Backup,-restore,-import-and-export.html">Backup, restore, import and export</a></li>
<li><a href="Upgrade-from-original-sebsauvage/Shaarli.html">Upgrade from original sebsauvage/Shaarli</a></li>
<li><a href="Copy-an-existing-installation-over-SSH-and-serve-it-locally.html">Copy an existing installation over SSH and serve it locally</a></li>
<li><a href="Create-and-serve-multiple-Shaarlis-(farm).html">Create and serve multiple Shaarlis (farm)</a></li>
<li><a href="Download-CSS-styles-from-an-OPML-list.html">Download CSS styles from an OPML list</a></li>
<li><a href="Datastore-hacks.html">Datastore hacks</a></li>
</ul></li>
<li><a href="Troubleshooting.html">Troubleshooting</a></li>
<li><a href="Development.html">Development</a>
<ul>
<li><a href="GnuPG-signature.html">GnuPG signature</a></li>
<li><a href="Coding-guidelines.html">Coding guidelines</a></li>
<li><a href="Directory-structure.html">Directory structure</a></li>
<li><a href="3rd-party-libraries.html">3rd party libraries</a></li>
<li><a href="Plugin-System.html">Plugin System</a></li>
<li><a href="Release-Shaarli.html">Release Shaarli</a></li>
<li><a href="Security.html">Security</a></li>
<li><a href="Static-analysis.html">Static analysis</a></li>
<li><a href="Theming.html">Theming</a></li>
<li><a href="Unit-tests.html">Unit tests</a></li>
</ul></li>
<li>About
<ul>
<li><a href="FAQ.html">FAQ</a></li>
<li><a href="Community-&amp;-Related-software.html">Community &amp; Related software</a></li>
<li><a href="TODO.html">TODO</a></li>
</ul></li>
</ul>
</div>
<h1 id="directory-structure">Directory structure</h1>
<p>Here is the directory structure of Shaarli and the purpose of the different files:</p>
<div class="sourceCode"><pre class="sourceCode bash"><code class="sourceCode bash">    <span class="kw">index.php</span>        <span class="co"># Main program</span>
    <span class="kw">application/</span>     <span class="co"># Shaarli classes</span>
        ├── <span class="kw">LinkDB.php</span>
        └── <span class="kw">Utils.php</span>
    <span class="kw">tests/</span>       <span class="co"># Shaarli unitary &amp; functional tests</span>
        ├── <span class="kw">LinkDBTest.php</span>
        ├── <span class="kw">utils</span>  <span class="co"># utilities to ease testing</span>
        │   └── <span class="kw">ReferenceLinkDB.php</span>
        └── <span class="kw">UtilsTest.php</span>
    <span class="kw">COPYING</span>          <span class="co"># Shaarli license</span>
    <span class="kw">inc/</span>             <span class="co"># static assets and 3rd party libraries</span>
        ├── <span class="kw">awesomplete.*</span>          <span class="co"># tags autocompletion library</span>
        ├── <span class="kw">blazy.*</span>                <span class="co"># picture wall lazy image loading library</span>
        ├── <span class="kw">shaarli.css</span>, reset.css <span class="co"># Shaarli stylesheet.</span>
        ├── <span class="kw">qr.*</span>                   <span class="co"># qr code generation library</span>
        └──<span class="kw">rain.tpl.class.php</span>      <span class="co"># RainTPL templating library</span>
    <span class="kw">tpl/</span>             <span class="co"># RainTPL templates for Shaarli. They are used to build the pages.</span>
    <span class="kw">images/</span>          <span class="co"># Images and icons used in Shaarli</span>
    <span class="kw">data/</span>            <span class="co"># data storage: bookmark database, configuration, logs, banlist…</span>
        ├── <span class="kw">config.php</span>             <span class="co"># Shaarli configuration (login, password, timezone, title…)</span>
        ├── <span class="kw">datastore.php</span>          <span class="co"># Your link database (compressed).</span>
        ├── <span class="kw">ipban.php</span>              <span class="co"># IP address ban system data</span>
        ├── <span class="kw">lastupdatecheck.txt</span>    <span class="co"># Update check timestamp file</span>
        └──<span class="kw">log.txt</span>                 <span class="co"># login/IPban log.</span>
    <span class="kw">cache/</span>           <span class="co"># thumbnails cache</span>
                     <span class="co"># This directory is automatically created. You can erase it anytime you want.</span>
    <span class="kw">tmp/</span>             <span class="co"># Temporary directory for compiled RainTPL templates.</span>
                     <span class="co"># This directory is automatically created. You can erase it anytime you want.</span></code></pre></div>
</body>
</html>