There is a plethora of quality command line tools that work wonders for the coding efforts. If you are someone who uses Windows as your primary operating system and you want to make use of any of these tools, installing them can be a nightmare thanks to the non-intuitive nature of the installer system. I decided to write this article to let everyone know about some excellent tools and how you can install and configure them on Windows.
Here I am going to list some of the best editor, security, command line tools or more that every developer should know for efficient web development.
Atom
Atom
- Supported operating systems: Windows, Linux, macOS, FreeBSD
- License: MIT License
- Source code: https://github.com/atom/atom
- Supported languages: PHP, HTML, CSS, JavaScript, Java, C, C#, Objective C, Perl, Python, Ruby, Go, XML, and more
Atom is the “hackable text editor for the 21st century”, according to its slogan. Originally, it was GitHub’s internal tool that later they made open source, but the project is still maintained by GitHub. It’s called hackable because you can customize every single aspect of the editor interface, such as the UI and syntax theme, key bindings, formatting, global and language-specific settings, and more.
In addition to the functionality of the core editor, you can download almost 9,000 packages that allow you to add basically any feature you need. To configure Atom as a PHP editor, you can add PHP-specific packages for debugging, refactoring, annotations, linting, and other development-related tasks.
Best features:
- customizable UI with 3,000+ open source Atom themes
- syntax highlighting and smart autocompletion
- file system browsing and multiple panes
- advanced find and replace tool
- integrated package manager (called apm)
- easy-to-access command palette
- extensibility
- real-time code collaboration (with the in-house-built Teletype package)
- direct Git and GitHub integration (with the in-house-built GitHub package)
Brackets
Brackets
- Supported operating systems: Windows, Linux, macOS
- License: MIT License
- Source code: https://github.com/adobe/brackets
- Supported languages: HTML, CSS, LESS, SCSS, Sass, JavaScript, PHP, Java, Python, Perl, Ruby, C, C++, VBScript, and more
Brackets is an open source code editor created and maintained by Adobe. As many of Adobe’s products, it primarily focuses on frontend development, but it supports several backend languages as well, including PHP. It has become popular for its inline editing feature for CSS that lets you see all the selectors belonging to a specific CSS rule.
If you do both frontend and backend development, Brackets can be the ideal PHP editor for you — especially if you also work with CSS preprocessors, such as Sass and LESS. That being said, Brackets is not the most advanced PHP editor in this list, but it’s free, lightweight, and easy to use.
Brackets has an extension registry as well, however, it doesn’t have as many extensions as Atom or Visual Studio Code.
Best features:
- vertical and horizontal split view
- live preview using a real-time connection with your web browser
- lightweight (written in JavaScript)
- inline editing (for CSS)
- custom themes are available via the Brackets Extension Registry
- support for CSS preprocessors, including quick edit and live highlight functionalities
Debugging Tools
- Webgrind
Webgrind is an Xdebug profiling Web front end in PHP 5. It implements a subset of the features of kcachegrind, installs in seconds and works on all platforms. For quick ‘n’ dirty optimizations, it does the job.
More after jump! Continue reading below ↓
Web forms are at the center of every meaningful interaction, so they’re worth getting a firm handle on. Meet Adam Silver’s Form Design Patterns, a practical guide to designing and building forms for the web.Jump to table of contents ↬
- Xdebug
Xdebug is one of the most popular debugging PHP extensions. It provides a ton of useful data to help you quickly find bugs in your source code. Xdebug plugs right into many of the most popular PHP applications, such as PHPEclipse and phpDesigner. - Gubed PHP Debugger
As the name implies, Gubed PHP Debugger is a PHP debugging tool for hunting down logic errors. - DBG
DBG is a robust and popular PHP debugger for use in local and remote PHP debugging. It plugs into numerous PHP IDE’s and can easily be used with the command line. - PHP_Debug
PHP_Debug is an open-source project that gives you useful information about your PHP code that can be used for debugging. It can output processing times of your PHP and SQL, check the performance of particular code blocks and get variable dumps in graphical form, which is great if you need a more visual output than the one given to you by print_r() or var_dump(). - PHP_Dyn
PHP_Dyn is another excellent PHP debugging tool that’s open-source. You can trace execution and get an output of the argument and return values of your functions. - MacGDBp
MacGDBp is a live PHP debugger application for the Mac OS. It has all the features you’d expect from a fully featured debugger, such as the ability to step through your code and set breakpoints.
Testing And Optimization Tools
- PHPUnit
PHPUnit is a complete port of the popular JUnit unit testing suite to PHP 5. It’s a tool that helps you test your Web application’s stability and scalability. Writing test cases within the PHPUnit framework is easy; here’s how to do it. - SimpleTest
SimpleTest is a straightforward unit-testing platform for PHP applications. To get up and running with SimpleTest quickly, read through this pragmatic tutorial that shows you how to create a new test case. - Selenium
Selenium Remote Control (RC) is a test tool that allows you to write automated Web application UI tests in any programming language against any HTTP website using any mainstream JavaScript-enabled browser. It can be used in conjunction with PHPUnit to create and run automated tests within a Web browser. - PHP_CodeSniffer
PHP_CodeSniffer is a PHP 5 script for detecting conformance to a predefined PHP coding standard. It’s a helpful tool for maintaining uniform coding styles for large projects and teams. - dBug
dBug is ColdFusion’s cfDump for PHP. It’s a simple tool for outputting data tables that contain information about arrays, classes and objects, database resources and XML resources, making it very useful for debugging purposes. - PHP Profile Class
PHP Profile Class is an excellent PHP profiling tool for your Web applications. Using this class will help you quickly and easily gain insight into which parts of your app could use some refactoring and optimization.
Documentation Tools
- phpDocumentor
phpDocumentor (also known as phpdoc and phpdocu) is a documentation tool for your PHP source code. It has an innumerable amount of features, including the ability to output in HTML, PDF, CHM and XML DocBook formats, and has both a Web-based and command-line interface as well as source-code highlighting. To learn more about phpDocumentor, check out the online manual. - PHP DOX
An AJAX-powered PHP documentation search engine that enables you to search titles from all PHP documentation pages.
Security Tools
- Securimage
Securimage is a free, open-source PHP CAPTCHA script for generating complex images and CAPTCHA codes to protect forms from spam and abuse. - Scavenger
Scavenger is an open-source, real-time vulnerability management tool. It helps system administrators respond to vulnerability findings, track vulnerability findings and review accepted and false-positive answered vulnerabilities, without “nagging” them with old vulnerabilities. - PHP-IDS
PHP-IDS (PHP-Intrusion Detection System) is a simple-to-use, well-structured, fast and state-of-the-art security layer for your PHP-based Web application. - Pixy: PHP Security Scanner
Pixy is a Java program that performs automatic scans of PHP 4 source code, aimed to detect XSS and SQL injection vulnerabilities. Pixy takes a PHP program as input and creates a report that lists possible vulnerable points in the program, along with additional information for understanding the vulnerability.
PHP Code Beautifier
- PHP_Beautifier
PHP Beautifier is a PEAR package for automatically formatting and “beautifying” PHP 4 and PHP 5 source code. - PHPCodeBeautifier
PHPCodeBeautifier is a tool that saves you from hours of reformatting code to suit your own way of presenting it. A GUI version allows you to process files visually; a command-line version can be batched or integrated with other tools (like CVS, SubVersion, IDE, etc.); and there is also an integrated tool of PHPEdit. - GeSHi – Generic Syntax Highlighter
GeSHi is designed to be a simple but powerful highlighting class, with the goal of supporting a wide range of popular languages. Developers can easily add new languages for highlighting and define easily customizable output formats.
Version-Control Systems
- Phing
Phing is a popular project version-control system for PHP. It is a useful tool for organizing and maintaining different builds of your project. - xinc
xinc is a continuous integration server version-control system written in PHP 5 (i.e. continuous builds instead of nightly builds). It works great with other systems such as Subversion and Phing.
Useful Extensions, Utilities And Classes
- SimplePie
SimplePie is a PHP class that helps you work with RSS feeds. Check out the online RSS and Atom feed reader, which demonstrates a simple Web application that uses SimplePie. - HTML Purifier
HTML Purifier is a standards-compliant HTML filter library written in PHP. HTML Purifier not only removes all malicious code (better known as XSS) with a thoroughly audited, secure yet permissive white list, it also makes sure your documents are standards-compliant. Open source and highly customizable. - TCPDF
TCPDF is an open-source PHP class for generating PDF documents. - htmlSQL
htmlSQL is a unique tool. It is a PHP class for querying HTML values in an SQL-like syntax. Check out the live demonstration of how htmlSQL works. - The Greatest PHP Snippet File Ever (Using Quicktext for Notepad++)
“A little something for all coders: a snippets file that I use for PHP coding. This is designed to be used with Quicktext for Notepad++, but feel free to adapt it to whatever text editor you prefer.” - Creole
Creole is a database abstraction layer for PHP5. It abstracts PHP’s native database-specific API to create more portable code while also providing developers with a clean, fully object-oriented interface based loosely on the API for Java’s JDBC. - PHPLinq
LINQ is a component that adds native data querying capabilities to PHP using a syntax reminiscent of SQL. It defines a set of query operators that can be used to query, project and filter data in arrays, enumerable classes, XML, relational databases and third-party data sources. [via] - PHPMathPublisher
With PhpMathPublisher, you can publish mathematical documents on the Web using only a PHP script (no LaTeX programs on the server and no MathML). - phpMyAdmin
If you’re working with PHP, there’s a big chance you’re set up in a LAMP configuration. phpMyAdmin is Web-based tool for managing, building, importing, exporting and exploring MySQL databases. - PHPExcel
PHPExcel is a set of useful PHP classes for working with Microsoft Excel files. PHPExcel allows you to read Excel files and write to them. This is useful for dynamically generating Excel spreadsheets for downloading. - Phormer
Phormer is a PHP-based photo gallery management application that helps you to store, categorize and trim your photos online. - xajax PHP Class Library
xajax is a PHP class for easily working with PHP AJAX applications. It gives you an easy-to-use API for quickly managing AJAX-related tasks. Check out the xajax Multiplier demo and the Graffiti Wall demo to see the xajax PHP class in action. - PHP User Class
PHP User Class is an excellent script that helps you create a system for user authentication (i.e. registration, log in, account profile, etc.). It’s a useful utility to have around if you require user registration for your Web applications. - PHP-GTK
PHP-GTK is a PHP extension for the GTK+ toolkit (a robust toolkit for developing GUIs). It is a suite of useful OOP functions and classes to help you rapidly build cross-platform, client-side GUI’s for your application.
PHP Online Tools And Resources
- Minify!
Minify is a PHP 5 app that can combine multiple CSS or JavaScript files, compress their content (i.e. remove unnecessary white space and comments) and serve the results with HTTP encoding (via Gzip/deflate) and headers that allow optimal client-side caching. This will help you follow several of Yahoo!’s Rules for High Performance Websites. - HTTP_StaticMerger: Automatic “merging” of CSS and JavaScript files
This library automatically merges sets of static files (CSS or JavaScript) and speeds up page loading (by lowering the number of HTTP queries). It is recommended to use this together with caching reverse-proxy to minimize the response time. - PHP Object Generator
PHP Object Generator is an open-source Web-based tool that helps you quickly construct PHP objects and leverage object-oriented programming (OOP) principles in your code.
Conclusion
There is hardly anything as pleasant as the idea to be found among those who love to work with their hands on some project. The best software development tools for Windows offer all the sturdiness and convenience needed to make things move on without any complications or problems.