Table of Contents
If you are a seasoned developer, you most likely already know what an IDE is: however, for the sake of those readers who never touched a single line of code, we'll briefly summarize the concept. In computing, IDE is an acronym for Integrated Development Environment: in a nutshell, a software application that provides comprehensive facilities to computer programmers for software development. A standard IDE normally consists of three major elements: a source code editor, a build engine (or equivalent building automation tools), and a debugger. Most modern IDEs have also other cool features, such as intelligent code completion mechanisms (IntelliSense), shortcuts, syntax highlighting, and other cool add-ons to ease the overall experience of their developers.
In this post we'll talk about one of the most interesting - yet underestimated - IDE released in the latest few years: Codelobster, a portable, multi-platform development environment made for PHP yet also supporting HTML, CSS and JavaScript languages. As developers, we went through a full test-drive - from installation to coding and, last but not least, building.
Multi-Platform approach
A good IDE has to be multi-platform and Codelobster makes no exceptions: both the free and professional editions come with native Windows, MacOS and Linux binaries: for this review we used the screenshots of the Windows port, however we also tried the Linux build which offered the same look and feel and overall experience.
Installing
Installing Codelobester is just as easy as any other software: you just have to visit the official download page from the Codelobster website and pick the version you want to try:
- Codelobster IDE - the free edition, with all the basic features active and no expiration time.
- Codelobster Professional - the shareware edition with additional features, plugins and add-ons.
We'll compare the two edition's features later on. For the purpose of this test-drive, we just picked up the Codelobster IDE free edition 1.5.1, released on February 28, 2019, which was the latest version at the time of writing.
The installation wizard is pretty standard, you'll just have to accept the End-User Agreement and hit Next a couple times. You'll also get the chance to choose which File Types to open with Codelobster (the suggested extensions are .php, .js, .php5, .inc, .xml, .xsl and .module), the color scheme to use and the components/features you want to use:
The setup wizard will also install the Microsoft Visual C++ 2015 Redristibutable package, unless it's already present on the system.
Main Window
Once the installed ends, the wizard will give you the chance to immediately run Codelobster. After you hit YES, the main window of the IDE will appear in all its glory:
As we can see, the main GUI is splitted in multiple sections.
- In the topmost section there's a standard Menu, followed by some customizable Toolbars.
- In the left panel we have a standard File Explorer, which can be used to visually browse the code files to open and their folders: such files can be found within the local FileSystem or custom FTP/SFTP servers that we can connect to. The Explorer window can be switched out for a series of other project-related panels (Structure, Class View, Project, SQL) using the tabs placed just below the panel.
- The center panel is where the Text Editor will open, as soon as a file has been selected (or created with the File > New menu option).
- In the right panel we can see a series of other useful tabs (Index, Dynamic Help, Properties, Map) which we can use to access contextual info about our project.
- In the bottom panel we have the "standard" ouput, search result and debug/call stack windows, as expected by any modern IDE GUI.
The overall look and feel loosely reminds us the most recent installments of Visual Studio / Visual Studio Code, which is indeed a good thing! This could be great to attract the typical ASP.NET developer, who could have issues in using Visual Studio or Visual Studio Code when working with PHP as both the Microsoft IDEs don't natively support that language.
Text Editor
One of the most defining things of any IDE undoubtely is the Text Editor, which is where most of the developer work takes place. Codelobster's text editor is natively packed out with the following features:
- Powerful Syntax Highlighting: it highlights the syntax and gives hints for tags, functions and their parameters, even with files that contain mixed content (HTML + PHP + CSS).
- Auto-Completion function, which greatly speeds up the programmer's work and minimizes the chances of coding errors and typos.
- Highly Customizable interface with several visual styles.
- Portable mode - you'll be able to bring your IDE everywhere using any USB pendrive.
- File comparison tool (WinMerge-alike)
- Web Browser Preview (with any browser)
- File Explorer with complete file and folder editing capabilities (new, edit, delete)
- Code formatting tools (professional version only)
- Advanced search & replace features with full special characters and Regular Expressions support.
- Search & replace in files and folders, even recursively.
- Auto indent
- Visible spaces, paragraphs and tabs.
- Extended text selection and deletion
- Full Unicode support and multiple encoding conversions
- Line sorting with a wide range of options
- Bookmarks
- SQL management tools (professional version only)
- Version Control integration with SVN, Git and Mercurial HG support (professional version only)
- 1-Click Contextual Help for all supported programming languages: the help database uses the most up to date documentation for each supported language by downloading it from official sites.
Debugger
The built-in PHP debugger allows you to execute PHP scripts step by step, moving through the lines of code using the standard F5 (debug) - F10 (step over) - F11 (step into) function keys: the GUI allows the developer to assign breakpoints and monitor the values of all variables using the Locals and Watch windows (bottom panel) during the execution of the script.
We tested the debugger, together with the text editor, against one of our biggest PHP project - the Myst.it website, which features more than 150.000 lines of PHP code splitted between ~ 20.000 files. The debugger worked really well, giving our best developers a nice experience: we're talking about experienced guys used to work with Visual Studio and PHP Tools, therefore they know what a good GUI and development IDE actually are... however, they were really happy and positively surprised by the Codelobster environment and had no issue in working with it.
Version Control
The professional version of CodeLobster IDE supports the following Version Control Systems:
- Git
- SVN (PHP Edition only)
- Mercurial (PHP Edition only)
We tried to configure Git without significative issues. The first thing to do is to configure the Git executable path:
Right after that, the Git commands features will appear on the File Explorer contextual menu, accessible by right-clicking on any file or folder:
Most of the SCM preferences can be configured in the Tools > Preferences > IDE > HotKeys > VCS:
Additional Features
Here are some useful function which got our attention, as they cannot be found in most IDEs:
- Pair highlighting of parentheses and tags : the text editor will instantly notice (and warn you) if there are missing opening or closing parentheses/tags.
- Highlighting and collapsing of blocks, selections and code snippets: another great feature of Visual Studio, which we gladly found here as well.
- Code Validator for PHP, HTML and CSS which identifies syntax errors in expressions, declarations and cycles (PHP), as well as names/attribute errors (HTML, CSS): sadly, this feature is now available only on the professional version.
- Full Internalization Support, with 17 user interface languages including: English, German, Russian, Spanish, French, Italian and others.
Supported Systems
The program works on the following operation systems: Windows 7, Windows 8, Windows 10, Mac OS, Linux, Ubuntu, Fedora, Debian.
Compare Editions
Here's the full features breakdown of the Free Version compared to the Professional Version, taken from the official site.
Abilities | Free Version | Professional version |
HTML editor | V | V |
HTML code inspector | V | V |
CSS editor | V | V |
JavaScript editor | V | V |
PHP editor | V | V |
PHP debugger | V | V |
Advanced features | Free Version | Professional version |
FTP/SFTP support | - | V |
SQL manager |
- | V |
Version Control Systems | - | V |
Code validator | - | V |
Code snippets | - | V |
Code formatting | - | V |
SASS and LESS | - | V |
Split Window, Compare | - | V |
Node.js support | - | V |
Other: sorting, converting | - | V |
Additional plug-ins | Free Version | Professional version |
- | V | |
- | V | |
- | V | |
- | V | |
- | V | |
- | V | |
- | V | |
- | V | |
- | V | |
- | V | |
- | V | |
- | V | |
- | V | |
- | V | |
- | V | |
- | V | |
- | V | |
- | V |
Conclusion
Codelobster IDE really impressed us for its nice set of features, the user-friendly GUI and the sleek window design, which is clearly inspired from other top-grade IDEs. Given all this, we can only recommend it: the free edition itself is good enough for small-to-medium PHP/HTML projects, while the professional version might be a good choice if you need the advanced features or the language-specific plugins.