Neos ES CR Funding Q4 2019

Hey everybody,

I’d again like to apply for funding for the Neos Event Sourced Content Repository, after the first funding round and the second funding round.

What has been done with the last funding round

We’ve applied in January 2019 for our second round of funding. We’ve done quite a bit of work before Neos Conference 2019; and then recently started resuming the work at end of June (after a two-months break, which I personally needed to recharge my batteries). Currently, we have spent 9 of 12 working days in the budget; so we’re nearing the budget completion.

Originally Planned Goals reached

  • implemented “Publish a single page” (that’s actually harder than it sounds at the first sight)
  • got the Neos core change ready for merge. (TraversableNode)
  • finalized the Event Sourcing core package, i.e. switch to Symfony Serializer
  • Connected “Delete node” in the UI.
  • actually tried to edit more and more content and see where things break.

Originally Planned Goals which were not reached


Additional goals reached

  • tested with 50 000 nodes, to understand what performance problems we still need to solve.
  • finished Move Node and integrated in UI
  • implemented FlowQuery find() operation
  • supporting multiple sites now
  • implemented blocking command handling; so that we can be sure the projection is up to date before returning to the UI.
  • various code cleanups
  • tested with (6000 Nodes)
  • lots of integration fixes, like _hiddenInIndex support
  • fixed reference handling in Neos UI
  • created compatibility package to ease transition for parts of the Legacy API (like node.context.inBackend through Fusion)
  • started with a stand-alone version of the CR, usable in arbitrary PHP projects – this is my hobby project currently :wink:
  • started an Integrity Violation Detection and Fixer part (a.k.a. node:repair :wink: ) (not finished/merged yet)
  • written a lot of doc pages on how the ES CR works internally to hopefully make it easier for team members to join the efforts.

The next (3rd) request for funding

For me and Bastian, the working mode of being able to focus on the CR rewrite is working quite well; and having funds helps me personally to focus a lot better on the project, also during my work time.

The next goal is: Be able to edit content on local site as you do on the live site; so that we figure out what features we are sill missing. Further than that, I’d like to dedicate some of the money to spread knowledge in the team, f.e. by organizing a sprint.

In detail, some of the next steps are:

  • finish integrity violation detection
  • implement access restrictions to non-public workspaces
  • various code cleanups (e.g. move NodeAddress to CR)
  • finish workspaces module
  • implement workspace discard and document discard
  • delete unneeded content streams (once they are merged into live workspace)
  • improve resilience of the system (i.e. of the projector)

I’ll again promise that we aim to stay focused on the critical path as we see it; and work on the most critical issues we see which block actual usage of the new CR. We’ll keep you updated here as usual.

So the goal would be to have CR work until end of the year funded with another 15.000 €.

(depending on the other granted budgets, I’d be fine with 10.000 € as well).

NOTE: This does not contain a poll, because we will do a Konsensierung with all the other budget proposals handed in.


I know that I am again asking for quite a lot of money; and I am very aware that this eats up a big part of our funds. If we find other ways to finance this work or make it happen without funding, I’d be very happy as well. For instance, if people want to step up and organize a crowdfunding, this would be very much appreciated!

All the best,



FYI: I’ve just removed the inline poll; because we’ll be doing a Konsensierung for end-of-the-year-spending I guess; so it does not make too much sense to vote on individual budgets.

All the best,

Hi Sebastian,

I would like to see some funding packages for the CR instead of the UI on the funding Plattform.

When we split this in several sizes we probably get some extra fundings (ok I would do that). And can achieve probably more with the general budget.


1 Like

Hey @markusguenther,

I am quite sure that only putting funding packages on the funding platform is by far not enough. For the Neos UI crowdfunding, this was the smallest part of the work. Instead, when we want to do a proper crowdfunding, we need to have lots of phone calls with agencies, do quite a bit of good communication about it (news articles etc); so that’s all quite a bit of handywork.

As already stated above, I currently do not have the capacity to organize all this (as I have done for the Neos UI) – but help in these areas is greatly welcome; so if anybody wants to step up, please do so!

All the best,

Hi @sebastian,

I can imagine that it is a lot of additional work. But I didn’t meant it as replacement for the funding by the budget. More as an additional option to support.

For instance I could imagine that it is not just me who wants to support the team by a single funding package. So I would like to see CR packages on the funding Plattform :wink:

1 Like

CR rewrite is currently the highest risk and also the most important project for us, as it’s quite important to get it to production quality in the foreseeable future, otherwise it would just rot away I’m afraid. So I’m all for using our funds for it.


All for it :slight_smile:


I just took the time and updated the Funding Platform to show ES CR badges instead of the React UI ones.

Thanks @marika for your help!

So there shouldn’t be anything stopping further fundraising from the technical side :wink:



Hi all,

I’d like to share a little update on the current status and our next plans regarding the Neos ES CR.

What has been done?

Since Sebastians Post from August the contentrepository-development-collection has seen 91 commits and the event-sourcing package 75 commits.

Most of those were fixes and smaller tweaks addressing resilience & performance.

Some mentionable work include:

During that time we have had numerous really fruitful discussions.

Next plans

Even though we are making some great progress, this project urgently needs to be confronted with real world scenarios. But obviously we can’t ask anyone to use it in production (yet).
So our plan is to get to a point where we can run on the ES CR.
This might cause some pain in the beginning, but we think that we need to eat our own dog food… basically :slight_smile:

To reach that ambitious goal, a couple of features are still missing:

  • We want to build upon the “Integrity Violation detection & resolution” basis in order to have some more node:repair kind of commands
  • We need to support Nested Workspaces

Furthermore we want to prepare support for a Standalone version of the CR. This is not a major priority for Neos but we realized that focus on a more “library style” implementation can greatly improve the architecture and make everything more extensible from the start. In the long run a stand alone version will hopefully allow us to gain more contributors.


We have tracked roughly 120 hours of work since April (but this is just the tip of the iceberg. A lot of work and discussions took place on top of that and Bernhard didn’t even track his time at all!)

30% of the Q4 budget was shifted to other projects (see Spending available 2019 budget). The remaining 10k € are exhausted and we are currently working on our own budget.
We’ll start another funding round soon.

Thank You!

I want to take the chance to send out a big shout-out to my fellow contributors, everyone who voted for the budget and everyone that is supporting Neos with their generous work or money!