Setting up your workstation for Joomla development: Difference between revisions

From Joomla! Documentation

Wilsonge (talk | contribs)
Remove merge request
N6REJ (talk | contribs)
m added Bearsampp dev server
 
(19 intermediate revisions by 4 users not shown)
Line 1: Line 1:
This is a trial to better structure all the wiki pages around developing on and with joomla.
<noinclude><languages /></noinclude>
Such as:
<translate><!--T:1--> This page is centered around developing on and with Joomla. If you find yourself stuck following any of these tutorials, please visit [[jforum:810|our Installation forums]] for more information.</translate>
* [[Setting up your workstation for Joomla! development]].  A complete step-by-step guide to installing the Eclipse IDE on your local workstation for Joomla! development.


== Installing a web server ==
<translate>== Installing a Web Server == <!--T:2--></translate>
Installing a typical web server environment is very easy with following [[wikipedia:List_of_AMP_packages|AMP-packages]] (Apache, MySQL, PHP).
<translate><!--T:3--> Installing a typical web server environment is easy with [[wikipedia:List_of_AMP_packages|AMP packages]] (Apache, MySQL, PHP).</translate>
* '''[http://www.apachefriends.org/en/xampp.html XAMPP] (Mutliple OS)'''
* <translate><!--T:4--> [https://www.apachefriends.org/ XAMPP] at Apache Friends (Multiple operating systems)</translate>
** [[Configuring a XAMPP server for joomla development]]
** <translate><!--T:5--> [[XAMPP]] (for Joomla 1.5 and 2.5 please view [[J2.5:XAMPP|XAMPP for Joomla 2.5]])</translate>
** [[Xampp]]
* <translate><!--T:44--> [https://bearsampp.com/ Bearsampp] Full stack portable dev server (Windows)</translate>
* '''[[wikipedia:LAMP (software bundle)|LAMP]]''' (Linux)
* <translate><!--T:6--> [[wikipedia:LAMP (software bundle)|LAMP]] (Linux)</translate>
**[[Configuring a LAMPP server for PHP development]]
**<translate><!--T:7--> [[Configuring a LAMPP server for PHP development]]</translate>
* '''[[wikipedia:WAMP|WAMP]] (Windows)''',.  A good choice for for a local server environment for windows is [http://www.wampserver.com/en/ WampServer].  
* <translate><!--T:8--> [[wikipedia:WAMP|WAMP]] (Windows) A good choice for a local server environment for Windows is [https://www.wampserver.com/en/ WampServer].</translate>
* '''[[wikipedia: MAMP|MAMP]] (Macintosh / OS X)''' [http://www.mamp.info/en/download.html MAMP by living-e AG] may be a good choice.
* <translate><!--T:9--> [[wikipedia: MAMP|MAMP]] (Macintosh / OS X) [https://www.mamp.info/en/windows/ MAMP] may be a good choice.</translate>
If you want use XDebug for debuggin, you'll need to tune php settings
* <translate><!--T:41--> [https://bitnami.com/stack/joomla Bitnami] also offers a Joomla stack that you can install locally or on a remote server.</translate>
* [[Edit PHP.INI File for XDebug]]
<translate><!--T:10--> If you want use XDebug for debugging, you'll need to tune the PHP settings</translate>
* <translate><!--T:11--> [[Edit PHP.INI File for XDebug]]</translate>


== Installing an IDE / Editor (and debugging)==
<translate>== Installing an IDE/Editor (and Debugging)== <!--T:12--></translate>
*[[wikipedia:Eclipse (software)|Eclipse IDE]]
* <translate><!--T:42--> [[wikipedia:Visual_Studio_Code|Visual Studio Code]]</translate>
** [[Configuring Eclipse for joomla development]]
** <translate> <!--T:43--> [[Visual_Studio_Code|Configuring Visual Studio Code for Joomla development]]</translate>
** [[How to configure Eclipse IDE for PHP development]]
*<translate><!--T:25--> PhpStorm IDE</translate>
** [[Configuring Eclipse IDE for PHP development]]
**<translate><!--T:26--> [https://www.jetbrains.com/help/phpstorm/joomla-specific-coding-assistance.html Joomla! Development with PhpStorm] </translate>
** [http://community.joomla.org/blogs/community/828-webinar-using-eclipse-for-joomla-development.html Using Eclipse for Joomla! Development] Video webinar demonstrating overview of Eclipse features for Joomla! development
* <translate><!--T:13--> [[wikipedia:Eclipse (software)|Eclipse IDE]]</translate>
* [[wikipedia:ActiveState_Komodo|Komodo Edit]]
** <translate><!--T:14--> [[Configuring Eclipse for joomla development]]</translate>
** [[Configuring Komodo Edit for Joomla Code Completion]]
** <translate><!--T:15--> [[How to configure Eclipse IDE for PHP development]]</translate>
* [[wikipedia:NetBeans|NetBeans]]
** <translate><!--T:16--> [[Configuring Eclipse IDE for PHP development]]</translate>
** [[NetBeans overview]]
** <translate><!--T:17--> [https://community.joomla.org/blogs/community/webinar-using-eclipse-for-joomla-development.html Using Eclipse for Joomla! Development] Video webinar demonstrating overview of Eclipse features for Joomla! development</translate>
* UltraEdit, Notepad++, ...
* <translate><!--T:18--> [[wikipedia:ActiveState_Komodo|Komodo Edit]]</translate>
*Sublime Text 2 Editor
** <translate><!--T:19--> [[Configuring Komodo Edit for Joomla Code Completion]]</translate>
**[https://tutsplus.com/course/improve-workflow-in-sublime-text-2 Perfect Workflow in Sublime Text 2 tutorial]
* <translate><!--T:20--> [[wikipedia:NetBeans|NetBeans]]</translate>
*PhpStorm IDE
* <translate><!--T:22--> UltraEdit, Notepad++...</translate>
**[https://confluence.jetbrains.com/display/PhpStorm/Joomla%21+Development+using+PhpStorm Joomla! Development with PhpStorm]
*<translate><!--T:23--> Sublime Text 2 Editor</translate>
**<translate><!--T:24--> [https://code.tutsplus.com/courses/perfect-workflow-in-sublime-text-2 Perfect Workflow in Sublime Text 2 tutorial]</translate>


=== Debugging specifics ===
<translate>=== Debugging Specifics === <!--T:27--></translate>
* [[Running Automated Tests for the Joomla CMS]]
* <translate><!--T:28--> [[Running Automated Tests for the Joomla CMS]]</translate>
* [[How to debug your code]]
* <translate><!--T:29--> [[How to debug your code]]</translate>


== Using Git ==
<translate>== Using Git == <!--T:30--></translate>
The CMS project uses the Git version control system and the CMS repository is stored on Github here: [https://github.com/joomla/joomla-cms https://github.com/joomla/joomla-cms]. Bugs are fixed in the master branch of this repository, and normally there are bug fixes and changes in the master branch that are more recent than the latest released Joomla version. For this reason, when we test and code bug fixes, we normally use the latest code from the master branch on Github, not the latest released version. Therefore, Bug Squad testers and coders need to understand how to use Git and the Github repository.
<translate><!--T:31--> The CMS project uses the Git version control system and the CMS repository is stored on [https://github.com/joomla/joomla-cms GitHub]. Bugs are fixed in the master branch of this repository, and normally there are bug fixes and changes in the master branch that are more recent than the latest released Joomla version. For this reason, when we test and code bug fixes, we normally use the latest code from the master branch on GitHub, not the latest released version. Therefore, Bug Squad testers and coders need to understand how to use Git and the GitHub repository.</translate>


* For testing and tracking changes, please refer to [[Git for Testers and Trackers]].
* <translate><!--T:32--> For testing and tracking changes, please refer to [[Git for Testers and Trackers]].</translate>
* For creating your first code change (called a Pull Request) please see [[Working with git and github/My first pull request]]
* <translate><!--T:33--> For creating your first code change (called a Pull Request), see [[Working with git and github/My first pull request]]</translate>
* For working with git, please see [[Git for Coders]].
* <translate><!--T:34--> For working with Git, please see [[Git for Coders]].</translate>


== Related ==
<translate>== Related == <!--T:35--></translate>
* [[Setting up your workstation for PHP development]]
* <translate><!--T:36--> [[Setting up your workstation for PHP development]]</translate>
* [[Joomla Issue shortcut]]
* <translate><!--T:37--> [[Joomla Issue shortcut]]</translate>
* [[Browser Shortcut Issue Tracker]]
* <translate><!--T:38--> [[Browser Shortcut Issue Tracker]]</translate>
* [[J4.x:Setting_Up_Your_Local_Environment|Setting up your local environment for Joomla 4]]
* [[J4.x:Setting_Up_Your_Local_Environment|<translate><!--T:39--> Setting up your local environment for Joomla 4]]</translate>
Help is appreciated finding related pages and making these pages less redundant.
<translate><!--T:40--> Help is appreciated finding related pages and making these pages less redundant.</translate>


 
<noinclude>
[[Category:Development]]
<translate>
[[Category:Tutorials]]
<!--T:44-->
[[Category:Development{{#translation:}}]]
[[Category:Tutorials{{#translation:}}]]
[[Category:Beginner_Development{{#translation:}}]]
[[Category:Server configurations{{#translation:}}]]
[[Category:Server setup local{{#translation:}}]]
[[Category:Server configurations{{#translation:}}]]
[[Category:Bug Squad{{#translation:}}]]
[[Category:IDE (Integrated development environment){{#translation:}}]]
</translate>
</noinclude>

Latest revision as of 14:02, 7 July 2023

This page is centered around developing on and with Joomla. If you find yourself stuck following any of these tutorials, please visit our Installation forums for more information.

Installing a Web Server

Installing a typical web server environment is easy with AMP packages (Apache, MySQL, PHP).

If you want use XDebug for debugging, you'll need to tune the PHP settings

Installing an IDE/Editor (and Debugging)

Debugging Specifics

Using Git

The CMS project uses the Git version control system and the CMS repository is stored on GitHub. Bugs are fixed in the master branch of this repository, and normally there are bug fixes and changes in the master branch that are more recent than the latest released Joomla version. For this reason, when we test and code bug fixes, we normally use the latest code from the master branch on GitHub, not the latest released version. Therefore, Bug Squad testers and coders need to understand how to use Git and the GitHub repository.

Related

Help is appreciated finding related pages and making these pages less redundant.