All Projects → wysiwyg-software-design → Wysiwyg.ABTesting

wysiwyg-software-design / Wysiwyg.ABTesting

Licence: MIT license
A/B Testing Package for Neos

Programming Languages

PHP
23972 projects - #3 most used programming language
HTML
75241 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Wysiwyg.ABTesting

KaufmannDigital.GDPR.CookieConsent
A ready-to-run package, that integrates an advanced cookie consent banner into your Neos CMS site.
Stars: ✭ 21 (+31.25%)
Mutual labels:  neoscms, neos, neos-plugin
neos-blog
A simple blog plugin for Neos CMS
Stars: ✭ 17 (+6.25%)
Mutual labels:  neoscms, neos, neos-plugin
NeosAcl
No description or website provided.
Stars: ✭ 13 (-18.75%)
Mutual labels:  neoscms, neos
neos-debug
Adds a debug panel to your Neos CMS website
Stars: ✭ 31 (+93.75%)
Mutual labels:  neoscms, neos-plugin
growthbook
Open Source Feature Flagging and A/B Testing Platform
Stars: ✭ 2,342 (+14537.5%)
Mutual labels:  ab-testing, abtesting
evolutio
ab testing framework with automated code removing
Stars: ✭ 15 (-6.25%)
Mutual labels:  ab-testing, abtesting
experiment
A/B cookie testing tool for @laravel
Stars: ✭ 55 (+243.75%)
Mutual labels:  ab-testing, abtesting
VariantRetriever
VariantRetriever is a minimalist package for feature flagging
Stars: ✭ 23 (+43.75%)
Mutual labels:  ab-testing
Sitegeist.Taxonomy
Manage vocabularies and taxonomies as separate node-hierarchy.
Stars: ✭ 14 (-12.5%)
Mutual labels:  neoscms
causeinfer
Machine learning based causal inference/uplift in Python
Stars: ✭ 45 (+181.25%)
Mutual labels:  ab-testing
Flowpack.SimpleSearch.ContentRepositoryAdaptor
Adaptor for the Neos CR, based on the SimpleSearch package
Stars: ✭ 23 (+43.75%)
Mutual labels:  neoscms
UserManagement
User Management Package for Neos and Flow
Stars: ✭ 37 (+131.25%)
Mutual labels:  neos
intellij-neos
Support for the Neos CMS in Intellij IDEA / PhpStorm
Stars: ✭ 37 (+131.25%)
Mutual labels:  neoscms
laravel-ab
Laravel A/B experiment testing tool
Stars: ✭ 108 (+575%)
Mutual labels:  ab-testing
graphql
Flow Package to add graphql APIs to Neos and Flow that also supports some advanced features
Stars: ✭ 14 (-12.5%)
Mutual labels:  neoscms
Newsletter
Neos Newsletter Sending Package
Stars: ✭ 19 (+18.75%)
Mutual labels:  neoscms
vue-a2b
Split Testing for Vue.js
Stars: ✭ 82 (+412.5%)
Mutual labels:  ab-testing
iter8-analytics
AI-engine that powers Iter8
Stars: ✭ 16 (+0%)
Mutual labels:  ab-testing
ruby-client
Ruby SDK client for Split Software
Stars: ✭ 22 (+37.5%)
Mutual labels:  ab-testing
intergo
A package for interleaving / multileaving ranking generation in go
Stars: ✭ 30 (+87.5%)
Mutual labels:  ab-testing

wysiwyg* - Neos A/B Testing

Neos Package Neos Project PHP 7.1 and above

This package provides a simple to use backend module and frontend container to run A/B tests in Neos.

Installation

Run these commands to install the package and update the database schema.

composer require wy/neos-abtesting

./flow flow:doctrine:migrate

Usage

 demo image

 demo image

This package offers a node container for displaying two different nodes for two different decisions (A or B).

You can add the A/B testing container to your constraints: Wysiwyg.ABTesting:ABTestingContainer

The container has three contentCollections:

  • itemsa
  • itemsb
  • itemsc

By default these collections accept all content nodes. This can be changed by overriding the respective node configuration in your own NodeTypes.yaml file. An editor has to put one or more nodes in each content collection.

IMPORTANT
Both versions will always be rendered in the Neos backend. Per default version A will be displayed in the frontend if no feature has been configured and selected.

You can find an option group "A / B Testing" in each ABTestingContainer. This group provides a dropdown menu to choose which feature will be used for the container.

Preview Different Versions

Sometimes it is necessary to view a different version of the feature.
For viewing a different version add the "forceABVersion" GET-parameter into the url and assign the desired version as the value.

Example:
Show Version A https://example.com/greatFeature.html?forceABVersion=a Show Version B https://example.com/greatFeature.html?forceABVersion=b Show Version C https://example.com/greatFeature.html?forceABVersion=c

This parameter will not override the cookie value.

Backend-Module Usage

You will find a new "A/B Testing" menu item in the main menu of the Neos backend. The module "Features" will offer all necessary functions to manage A/B testing features. In the A/B testing dashboard you will find the following options:

  • "Create Feature": Add a new A/B test feature
  • "Feature List": Shows a list of all A/B test features

Feature List
 demo image

Settings

This package uses default values for creating a cookie.
There are several settings which can be modified for your own implementation.

Wysiwyg:  
  ABTesting:  
    cookie:  
      name: 'WYSIWYG_AB_TESTING'  
      lifetime: '+2 years'  

Per default the cookie has a lifetime of 2 years. Please consider that strtotime() is used to evaluate the lifetime setting's value if you need to adjust it.

Regarding Privacy (i.e. GDPR)

Please note that all A/B testing decisions will be saved in a cookie that by default is named "WYSIWYG_AB_TESTING" and has a lifetime of 2 years. This cookie will be created whenever a user opens the webpage for the first time.
It contains a raw JSON string which includes all names of the features and their decision (a or b).
Whenever a user enters the page and already has the cookie, it will be made sure that all active features are saved with a decision. If there are new features they will be added to the cookie and a new JSON string will be saved with all decisions.

Contributing

Pull requests are welcome. For major changes please open an issue first to discuss what you would like to change.

Planned Features

We want to enhance the A/B testing with more solid features.

  • Decider-Chaining
    Right now it's only possible to add one decision to a feature.
    We want to make it possible to add a chaining of deciders for example DimensionDecision AND Percentage.

Authors

Sven Wütherich
Alexander Schulte
Eva-Maria Müller
Marvin Kuhn

License

This package is released under the MIT License (MIT). Please see License File for more information.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].