A friendly and powerful open source CMS with an API that is a joy to use at any scale.

ProcessWire is a free content management system (CMS) and framework (CMF) built to save you time and work the way you do. With all custom fields, a secure foundation, proven scalability and performance, ProcessWire connects all of your content seamlessly, making your job fast, easy and fun. More

 Download  Demo

Open source CMS screenshots

Web developers love ProcessWire

Building websites with a CMS has never been more simple and fun

// Render your site’s primary navigation
echo $pages->get('/')->children->each('<li><a href={url}>{title}</a>');
// Find buildings: built before 1950, 10+ floors, sort by height
$pages->find('template=building, year<1950, floors>=10, sort=height');
// Output field “headline” when present or “title” if not
echo '<h1>' . $page->get('headline|title') . '</h1>';
// Get “email” field from /contact/ page and use it in link
<a href='mailto:<?= $pages->get('/contact/')->email ?>'>Email</a>
// Output first “images” field item on page at 90px width
<img src='<?= $page->images->first->width(90)->url ?>'>
// Set “headline” field value on page and save to database
$page->setAndSave('headline', 'Hello world');

Every bit of content in your site is never more than 1-line of code away. It doesn’t matter how large or small your site is, with ProcessWire all your content is connected, making it fast and easy to find, and incredibly simple to access, output and manipulate.

All fields in ProcessWire are custom fields that you easily define and edit in the admin. You can create as many of them as you want, and of any type. You can even bundle them in repeatable groups called Repeater fields. ProcessWire is built to adapt to your content needs.

Every field has a type and there are dozens of different types. It’s all here—text, rich text, numbers, files, images, multi-language, dates, page references, custom repeatable groups, and on and on… plus you can easily add more, since they are plugins/modules!

I just love the easy and intuitive ProcessWire API. ProcessWire rocks!” —Jens Martsch, Web developer

Clients love ProcessWire

“The end client and designer love the ease at which they can update the website. Training beyond how to log in wasn’t even necessary since ProcessWire’s default interface is straightforward.” —Jonathan Lahijani

You’ll love ProcessWire too

Read how ProcessWire connects it all ProcessWire connects it all

“Indeed, if ProcessWire can be considered as a CMS in its own right, it also offers all the advantages of a CMF (Content Management Framework). Unlike other solutions, the programmer is not forced to follow the proposed model and can integrate his/her ways of doing things.” —Guy Verville, Spiria Digital Inc.

ProcessWire Showcase

    “I am currently managing a ProcessWire site with 2 million+ pages. It’s admirably fast, and much, much faster than any other CMS we tested.” —Nickie, Web developer

    ProcessWire Blog

    ProcessWire 3.0.153 core updates

    This latest version of the core on the dev branch focuses on comments field updates, significant refactoring/improvements to ProcessWire’s core Template class and PagesLoader class (which is used by the $pages API variable), and we introduce a useful new $pages API method. More 

    ProcessWire 3.0.152 core updates

    6

    This week we have some major improvements to our core date/time Inputfield, as well as a new ability to specify your own custom classes for Page objects. Read on for all the details and examples.  More 

    ProcessWire 3.0.151 core updates

    2

    This week we’ve got a couple of really useful API-side improvements to the core in 3.0.151, among other updates. First we’ll take a look at a new $config setting that lets you predefine image resize settings, enabling you to isolate them from code that outputs them, not unlike how you isolate CSS… More 

    “We were really happy to build our new portfolio website on ProcessWire! We wanted something that gave us plenty of control on the back-end, without any bloat on the front end - just a nice, easy to access API for all our content that left us free to design and build however we liked.” —Castus, web design agency in Sheffield, UK

    ProcessWire Pro Shop

    Professional modules to save you time, built and supported by ProcessWire’s core developer.

    • FormBuilder

      Whether you need a large registration form or just a simple contact form, ProcessWire Form Builder helps you get the job done quickly and easily. It’s the ultimate tool for building and processing forms in ProcessWire.
    • ProCache

      ProcessWire ProCache bypasses PHP and MySQL and enables your web server to deliver pages at the speed of static HTML. ProCache also includes CDN support, minification of HTML, CSS, JS, and many more optimizations.
    • ProFields

      ProFields are an powerful group of ProcessWire field types (with custom inputs) that enable you to manage more data with fewer fields. This saves you time, reduces overhead, and makes development more efficient and even more fun.
    • ProMailer

      ProMailer is the ideal tool for creating and sending email newsletters and managing subscribers in ProcessWire. It answers many of the same needs as services like MailChimp and Constant Contact, but without the recurring fees associated with those services.
    • ListerPro

      ListerPro is an amazing page listing and editing tool for the ProcessWire admin that enables you to find, filter, list, sort and even edit/manipulate pages (individually or in bulk) based on any of their properties.
    • ProDrafts

      ProDrafts enables you to easily maintain separate draft and live versions of any page in ProcessWire. It also provides automatic-save capability, live preview (preview as you type), group workflow functions and more!
    • ProDevTools

      ProDevTools is a powerful set of tools for web developers that enable your company to deliver a better, faster and stronger product. The flagship is ProfilerPro which helps you to profile and optimize your code.

    “To Drupal, or to ProcessWire? The million dollar choice. We decided to make an early switch to PW. And in retrospect, ProcessWire was probably the best decision we made. Thanks are due to ProcessWire and the amazing system and set of modules that are in place.” —Unni Krishnan, Founder of PigtailPundits

    ProcessWire News & Community

    Twitter updates

    • ProcessWire 3.0.153 (dev) focuses on comments field updates, significant refactoring/improvements to ProcessWire’s core Template class and PagesLoader class (which is used by the pages API variable), and we introduce a useful new pages API method— More
      20 March 2020
    • ProcessWire 3.0.152 core updates— This week we have some major improvements to our core date/time Inputfield, as well as a new ability to specify your own custom classes for Page objects— More
      6 March 2020
    • This week we’ve got a couple of really useful API-side improvements to the core in 3.0.151, including predefined image settings and static language translation improvements— More
      21 February 2020

    Latest news

    • ProcessWire Weekly #307
      In the 307th issue of ProcessWire Weekly we're going to check out the latest dev branch updates, introduce some new third party modules, and more. Read on!
      Weekly.pw / 28 March 2020
    • ProcessWire 3.0.153 core updates
      This latest version of the core on the dev branch focuses on comments field updates, significant refactoring/improvements to ProcessWire’s core Template class and PagesLoader class (which is used by the $pages API variable), and we introduce a useful new $pages API method.
      Blog / 20 March 2020
    • Subscribe to weekly ProcessWire news

    “ProcessWire is like a breath of fresh air. So powerful yet simple to build with and customise, and web editors love it too.” —Margaret Chatwin, Web developer