PHPackages                             tiny-pixel/block-sandbox - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. tiny-pixel/block-sandbox

AbandonedArchivedWordpress-plugin

tiny-pixel/block-sandbox
========================

Block testing for meticulous WordPress creatives

771[3 issues](https://github.com/kellymears/block-sandbox/issues)PHP

Since May 14Pushed 6y ago1 watchersCompare

[ Source](https://github.com/kellymears/block-sandbox)[ Packagist](https://packagist.org/packages/tiny-pixel/block-sandbox)[ RSS](/packages/tiny-pixel-block-sandbox/feed)WikiDiscussions master Synced 3d ago

READMEChangelogDependenciesVersions (1)Used By (0)

Block Editor Sandbox
====================

[](#block-editor-sandbox)

[![Latest Stable Version](https://camo.githubusercontent.com/bd32891a77d8f8b37826712394d93f38a697bc8b07e698d00ad5587d461a55de/68747470733a2f2f706f7365722e707567782e6f72672f74696e792d706978656c2f626c6f636b2d73616e64626f782f762f737461626c65)](https://packagist.org/packages/tiny-pixel/block-sandbox) [![Total Downloads](https://camo.githubusercontent.com/8cc7c605bc0a20854b30013283e6b6c5b45e95ea5eb22281593c5011952915c3/68747470733a2f2f706f7365722e707567782e6f72672f74696e792d706978656c2f626c6f636b2d73616e64626f782f646f776e6c6f616473)](https://packagist.org/packages/tiny-pixel/block-sandbox) [![License](https://camo.githubusercontent.com/269687dfdc3378f40b8fdaf8be16d6267fa8035c820b6e17e69610b66437d72c/68747470733a2f2f706f7365722e707567782e6f72672f74696e792d706978656c2f626c6f636b2d73616e64626f782f6c6963656e7365)](https://packagist.org/packages/tiny-pixel/block-sandbox)

This plugin registers a `Sandbox` posttype preset with a template including many common/core blocks in diverse arrangements. It requires zero configuration to start utilizing.

It was inspired by `coblocks/block-unit-test` (now `godaddy/block-unit-test` 😬).

**In comparison, `block-sandbox` aims to be:**

✅ Hackable, with an easy-to-read and fun-to-modify API

✅ Easy to keep updated as the block spec continues to change

✅ Not the intellectual property of Godaddy. Nothing against Rich Tabor (get it!) but *no, thanks*.

Simple usage
------------

[](#simple-usage)

```
$ composer require tiny-pixel/block-sandbox
$ wp plugin activate block-sandbox
```

Programmatic usage &amp; configuration
--------------------------------------

[](#programmatic-usage--configuration)

At a minimum you need to create the CPT, apply the template and register it with WordPress:

```
add_action('init', function () {
    (new Sandbox())
        ->create()
        ->applyTemplate()
        ->register();
});
```

Additionally, there are several methods available for you to utilize in modifying the behavior of the plugin.

### Append extra blocks

[](#append-extra-blocks)

If you would like to add additional blocks to the template you can do so with the `appendBlocks` method.

```
$extra = [['core/cover', [
    'align'   => 'wide',
    'url'     => 'example.png',
    'title'   => 'Additional block'
]]];

add_action('init', function () use ($extra) {
    (new Sandbox())
        ->createSandbox()
        ->appendBlocks($extra)
        ->applyTemplate()
        ->register();
});
```

### Overwrite template

[](#overwrite-template)

If you would like to wholesale replace the included template with your own you can do so using `setTemplate`. Just pass in an array of the blocks.

```
$template = [
  ['core/cover', [
    'align'   => 'wide',
    'url'     => 'example.png',
    'title'   => 'Additional block']],

  ['core-embed/vimeo', [
    'caption' => 'écoute: El Guincho',
    'align'   => 'wide',
    'url'     => 'https://vimeo.com/70237487']],
];

add_action('init', function () use ($template) {
    (new Sandbox())
        ->createSandbox()
        ->setTemplate($template)
        ->applyTemplate()
        ->register();
});
```

### Modify labels

[](#modify-labels)

If you would like to change `sandbox` to something else you can do that using `setLabel`. It takes an array with a new `id`, `singular`, and `plural` form of your desired label.

```
$label = [
  'id'       => 'test',
  'singular' => 'Test',
  'plural'   => 'Tests',
];

add_action('init', function () use ($label) {
    (new Sandbox())
        ->create()
        ->setLabel($label)
        ->applyTemplate()
        ->register();
});
```

### All of the above

[](#all-of-the-above)

```
add_action('init', function () use ($template, $extra, $posttype) {
    (new Sandbox())
        ->create()
        ->setLabel($posttype)
        ->setTemplate($template)
        ->appendBlocks($extra)
        ->applyTemplate()
        ->register();
});
```

License
-------

[](#license)

[MIT License](https://github.com/kellymears/block-testing/blob/master/LICENSE.md). Happy hacking!

###  Health Score

17

—

LowBetter than 6% of packages

Maintenance11

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity33

Early-stage or recently created project

 Bus Factor1

Top contributor holds 87.5% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/3e08df5442e0213f908535bba31bc1ad0ed213f176a5332b38922e9b7d39792b?d=identicon)[Tiny Pixel](/maintainers/Tiny%20Pixel)

---

Top Contributors

[![kellymears](https://avatars.githubusercontent.com/u/397606?v=4)](https://github.com/kellymears "kellymears (7 commits)")[![ouun](https://avatars.githubusercontent.com/u/32090713?v=4)](https://github.com/ouun "ouun (1 commits)")

---

Tags

gutenbergwordpresswordpress-plugin

### Embed Badge

![Health badge](/badges/tiny-pixel-block-sandbox/health.svg)

```
[![Health](https://phpackages.com/badges/tiny-pixel-block-sandbox/health.svg)](https://phpackages.com/packages/tiny-pixel-block-sandbox)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
