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.
24 ├── admin.php : adminitration interface, also permits to download files
25 ├── f.php : permits to download files or show the download page
26 ├── index.php : only provide a html/javascript client to interact with API
27 ├── script.php : API interface and it's html documentation
28 ├── install.php : installation script
29 ├── tos.php : terms of use the user may edit
31 │ ├── config.local.php : user's parameters
32 │ ├── config.original.php : default parameters with their documentation
33 │ ├── functions_*.js : javascript functions for html/javascript client
34 │ ├── functions.php : core functions and tools of jirafeau
35 │ ├── locales : langage folder, contain all langage files
39 ├── media : folder containing all skins
40 └── var-xxxxxxx : folder containing all data
41 ├── async : chunks of uploaded files
42 ├── files : all files that has been successfully uploaded
43 └── links : all links pointing to files with meta-informations
48 Translation may be add via [Jirafeau's Weblate](https://hosted.weblate.org/projects/jirafeau/master/).
52 - PHP function keywords are alone on a line
53 - Braces "{" must be put in a new line
54 - Files must be in UTF-8 without BOM and use Unix Line Endings (LF)
56 The whole project is not clean about that yet, feel free to fix :)
60 Please create one branch for each feature and send one merge request for each branch.
62 Dont squash several changes or commits into one merge request as this is hard to review.