17

Development General Composer Composer is a tool for dependency management in PHP. It allows you to declare the libraries your project depends on and it will manage (install/update) them for you. Joomlatools Composer Installer This Composer plugin will install extensions into your Joomla setup. FOF2 (Framework on Framework 2) FOF is a rapid application ...


15

Environments: Wamp (Windows) WampServer is a Windows web development environment. It allows you to create web applications with Apache2, PHP and a MySQL database. Alongside, PhpMyAdmin allows you to manage easily your databases. Mamp (Mac: Both Community and Commercial versions) MAMP installs a local server environment in a matter of seconds on your Mac ...


9

Testing: If you're planning on writing a significant amount of either PHP or JavaScript code then all of the standard PHP and JavaScript development tools will be useful, regardless of the fact that your code will be running within a Joomla environment rather than stand-alone. On the PHP side: XDebug: A PHP extension for developers that allows you to do ...


8

Simply install the extension or template again (without uninstalling the original) by uploading it to the Extension Manager. We typically create fully installable extensions for our sites. We install them on our development server for testing, and when they are suitable, we simply install them on the production server. As long as the method in the manifest ...


8

Frontend (template, framework etc): UIKit (framework) UIKit is only a couple of years old but has become extremely popular. It's a lightweight and modular front-end framework for developing fast and powerful web interfaces and is used for all of Yootheme's templates as of Warp 7. The majority of Javascript have been moved into separate components, meaning ...


7

Editors: Notepad++ (for extreme speed and simplicity) Atom Sublime Text (super fast and feature packed) PhpStorm (Full PHP IDE) Netbeans IDE Quickly and easily develop desktop, mobile and web applications with Java, HTML5, PHP, C/C++ and more. NetBeans IDE is FREE, open source, and has a worldwide community of users and developers. Eclipse PDT (PHP ...


7

Browser Tools: Adobe Edge Inspect CC (free) Edge Inspect is an essential application for web developers and designers who need to preview their content across multiple mobile devices. Wirelessly pair multiple iOS and Android devices to your computer, grab screenshots from any connected device, and see real-time results from changes to HTML, CSS, and ...


6

Databases Design / Development / Management: MySQL Workbench - (Windows, Mac, Linux) MySQL Workbench is a unified visual tool for database architects, developers, and DBAs. MySQL Workbench provides data modeling, SQL development, and comprehensive administration tools for server configuration, user administration, backup, and much more. With MySQL ...


6

There are some free and paid extensions that can help with staging. EasyStaging is a free extension from Craig Phillips (who is an active member on this forum): http://extensions.joomla.org/extensions/hosting-a-servers/database-management/21308 SP Staging is a paid extension from SP Cyend: http://extensions.joomla.org/extensions/access-a-security/site-...


6

Site Statictics: Pingdom (Site speed test) GTmetrix (Site speed test) PageSpeed Insights (Site speed test)


5

Version Control: Source Code: Bitbucket SourceTree (Windows, Mac) SmartGit (Windows, Mac, Linux) Github Website (must register first before using any of the below) Git Bash (Windows - command line) Git Bash (Mac - command line) Github (Windows - GUI) Github (Mac - GUI) Version control software list on Wikipedia Database Version Control: dbvphp (php) ...


5

I can answer based on how we work at Virya Group - our CTO Marco Dings has been writing these up in a series of articles: http://magazine.joomla.org/issues/issue-apr-2014/item/1842-practical-development-3-project. We use Atlassian products - Jira, Stash, Confluence etc. We set up our working environment as a vhost for each project - we're working on ...


4

I don't understand why you set up the bare / public structure; I only use the public_html as the root of the repo, with a very complete .gitignore (which needs to be updated after each new Joomla! update, with git status you find the new files and add them so they don't get versioned). Developers push to development branches; in the end when a release is ...


3

System Requirements for Joomla! 3.x Also for those that are just starting and want to setup their environment, or simply need to install Joomla, these are the basic system requirements for Joomla to work: PHP: Recommended: 5.4+ Minimum: 5.3.10+ Magic Quotes GPC off http://www.php.net Supported Databases: MySQL: Recommended: 5.1+ Minimum: 5.1+ InnoDB ...


1

We have been using a similar workflow as described above by RCheesly. I'd highly recommend the Atlassian suite of products for project management. This lets us tie commit messages to JIRA tickets to leave an audit trail in bitbucket. We always create a feature branch i.e feature/joomla-update/JIRA-ticket-no, perform work on that branch and test before ...


Only top voted, non community-wiki answers of a minimum length are eligible