Back in July, we've been so excited about the launch of 1.0.0 after around 3,000 hours of work in only 12 months, that we didn't even write a blog post at the time. The following weeks, the team was busy dealing with feedback and support, as well as starting to build even more features. That's how 4 months went by, certainly time for a recap of what has been happening and what ECA brings to the project and its community.
Winner at the German/Austrian SplashAwards 2022
Winning the "Solutions" category is a wonderful reward for all the hard work that went into the project. Being honoured with the special "Biggest Contribution Value" award is beyond our imagination. There is not enough space for celebrating this, but rest assured, we're just really happy!
Facts about the 1.0.0 Release
The analysis presented in June 2022 at the Drupal MountainCamp provides a great overview. Here are some key facts:
- 358 files and 40k+ lines of code
- hundreds of tests with thousands of assertions, giving us 90% test coverage
- code style fully compliant
- works with Drupal 9 and 10, PHP 7.4 and 8+
Installing and getting started is a matter of just a few minutes. As ECA comes without any dependencies other than Drupal core, there are no issues with contribution modules or packages.
From the roadmap in the same presentation, of models had already been implemented before the 1.0 release. And three more have been implemented for the 1.1 release, made available as a 1.1.0-alpha1 release a few days ago. The release notes demonstrate the huge momentum behind this project.
The benefit of ECA
ECA got started to provide a “Rules” equivalent for Drupal 9 and beyond. While having delivered on that objective, ECA solves additional challenges and helps to trim-down the overhead of each Drupal application.
With ECA it's far less likely for most Drupal sites to require any custom module. This is achieved by providing access to almost any hook, form altering, validation and submit handlers as well as driving cron jobs and queues from within ECA models. In addition, ECA allows configuring many tasks without having to install individual contribution modules for each of them, examples being:
- Redirecting for countless circumstances like 403s, after login, per user role, etc.
- Form field validations
- Computed fields
- Automatic entity labels
- Stripping and trimming of field values
While being powerful and flexible with these smaller tasks, ECA gets to its strengths with the big challenges. We at LakeDrops and also at OpenCampus are using ECA in huge and demanding customer projects. We haven't seen any issues of either instability or performance whatsoever. And if a feature is missing, adding more plugins either in ECA itself or in separate integration modules on drupal.org is nice and easy, often done in minutes or a couple of hours at most.
More important, though, what the Drupal community thinks about and already accomplished with it.
We often ask ourselves, is it just the lovely people who are providing all this positive feedback? As we're from a country where a common statement is "Not complaining is praise enough", it is at least noticeable when you only receive positive feedback. Which is what happens to the ECA team.
Here are some quotes:
"Oh I'm very grateful for this welcome. I appreciate and believe in the power of this module. I was a hard rules user in D7 times."
"I applied some quite complex logic using ECA in a project and it turned to be a life-changer."
"This is just step one. I've got a lot more to do on this model (and others). But thanks for the tips, and especially thanks for the module. It's been a life saver."
"ECA is [...] going to be exactly what i have needed for years and years - i've been struggling with writing custom modules to replicate even a bit of what i was doing happily in D7 rules! I had some amazing things going on - I've always regretted coming up to D8 and D9 because so much of my site broke when i made the move"
"WOW - I can't believe my test worked. It was surprisingly intuitive."
"Just wanted to say hi. I am a recovering Ruleser (someone who used Rules a lot in D7) and am thrilled about ECA and its potential. With some tweaks, this tool could rival Views in the power it provides users at any level."
"I have lost weeks trying to find a reliable solution for some business rules and the lack of progress in the old rules module is problematic. A pity because it worked very well under D7. [...] Once you get a grip on ECA it is no doubt the best way to go. Although the documentation is still a weak spot."
"I think a good ECA system offers Drupal a complete different dimension than the classical -functionality."
Of course, this is flattering. What's even more impressive to the development team: seeing what users actually accomplish with ECA. Bearing in mind this is a 1.0 release and, as quoted above, documentation is currently a "weak spot".
The ECA ecosystem is moving fast. Not only is the first feature release 1.1.0 only a few weeks away, we're also working hard on improving the documentation and establish other ways to share knowledge and teach the Drupal community how to get the best out of ECA.
One of these ways will be a regular blog post with showcases of what has been done with ECA. Dozens of examples are in the issue queue almost weekly, on Slack and in other channels, that we will collect and share. Seeing real solutions is the best way to learn, what ECA can do for your projects.