@@ -43,62 +43,80 @@
4343<h1>How to contribute<a class="headerlink" href="#how-to-contribute" title="Permalink to this headline">¶</a></h1>
4444<div class="section" id="prime-directives-privacy-hackability">
4545<h2>Prime directives: Privacy, Hackability<a class="headerlink" href="#prime-directives-privacy-hackability" title="Permalink to this headline">¶</a></h2>
46−<p>Searx has 2 prime directives, privacy-by-design and hackability. The
47−hackability comes in at least 3 levels:</p>
46+<p>Searx has two prime directives, privacy-by-design and hackability. The
47+hackability comes in three levels:</p>
4848<ul class="simple">
49−<li>support for search engines</li>
50−<li>plugins for altering search behaviour</li>
51−<li>hacking searx itself.</li>
49+<li>support of search engines</li>
50+<li>plugins to alter search behaviour</li>
51+<li>hacking searx itself</li>
5252</ul>
53−<p>Happy hacking. Observe the lack of “world domination” among the
54−directives, searx has no intentions for wide mass-adoption, rounded
55−corners, etc. The prime directive: “privacy” - deserves a seperate
56−chapter, as it’s quite uncommon unfortunately, here it goes:</p>
53+<p>Note the lack of “world domination” among the directives.
54+Searx has no intention of wide mass-adoption, rounded
55+corners, etc. The prime directive “privacy” deserves a separate
56+chapter, as it’s quite uncommon unfortunately.</p>
5757<div class="section" id="privacy-by-design">
5858<h3>Privacy-by-design<a class="headerlink" href="#privacy-by-design" title="Permalink to this headline">¶</a></h3>
59−<p>Searx is a privacy-respecting, hackable meta-search engine. It was born
60−out of the need for a privacy-respecing search facility that can be
61−expanded easily to maximise both its search and it’s privacy protecting
62−capabilities.</p>
63−<p>Consequences of Privacy-by-design are that some widely used features
64−work differently or not by default or at all. If some feature reduces
65−the privacy perserving aspects of searx, it should by default be
66−switched of, if implemented at all. There is enough search engines
67−already out there providing such features. = Since privacy-preservation
68−is a prime goal, if some feature does reduce the protection of searx and
69−is implemented, care should be taken to educate the user about the
70−consequences of choosing to enable this. Further features which
71−implement widely known features in a manner that protects privacy but
72−thus deviate from the users expectations should also be explained to the
73−user. Also if you think that something works weird with searx, maybe
74−it’s because of the tool you use is designed in a way to interfere with
75−privacy respect, submiting a bugreport to the vendor of the tool that
76−misbehaves might be a good feedback for the vendor to reconsider his
77−disrespect towards his customers (e.g. GET vs POST requests in various
78−browsers).</p>
59+<p>Searx was born out of the need for a privacy-respecting search tool
60+which can be extended easily to maximize both its search and its
61+privacy protecting capabilities.</p>
62+<p>A few widely used features work differently or turned off by default or not implemented
63+at all as a consequence of privacy-by-design.</p>
64+<p>If a feature reduces the privacy preserving aspects of searx, it
65+should be switched off by default or should not implemented at all.
66+There are plenty of search engines already providing such features.
67+If a feature reduces the protection of searx, users must be
68+informed about the effect of choosing to enable it. Features
69+that protect privacy but differ from the expectations of the
70+user should also be explained.</p>
71+<p>Also, if you think that something works weird with searx,
72+it’s might be because of the tool you use is designed in a way to interfere with
73+the privacy respect. Submitting a bugreport to the vendor of the tool that
74+misbehaves might be a good feedback to reconsider the disrespect to
75+its customers (e.g. GET vs POST requests in various browsers).</p>
7976<p>Remember the other prime directive of searx is to be hackable, so if the
8077above privacy concerns do not fancy you, simply fork it.</p>
78+<p>Happy hacking.</p>
8179</div>
8280</div>
8381<div class="section" id="code">
8482<h2>Code<a class="headerlink" href="#code" title="Permalink to this headline">¶</a></h2>
85−<p>Code modifications are accepted in pull requests, don’t forget to add
86−yourself to the AUTHORS file.</p>
87−<p>Python code follows all the pep8 standards except maximum line width
88−which is 120 char.</p>
89−<p>Please be sure that the submitted code doesn’t break existing tests and
90−follows coding conventions.</p>
91−<p>If new functionality implemented, tests are highly appreciated.</p>
83+<p>In order to submit a patch, please follow the steps below:</p>
84+<ul class="simple">
85+<li>Follow coding conventions.<ul>
86+<li>PEP8 standards apply, except the convention of line length</li>
87+<li>Maximum line length is 120 characters</li>
88+</ul>
89+</li>
90+<li>Check if your code breaks existing tests. If so, update the tests or fix your code.</li>
91+<li>If your code can be unit-tested, add unit tests.</li>
92+<li>Add yourself to the AUTHORS file.</li>
93+<li>Create a pull request.</li>
94+</ul>
9295</div>
9396<div class="section" id="translation">
9497<h2>Translation<a class="headerlink" href="#translation" title="Permalink to this headline">¶</a></h2>
95−<p>Translation currently happens on
96−<a class="reference external" href="https://transifex.com/projects/p/searx">transifex</a>. Please do not
97−update translation files in the repo.</p>
98+<p>Translation currently takes place on
99+<a class="reference external" href="https://transifex.com/projects/p/searx">transifex</a>.</p>
100+<p><strong>Please, do not update translation files in the repo.</strong></p>
98101</div>
99102<div class="section" id="documentation">
100103<h2>Documentation<a class="headerlink" href="#documentation" title="Permalink to this headline">¶</a></h2>
101−<p>The main place of the documentation is this wiki, updates are welcome.</p>
104+<p>The documentation is built using Sphinx. So in order to be able to generate the required
105+files, you have to install it on your system. (It can be installed easily using pip.)</p>
106+<ol class="arabic simple">
107+<li>Checkout the gh-pages branch.</li>
108+<li>Edit the rst file you wish to update. Or create a new rst file and place it under the appropriate folder.</li>
109+<li>Build the documentation using Sphinx.</li>
110+<li>Add the updated and created files of these extension:<ul>
111+<li>.rst</li>
112+<li>.html</li>
113+<li>.txt</li>
114+</ul>
115+</li>
116+</ol>
117+<ol class="arabic simple" start="6">
118+<li>Create a pull request.</li>
119+</ol>
102120</div>
103121</div>
104122