Setting up your workstation for Joomla development: Difference between revisions

From Joomla! Documentation

E-builds (talk | contribs)
N6REJ (talk | contribs)
m added Bearsampp dev server
 
(41 intermediate revisions by 12 users not shown)
Line 1: Line 1:
{{RightTOC}}
<noinclude><languages /></noinclude>
<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>


== Introduction ==
<translate>== Installing a Web Server == <!--T:2--></translate>
This is a trial to better structure all the wiki pages around developing on and with joomla.
<translate><!--T:3--> Installing a typical web server environment is easy with [[wikipedia:List_of_AMP_packages|AMP packages]] (Apache, MySQL, PHP).</translate>
Such as:
* <translate><!--T:4--> [https://www.apachefriends.org/ XAMPP] at Apache Friends (Multiple operating systems)</translate>
* [[Setting up your workstation for PHP development]]. A similar step-by-step guide for general PHP development environment (with some more choices and info).
** <translate><!--T:5--> [[XAMPP]] (for Joomla 1.5 and 2.5 please view [[J2.5:XAMPP|XAMPP for Joomla 2.5]])</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.
* <translate><!--T:44--> [https://bearsampp.com/ Bearsampp] Full stack portable dev server (Windows)</translate>
* <translate><!--T:6--> [[wikipedia:LAMP (software bundle)|LAMP]] (Linux)</translate>
**<translate><!--T:7--> [[Configuring a LAMPP server for PHP development]]</translate>
* <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>
* <translate><!--T:9--> [[wikipedia: MAMP|MAMP]] (Macintosh / OS X) [https://www.mamp.info/en/windows/ MAMP] may be a good choice.</translate>
* <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>
<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 a web server ==
<translate>== Installing an IDE/Editor (and Debugging)== <!--T:12--></translate>
Installing a typical web server environment is very easy with following [[wikipedia:List_of_AMP_packages|AMP-packages]] (Apache, MySQL, PHP).
* <translate><!--T:42--> [[wikipedia:Visual_Studio_Code|Visual Studio Code]]</translate>
* '''[http://www.apachefriends.org/en/xampp.html XAMPP] (Mutliple OS)'''
** <translate> <!--T:43--> [[Visual_Studio_Code|Configuring Visual Studio Code for Joomla development]]</translate>
** [[Configuring a XAMPP server for joomla development]]
*<translate><!--T:25--> PhpStorm IDE</translate>
** [[Xampp]]
**<translate><!--T:26--> [https://www.jetbrains.com/help/phpstorm/joomla-specific-coding-assistance.html Joomla! Development with PhpStorm] </translate>
* '''[[wikipedia:LAMP (software bundle)|LAMP]]''' (Linux)
* <translate><!--T:13--> [[wikipedia:Eclipse (software)|Eclipse IDE]]</translate>
**[[Configuring a LAMPP server for PHP development]]
** <translate><!--T:14--> [[Configuring Eclipse for joomla 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:15--> [[How to configure Eclipse IDE for PHP development]]</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:16--> [[Configuring Eclipse IDE for PHP development]]</translate>
If you want use XDebug for debuggin, you'll need to tune php settings
** <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>
* [[Edit PHP.INI File for XDebug]]
* <translate><!--T:18--> [[wikipedia:ActiveState_Komodo|Komodo Edit]]</translate>
** <translate><!--T:19--> [[Configuring Komodo Edit for Joomla Code Completion]]</translate>
* <translate><!--T:20--> [[wikipedia:NetBeans|NetBeans]]</translate>
* <translate><!--T:22--> UltraEdit, Notepad++...</translate>
*<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>


== Installing an IDE / Editor (and debugging)==
<translate>=== Debugging Specifics === <!--T:27--></translate>
*[[wikipedia:Eclipse (software)|Eclipse IDE]]
* <translate><!--T:28--> [[Running Automated Tests for the Joomla CMS]]</translate>
** [[Configuring Eclipse for joomla development]]
* <translate><!--T:29--> [[How to debug your code]]</translate>
** [[How to configure Eclipse IDE for PHP development]]
** [[Configuring Eclipse IDE for PHP development]]
** [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
* [[wikipedia:ActiveState_Komodo|Komodo Edit]]
** [[Configuring Komodo Edit for Joomla Code Completion]]
* [[wikipedia:NetBeans|NetBeans]]
** [[NetBeans overview]]
* UltraEdit, Notepad++, ...
=== Debugging specifics ===
* [[Running Automated Tests for Version 1.6]] {{JVer|1.6}}
* [[How to debug your code]] ([[Do not use die to debug]]!)
== Installing a version control ==
SVN ([[wikipedia:Apache Subversion|Subversion]]) will allow you to keep your Joomla! code up to date with the latest changes, to test patches and to participate in bug squashing.


Details on how to work with the JoomlaCode repository are located on the [http://developer.joomla.org/code.html Joomla! Developers] site.
<translate>== Using Git == <!--T:30--></translate>
<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>


* [[Installing Subverson on Eclipse for Joomla! development]]
* <translate><!--T:32--> For testing and tracking changes, please refer to [[Git for Testers and Trackers]].</translate>
* [[Tortoise SVN|Installing and using Tortoise SVN]]
* <translate><!--T:33--> For creating your first code change (called a Pull Request), see [[Working with git and github/My first pull request]]</translate>
* [http://developer.joomla.org/gsoc2008/16-overall-project/99-joomlacode-svn-with-easyeclipse.html Video tutorial (Nur Aini Rakhmawati)] on using JoomlaCode SVN with [http://www.easyeclipse.org/site/distributions/php.html EasyEclipse] (Linux, OS X and Windows).
* <translate><!--T:34--> For working with Git, please see [[Git for Coders]].</translate>


== Installing a build mechanism ==
<translate>== Related == <!--T:35--></translate>
* [[wikipedia:Apache_Ant|Ant]]
* <translate><!--T:36--> [[Setting up your workstation for PHP development]]</translate>
*[[Joomla Ant build files]]
* <translate><!--T:37--> [[Joomla Issue shortcut]]</translate>
* [http://www.phing.info Phing] It's possible that Phing can use al ant files (needs confirmation though)
* <translate><!--T:38--> [[Browser Shortcut Issue Tracker]]</translate>
** [[Setting up your workstation for extension development (build with Phing)]]
* [[J4.x:Setting_Up_Your_Local_Environment|<translate><!--T:39--> Setting up your local environment for Joomla 4]]</translate>
** [[Extension development using eclipse and phing]] This article explains one way in which you can set up your workstation for writing Joomla! extensions. It assumes that you are using Eclipse and that you are familiar with using Eclipse for working with Joomla! and Subversion. For more information about the basics of getting started with Eclipse for Joomla! development.
<translate><!--T:40--> Help is appreciated finding related pages and making these pages less redundant.</translate>
* ...


== Related ==
<noinclude>
* [[Installing Joomla locally]]
<translate>
* [[Setting up a testing environment]]
<!--T:44-->
Help is appreciated finding related pages and making these pages less redundant.
[[Category:Development{{#translation:}}]]
 
[[Category:Tutorials{{#translation:}}]]
 
[[Category:Beginner_Development{{#translation:}}]]
[[Category:Development]]
[[Category:Server configurations{{#translation:}}]]
[[Category:Tutorials]]
[[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.