PHPackages                             flowpack/nodegenerator - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. flowpack/nodegenerator

ActiveNeos-package[Utility &amp; Helpers](/categories/utility)

flowpack/nodegenerator
======================

Random nodes generator for Neos CMS

1.1.0(5y ago)122.1k5[2 issues](https://github.com/Flowpack/Flowpack.NodeGenerator/issues)MITPHP

Since Nov 8Pushed 5y ago3 watchersCompare

[ Source](https://github.com/Flowpack/Flowpack.NodeGenerator)[ Packagist](https://packagist.org/packages/flowpack/nodegenerator)[ RSS](/packages/flowpack-nodegenerator/feed)WikiDiscussions master Synced 6d ago

READMEChangelog (2)Dependencies (2)Versions (3)Used By (0)

NodeGenerator - Random nodes generator for Neos CMS
===================================================

[](#nodegenerator---random-nodes-generator-for-neos-cms)

Configuration of the Node generator classes
-------------------------------------------

[](#configuration-of-the-node-generator-classes)

In your Settings.yaml you can register a node generator class. Each node type used in your setup, must have an attached generator class.

```
Flowpack:
  NodeGenerator:
    generator:
      'Neos.NodeTypes:Page':
        class: 'Flowpack\NodeGenerator\Generator\Document\PageGeneratorImplementation'
      'Neos.NodeTypes:Text':
        class: 'Flowpack\NodeGenerator\Generator\Content\TextGeneratorImplementation'
      'Neos.NodeTypes:Image':
        class: 'Flowpack\NodeGenerator\Generator\Content\ImageGeneratorImplementation'
      'Neos.NodeTypes:TextWithImage':
        class: 'Flowpack\NodeGenerator\Generator\Content\TextWithImageGeneratorImplementation'
```

### Minimal Generator Class

[](#minimal-generator-class)

The NodesGenerators who call your node generator class, will catch NodeExistsException so you don't need to take care about that. The generator will skip silently nodes that currently exist in the content repository.

```
class PageGeneratorImplementation extends AbstractNodeGeneratorImplementation {

	/**
	 * @param NodeInterface $parentNode
	 * @param NodeType $nodeType
	 * @return NodeInterface
	 */
	public function create(NodeInterface $parentNode, NodeType $nodeType) {
		$title = Company::name();
		$name = Utility::renderValidNodeName($title);

		$childrenNode = $parentNode->createNode($name, $nodeType);
		$childrenNode->setProperty('title', $title);

		return $childrenNode;
	}
}
```

Configuration of presets
------------------------

[](#configuration-of-presets)

If multiple Content and Document node types are configured, the generator will select a random node type for each new node. Take care to declare a generator class for each node type.

The Extension is shipped with some examples of presets, a basic preset looks like:

```
Flowpack:
  NodeGenerator:
    preset:
      # Basic website, with a multiple level page tree
      small-website:
        depth: 3
        nodeByLevel: 10
        contentNodeByDocument: 5
        documentNodeType: [ 'Neos.NodeTypes:Page' ]
        contentNodeType: [ 'Neos.NodeTypes:Text', 'Neos.NodeTypes:Images' ]
        # Randomness of the number of nodes generated from 0 to 100
        randomness: 25
```

Run your preset
---------------

[](#run-your-preset)

```
./flow generator:nodes --site-node blog --preset small-blog

```

Configure the root node
-----------------------

[](#configure-the-root-node)

By default all the generated pages will be created on the root-level of the site. This behavior can be changed by providing a specific path to an existing node:

```
flow generator:nodes --site-node homepage --preset small-blog --path blog

```

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance17

Infrequent updates — may be unmaintained

Popularity25

Limited adoption so far

Community18

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

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.

###  Release Activity

Cadence

Every ~634 days

Total

2

Last Release

2113d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/145363?v=4)[ttree](/maintainers/ttree)[@ttree](https://github.com/ttree)

![](https://www.gravatar.com/avatar/25d49a6af82b72d2764774a05c307808375016d7aeaaef3862472a6580ff38a7?d=identicon)[flowpack](/maintainers/flowpack)

---

Top Contributors

[![dfeyer](https://avatars.githubusercontent.com/u/221173?v=4)](https://github.com/dfeyer "dfeyer (11 commits)")[![Sebobo](https://avatars.githubusercontent.com/u/596967?v=4)](https://github.com/Sebobo "Sebobo (9 commits)")[![kdambekalns](https://avatars.githubusercontent.com/u/95873?v=4)](https://github.com/kdambekalns "kdambekalns (6 commits)")[![grebaldi](https://avatars.githubusercontent.com/u/2522299?v=4)](https://github.com/grebaldi "grebaldi (1 commits)")[![remuslazar](https://avatars.githubusercontent.com/u/6108134?v=4)](https://github.com/remuslazar "remuslazar (1 commits)")

### Embed Badge

![Health badge](/badges/flowpack-nodegenerator/health.svg)

```
[![Health](https://phpackages.com/badges/flowpack-nodegenerator/health.svg)](https://phpackages.com/packages/flowpack-nodegenerator)
```

###  Alternatives

[kaufmanndigital/gdpr-cookieconsent

A ready-to-run package, that integrates an advanced cookie consent banner into your Neos CMS site.

2540.7k](/packages/kaufmanndigital-gdpr-cookieconsent)[shel/neos-colorpicker

A plugin for Neos CMS which provides a colorpicker editor

1494.4k6](/packages/shel-neos-colorpicker)[shel/neos-hyphens

A plugin for Neos CMS which provides hyphens for the inline editor

20200.7k1](/packages/shel-neos-hyphens)[shel/neos-commandbar

A commandbar (CMD+K) for Neos CMS

1614.6k1](/packages/shel-neos-commandbar)[emanueleminotto/faker-service-provider

Faker Service Provider for Silex

162.9k](/packages/emanueleminotto-faker-service-provider)

PHPackages © 2026

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