PoP is a monorepo containing several projects.

The GraphQL API for WordPress plugin

GraphQL API for WordPress is a forward-looking and powerful GraphQL server for WordPress.

Plugins can extend the GraphQL schema, to fetch their own data.

GraphQL By PoP

GraphQL by PoP is a CMS-agnostic GraphQL server in PHP.

PoP - set of PHP components

PoP is a set of libraries which provide a server-side component model in PHP, and the foundation to implement applications with it.

  • Website: getpop.org
  • Source code:
    • Backbone: Libraries providing the architectural scaffolding.
    • Engine: The basic libraries.
    • Schema: Agnostic data entities (posts, users, comments, etc).
    • WPSchema: WordPress-specific data elements.
    • API: Packages to access the schema data through an API, including REST and GraphQL.

Site Builder (WIP)

Site Builder is a set of PHP components to build a website using PoP's component-model architecture.

Similar to WordPress, it accepts themes.

Table of Contents

  1. Setting-up the development environment
  2. Repo visualization
  3. Layer dependency graph
  4. Supported PHP features
  5. How is the GraphQL server CMS-agnostic
  6. Why are there so many packages in the repo
  7. Why a monorepo
  8. How transpiling works
  9. How scoping works
  10. Installing the GraphQL API for WordPress plugin


PSR-1, PSR-4 and PSR-12.

To check the coding standards via PHP CodeSniffer, run:

composer check-style

To automatically fix issues, run:

composer fix-style


To execute PHPUnit, run:

composer test

Static analysis

To execute PHPStan, run:

composer analyse

Previewing code downgrade

Via Rector (dry-run mode):

composer preview-code-downgrade

Report issues

Use the issue tracker to report a bug or request a new feature for all packages in the monorepo.


Please see CONTRIBUTING and CODE_OF_CONDUCT for details.


If you discover any security related issues, please email leo@getpop.org instead of using the issue tracker.



GNU General Public License v2 (or later). Please see License File for more information.


Monorepo of the PoP project, including: a server-side component model in PHP, a GraphQL server, a GraphQL API plugin for WordPress, and a website builder

Pop Info

⭐ Stars 225
🔗 Source Code github.com
🕒 Last Update 4 months ago
🕒 Created 6 years ago
🐞 Open Issues 23
➗ Star-Issue Ratio 10
😎 Author leoloso