]> git.mxchange.org Git - friendica.git/blobdiff - doc/Developers-Intro.md
Merge pull request #3944 from annando/always-preview
[friendica.git] / doc / Developers-Intro.md
index 61b300b0cc2f5c876f53e6dd51d7b7b613bcfabd..be44e8187b91b653b284131f46220147585b84fb 100644 (file)
@@ -6,8 +6,7 @@ Where to get started to help improve Friendica?
 Do you want to help us improve Friendica?
 Here we have compiled some hints on how to get started and some tasks to help you choose.
 A project like Friendica is the sum of many different contributions.
-**Very different skills are required to make good software.
-Some of them involve coding, others do not.**
+**Very different skills are required to make good software, not all of them involve coding!**
 We are looking for helpers in all areas, whether you write text or code, whether you spread the word to convince people or design new icons.
 Whether you feel like an expert or like a newbie - join us with your ideas!
 
@@ -16,14 +15,14 @@ Contact us
 
 The discussion of Friendica development takes place in the following Friendica forums:
 
-* The main [forum for Friendica development](https://helpers.pyxis.uberspace.de/profile/developers)
+* The main [forum for Friendica development](https://forum.friendi.ca/profile/developers)
 * The [forum for Friendica theme development](https://friendica.eu/profile/ftdevs)
 
 Help other users
 ---
 
 Remember the questions you had when you first tried Friendica?
-A good place to start can be to help new people find their way around Friendica in the [general support forum](https://helpers.pyxis.uberspace.de/profile/helpers).
+A good place to start can be to help new people find their way around Friendica in the [general support forum](https://forum.friendi.ca/prufile/helpers).
 Welcome them, answer their questions, point them to documentation or ping other helpers directly if you can't help but think you know who can.
 
 Translation
@@ -47,6 +46,16 @@ We can't promise we have the right skills in the group but we'll try.
 Programming
 ---
 
+### Composer
+
+Friendica uses [Composer](https://getcomposer.org) to manage dependencies libraries and the class autoloader both for libraries and namespaced Friendica classes.
+
+It's a command-line tool that downloads required libraries into the `vendor` folder and makes any namespaced class in `src` available through the whole application through `boot.php`.
+
+* [Class autoloading](help/autoloader)
+* [Using Composer](help/Composer)
+* [How To Move Classes to `src`](help/Developer-How-To-Move-Classes-to-src)
+
 ###Coding standards
 
 For the sake of consistency between contribution and general code readability, Friendica follows the widespread [PSR-2 coding standards](http://www.php-fig.org/psr/psr-2/) to the exception of a few rules.
@@ -55,6 +64,7 @@ Here's a few primers if you are new to Friendica or to the PSR-2 coding standard
  * By default, strings are enclosed in single quotes, but feel free to use double quotes if it makes more sense (SQL queries, adding tabs and line feeds).
  * Operators are wrapped by spaces, e.g. `$var === true`, `$var = 1 + 2` and `'string' . $concat . 'enation'`
  * Braces are mandatory in conditions
+ * Boolean operators are `&&` and `||` for PHP conditions, `AND` and `OR` for SQL queries
  * No closing PHP tag
  * No trailing spaces
 
@@ -116,10 +126,11 @@ If you want to get involved here:
 * Look at the first steps that were made (e.g. the clean theme).
 Ask us to find out whom to talk to about their experiences.
 * Talk to design people if you know any.
-* Let us know about your plans [in the dev forum](https://helpers.pyxis.uberspace.de/profile/developers) and the [theme developer forum](https://friendica.eu/profile/ftdevs).
+* Let us know about your plans [in the dev forum](https://forum.friendi.ca/profile/developers) and the [theme developer forum](https://friendica.eu/profile/ftdevs).
 Do not worry about cross-posting.
 
 ###Client software
+
 As Friendica is using a [Twitter/GNU Social compatible API](help/api) any of the clients for those platforms should work with Friendica as well.
 Furthermore there are several client projects, especially for use with Friendica.
 If you are interested in improving those clients, please contact the developers of the clients directly.