ProcessWire Development London
By Michael Macneil on Monday, 25 September 2017
When we are not developing a website in Laravel, it normally means that we are developing that project in ProcessWire. Right now you may be asking what is Laravel and what the heck is ProcessWire? In this article, we will answer what ProcessWire is and we will tackle Laravel in another article. If you want a speedy summary in the meantime, Laravel is for big ass projects and ProcessWire is for smaller projects that require maximum flexibility and super easy for user editing. Boom!
Should I use ProcessWire for the Development of my CMS and Framework?
The purpose of this article is to provide a basic understanding of ProcessWire, its main alternatives and the benefits it may or may not have over these rivals.
What is ProcessWire?
For those of you that are new to ProcessWire, it is a free, opensource Content Management System (CMS) and web application framework utilising PHP that is starting to gain traction within the web related industry. Being an open source software, ProcessWire has been developed, tested and improved by the public and is available without a license. It is commonly referred to as ‘open collaboration.’
What are the Advantages of using open source software?
As ProcessWire is an open source software, we will look at the pros and cons of using such a system. Some of the advantages include:
- Security, this is a massive issue when it comes to websites. Any bugs or security flaws tend to get fixed quickly, in most cases as soon as they are discovered and the solution is there for all to use. As opposed to Microsoft or other licensed products, you need to wait until they release patches for the vulnerabilities.
- It’s free to use and modify to how you like. There are no complicated or expensive licensing agreements, no ongoing costs, no support charges, no activation keys etc.
- Longevity, open source software such as ProcessWire is not reliant on the organisations that created it. Even if the creator moves on, it is still there for people to modify and further improve.
- Customisation or as we like to say, freedom! It is open source, you can modify the code to suit the functionality you require.
- Support, you usually have a massive group of communities that provide excellent blogs, forums, documents, tips, new sgroups providing unparalleled information about the software. If you have a query, just type in the question and the answer will virtually always be there.
- Evolution, it is often changing and being adapted, improved by developers and these improvements are there for you to use.
- Confidence, because the software is open for the public to inspect and not hidden behind closed doors you can audit and inspect the software as closely as you want to ensure there are no issues. You don’t have to just take the software company's word for it.
- Forced updates, you don’t have to make forced updates to your software that could have implications for the hardware that you are currently working with.
- No pressured sales call asking you to upgrade, update from the commercial software company.
- Claim to fame, you can become a champion in the community by creating something people want.
- Try before you buy, but in this case, you don’t have to buy!
It would appear that open source is starting to lead the way, here are a few major companies that have opened up their software within the last few years.
- Apple open-sourced their Swift language
- Microsoft have open sourced some of its technologies including .NET and Visual Studio
- WordPress have opened up Calypso
- Google opened up their TensorFlow
What is a CMS?
Using the definition from Wikipedia, a ‘CMS supports you in the process of the creation and modification of digital content via a computer application.’ In layman terms, a CMS allows supports the editing of a web page. You can add various plugins or hard code your CMS to further enhance its functionality set.
Who are the main CMS competitors for ProcessWire?
Even though ProcessWire is a free open source software, this list will contain free and paid for alternatives that can be used for the web development process.
- Released in 2003
- Free open source CMS based PHP and MySQL
- WordPress is by far the most popular website web management tool with an estimated 74.6 million users according to Manage WP
- Originally created in 2001
- Free, open-source PHP web application framework
- Used by an estimated 2.3% of all websites
- Is a free open source CMS
- Created in 2005
- Downloaded over 81 million times, believed to be second only to WordPress
- Free open source PHP based CMS web application
- Founded in 2000
- Over 1400 modules
- Opensource PHP ecommerce platform
- First published in 2008
- Three editions are Magento Community Edition, Magento Enterprise Edition and Magento Enterprise Cloud Edition
- Part of EllisLab, founded in 2001
- PHP CMS using MySQL
- There is a free ‘core’ version that is very limited for personal/nonprofit organisations
- Originally MODx and developed in 2004
- Free open source CMS written using PHP programming language
- Initial development was in 2003
- CMS based on a model view controller, editable regions are defined
- Free open source technology
- Originally developed in 1999, this project was known as Web Done Right.
- Written in Peri, an open source CMS
- Free open source technology
- Was launched in 2004 and is a CMS and social networking
- Has quite a small community
What are the advantages associated with using ProcessWire as your development platform?
There are plenty of established alternatives, for ProcessWire to stand a chance of success it must offer some benefits over these rivals. Some of these reasons are outlined below.
ProcessWire has been designed to create a user-friendly development process, by making simplicity paramount without reducing its capabilities. If you ask developers what impresses them most about the software, they will usually talk about the API (application programming interface) that is extremely easy to use, allowing for quick development times with powerful functionality. The programming interface is all completed in PHP, so there is no need for developers to learn another language unless they want to of course.
Site size does not matter, you can use ProcessWire on a one-page site or a site with hundreds of thousands of pages, there are no limitations. For examples of websites utitlising this technology, take a look at some of their featured sites.
ProcessWire consists of a framework with modules that can be easily integrated, usually just consisting of adding files to the relevant directory. In addition, many of the plugins for WordPress are there by default and are often not used. This is not the case with ProcessWire, which as a developer I see as a plus.
The page field type is another great tool you can use to reduce development time. You can connect other pages on your website with the page you are editing thus reducing doubling up.
The family tab also allows you to set the hierarchy for the website, stipulating which pages can have subpages etc. allowing you to stay true to the template you planned for.
On a personal note, I find ProcessWire gives you great flexibility and control unlike some of its rivals that force you to build the site around their software. How many times have you added a WordPress plugin and had to tailor it to suit your needs?
Some would argue that many of the ProcessWire alternatives are bloated and require numerous updates. On the whole, ProcessWire updates are pretty simple and do not result in causing issues elsewhere which is a common problem with many of its rivals. Everything in ProcessWire is contained in the site/ directory, which is not part of the source, allowing you to just update the new version of ProcessWire and leave the /site directory alone (the site structure is never changed during a version upgrade).
How secure is ProcessWire?
ProcessWire has been built with security at the forefront, all modules have been manually checked before they are displayed for downloading on their main site. It must be noted though, that ProcessWire only vouches for the main code they write for the software, however, as with all open source software they can’t be held responsible for third-party modules. Overall, we have found that you tend to use fewer plugin modules which in theory should lessen your security threats.
As with all projects, regardless, you should have a data access policy, security checklist and disaster recovery plan that should be adhered to.
Where can I access modules?
You can access all the modules on the main ProcessWire website, using the following modules link. Some modules are free, others you need to pay for. Modules are split into categories, as well as the latest additions and favourites. Installation is very easy, involving a simple dragging into the site modules directory and installation via the GUI.
Big Businesses that use ProcessWire as their CMS
As much as I am a fan of ProcessWire, there is no denying that it is not currently the dominant force being used by industry, according to W3Techs the usage of ProcessWire for websites as of 22nd June 2017, was less than 0.1% as the CMS of choice. This is extremely low when you compare it to WordPress at 52.3% and Joomla at 28.2%. These two dominate the market in terms of usage, with Drupal coming in at third place with 3.3%.
This is not to say that big business does not use it, below is a list of some websites using ProcessWire.
For a full list please view https://processwire.com/about/sites/
As you may have guessed, at ID Studio we are a big fan of ProcessWire and often use it for the development of our websites. We have found that ProcessWire is a slick system that allows for a scalable website design that can grow with your business. Too often in the past, using systems such as WordPress we found that updates often caused issues elsewhere in the website and bloated the code more than was necessary. This can cause issues with website load times, server problems depending upon your host and increased website dropouts. There is no arguing that there are issues with some of the WordPress plugin directories, in my option they have not all been scrutinised adequately.
ProcessWire has made its administration panel deliberately uncomplicated, clients often comment on the ease with which they can update their website, being able to duplicate modules with the click of a button, drop and drag with options displayed in an easy-to-understand toggle fashion.
Unlike many of their rivals, ProcessWire only includes what is needed in the core of their system, I am not saying that ProcessWire is the perfect fit for all requirements, however, if it ticks all your requirement my advice is don’t waste time looking elsewhere.
If you have any questions, suggestions or would like further information, please contact us through our contact form.