From 5056b608c368239f33bf4ef845fd68284df5d8db Mon Sep 17 00:00:00 2001 From: Arnaud Levy <contact@arnaudlevy.com> Date: Wed, 9 Feb 2022 11:54:44 +0100 Subject: [PATCH] wysiwyg --- docs/communication/wysiwyg.md | 66 +++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 docs/communication/wysiwyg.md diff --git a/docs/communication/wysiwyg.md b/docs/communication/wysiwyg.md new file mode 100644 index 000000000..53a331177 --- /dev/null +++ b/docs/communication/wysiwyg.md @@ -0,0 +1,66 @@ +# WYSIWYG + +## Quels enjeux ? + +Permettre l'édition, mais limiter les options graphiques (ni couleurs, ni tailles, ni typos). + +Fonctionnalités : +- intégration d'images dans le corps du texte, en gardant la trace du blob active storage, et en les intégrant dans la liste des dépendances. +- intégration de vidéos. +- intégration d'autres formats (Tweets...). + +## Solutions techniques + +### ActionText + +Avantages : +- active storage intégré +- Trix intégré + +Inconvénients : +- Pas de modèle (polymorphic) + +### Trix + +Avantages : +- intégré à ActionText +- très limité + +Inconvénients : +- très limité (target blank, 1 seul niveau de titre, pas d'embed, pas de code source) +- pas extensible + +### Summernote + +Avantages : +- vaste +- extensible + +Inconvénients : +- dépendance jQuery +- pas intégré à ActionText +- moyennement robuste quand on le torture + +### Page builder custom + +Avantages : +- puissant +- souple + +Inconvénients : +- compliqué à construire et maintenir +- compliqué à utiliser + + +## Benchmark + +[Refinery](https://www.refinerycms.com/) + + +[Spina](https://spinacms.com/) + + +[Alchemy CMS](https://alchemy-cms.com/) + + +[Locomotive CMS](https://www.locomotivecms.com/) -- GitLab