5 this document is made for newcomers in Jirafeau who are digging into the code.
9 Jirafeau is made in the [KISS](http://en.wikipedia.org/wiki/KISS_principle) way (Keep It Simple, Stupid).
11 It is meant to be a simple filehosting service, simple to use, simple to install, simple to maintain.
13 This project won't evolve to a file manager and will focus to keep a very few dependencies.
15 So things like a markdown parser for the ToS or E-Mail tasks would be usefull for sure, but may be [rejected](https://gitlab.com/mojo42/Jirafeau/issues/37#note_1191566) since they would a lot of dependencies and makes the project more complex.
19 Here is a little explaination of Jirafeau's arboresence in a simplified
20 view only to show the most importants files and their role.
23 ├── admin.php : adminitration interface, also permits to download files
24 ├── f.php : permits to download files or show the download page
25 ├── index.php : only provide a html/javascript client to interact with API
26 ├── script.php : API interface and it's html documentation
27 ├── install.php : installation script
28 ├── tos.php : terms of use the user may edit
30 │ ├── config.local.php : user's parameters
31 │ ├── config.original.php : default parameters with their documentation
32 │ ├── functions_*.js : javascript functions for html/javascript client
33 │ ├── functions.php : core functions and tools of jirafeau
34 │ ├── locales : langage folder, contain all langage files
38 ├── media : folder containing all skins
39 └── var-xxxxxxx : folder containing all data
40 ├── async : chunks of uploaded files
41 ├── files : all files that has been successfully uploaded
42 └── links : all links pointing to files with meta-informations
46 Translation may be add via [Jirafeau's Weblate](https://hosted.weblate.org/projects/jirafeau/master/).
50 - PHP function keywords are alone on a line
51 - Braces "{" must be put in a new line
52 - Files must be in UTF-8 without BOM and use Unix Line Endings (LF)
54 The whole project is not clean about that yet, feel free to fix :)
58 Please create one branch for each feature and send one merge request for each branch.
60 Dont squash several changes or commits into one merge request as this is hard to review.