A powerful
CMS you’ll love.

Free and open source since 2010

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. More →

  Download

ProcessWire also supports a dark mode, here showing the page list
ProcessWire supports numerous advanced seaerch tools
Example of multi-language fields in ProcessWire CMS
Editing a template where fields are defined for one type of page
ProcessWire’s page list showing the tree structure of pages
Example of editing a particular type of page

    Highly scalable on sites big and small

    ProcessWire uses a hierarchal tree structure for pages. There is no limit imposed by ProcessWire to the depth in which this structure can be defined. It is comfortable scaling to large and complex data needs, and remains simple regardless of scale.

    Total control over the design

    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. You control all of the markup, not ProcessWire.

    The easiest editing experience around

    ProcessWire is a no-nonsense content editing tool that is built by the same people that use it every day. With an ideal balance of power with ease-of-use, ProcessWire is about getting things done, easily and rapidly.

    Multi-language ready

    Designed for multi-language from the core with best-in-class multi-language capabilities, multi-language fields and translation tools.

    Learn more →

    Peace of mind

    Unlike other platforms, you can launch a ProcessWire site and then leave it for years without maintenance or updates (should that be the need). It’s that reliable.

    basic-page.php
    <!-- Output page title -->
    <h1><?= $page->title ?></h1>
    
    <!-- Output page body rich text field -->
    <div><?= $page->body ?></div>
    
    <!-- Output image -->
    <img src="<?= $page->img->url ?>">
    head.php
    // Render primary navigation
    foreach($pages->get("/")->children as $p) {
      echo "<a href='$p->url'>$p->title</a> ";
    }
    
    // Render titles of child pages
    echo $page->children->each("<li>{title}");
    blog-post.php
    <!-- Render simple breadcrumb nav -->
    <ul class="breadcrumbs">
      <?= $page->parents->each('<li><a href="{url}">{title}</a>') ?>
    </ul>
    skyscrapers.php
    // Find and list tall buildings
    $buildings = $pages->get("/buildings/");
    $skyscrapers = $buildings->find("height>1000");
    echo $skyscrapers->each("<li>{height}: {title}");

      The best CMS API in the business

      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.

      Learn more →

      »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

      »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.«

      Castus, UK web design agency

      »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

      »Building with ProcessWire was a breeze, I really love all the flexibility the system provides. I can’t imagine using any other CMS in the future.«

      Thomas Aull, Web developer

        Features

        Loaded with all the features most sites ever need

        •  Easy access control

          ProcessWire uses a role-based access control system that supports any access control scenario you can think of.
        •  Modular

          ProcessWire can be seen as a system for executing plugin modules, and nearly everything that ProcessWire does comes from one…
        •  Easy upgrades

          Every version of ProcessWire has been rock solid and stable, but you'll love how easy it is to upgrade.
        •  Front-end editing

          Don't want to edit from the admin? ProcessWire also enables double clicking any text/image on your website to edit it…
        •  Custom Fieldtypes

          All fields in ProcessWire are custom fields that you can easily define and edit.
        •  Multi-language

          ProcessWire is multi-language from the core and has built-in multi-language fields, URLs, and more.
        •  Lovely API

          ProcessWire comes with the best CMS API in the business. Not only is it easy to use, but it's a joy to develop with.
        •  Secure

          For more than 15 years, security has always been a central focus of ProcessWire, and it has the track record to prove it.
        •  Chock full o’Hooks

          With its unique, powerful and easy-to-use hooks system, ProcessWire gives you the power and capability to accomplish any need…

        Modules

        Explore the ever-expanding ProcessWire Ecosystem

        • Changelog

          This module tracks changes, additions, removals etc. of public (as in "not under admin") pages of your site.
        • PAGEGRID PAID

          A flexible drag-and-drop page builder with exceptional design control.
        • German (de-DE)

          German (de_DE) language pack for ProcessWire 3.0.184
        • Form Builder PRO

          Building front-end forms on your website has never been so simple. ProcessWire Form Builder lets you create, edit and publish forms with no development necessary.
        • ProCache PRO

          ProCache provides the ultimate performance for your website by completely bypassing PHP and MySQL and enabling your web server to deliver pages of your ProcessWire site as if they were static HTML…
        • Tracy Debugger

          The ultimate debugging and development tool for ProcessWire (https://adrianbj.github.io/TracyDebugger)

        Show all modules

        ProcessWire Weekly