SlideShare ist ein Scribd-Unternehmen logo
1 von 20
TheWYSIWYG in no time!
 Backend based CMS
 Time wasted by contributors
 Lots of forms to fill, need to preview each time
 WYSIWYG
 Time wasted by developers
 Often hard to customize for advanced features
 Togu is aWYSIWIG Content Management
Framework based on HTML 5
 Support for Desktop and Mobile devices
 Native support for Responsive design websites
 Large library of production-ready Components
 Easy contents creation
 WYSIWYG editing
 Fast to develop and customize
 Forget about the backend development
 Write the frontend code and you are done
 In place text editing
 Insert and modify resources with Drag & Drop
 Customize the website aspect in real time
 Access translated contents in one click
 History of modifications available in one click
 Adapt contents depending on the device or
the location
 Preview the website in mobile devices via an
integrated simulator
 Two-way data binding between the model
and the view
 The views are plain Mustache templates with
custom directives
 No more need to use jQuery Selectors
 Events binding extremely simple
 Dependency injection of Services into the
Controllers
 Inspired by Polymer /AngularJS
 The server acts as a Data Provider
 Delivers HTML just for the first Request, rendering
the template to be SEO compliant
 RESTWebServices expose the website data
 Completely agnostic from the Frontend
design
 No need to write a line of code in most cases
 Easy to port to different languages
 NodeJS / .NET / Java…
Create the
Templates
Write the
Controllers
Define the
Data Structure
Thank you
Questions?
www.togu.io
alessandro.siragusa@gmail.com
@alesirag

Weitere ähnliche Inhalte

Was ist angesagt?

Mvc presentation
Mvc presentationMvc presentation
Mvc presentation
MaslowB
 

Was ist angesagt? (20)

HTML5 Charting in ASP.NET using RadHtmlChart
HTML5 Charting in ASP.NET using RadHtmlChartHTML5 Charting in ASP.NET using RadHtmlChart
HTML5 Charting in ASP.NET using RadHtmlChart
 
Cloud Based Enterprise Apps using Everlive
Cloud Based Enterprise Apps using EverliveCloud Based Enterprise Apps using Everlive
Cloud Based Enterprise Apps using Everlive
 
Event Sourcing your Angular and React applications
Event Sourcing your Angular and React applicationsEvent Sourcing your Angular and React applications
Event Sourcing your Angular and React applications
 
ASP.NET Loves HTML5, Javascript and CSS3, or what's new in VS2013 for Web Dev...
ASP.NET Loves HTML5, Javascript and CSS3, or what's new in VS2013 for Web Dev...ASP.NET Loves HTML5, Javascript and CSS3, or what's new in VS2013 for Web Dev...
ASP.NET Loves HTML5, Javascript and CSS3, or what's new in VS2013 for Web Dev...
 
A Smooth Transition to HTML5 Using MVVM
A Smooth Transition to HTML5 Using MVVMA Smooth Transition to HTML5 Using MVVM
A Smooth Transition to HTML5 Using MVVM
 
Event sourcing your React-Flux applications
Event sourcing your React-Flux applicationsEvent sourcing your React-Flux applications
Event sourcing your React-Flux applications
 
ASP.NET MVC 4 Introduction
ASP.NET MVC 4 IntroductionASP.NET MVC 4 Introduction
ASP.NET MVC 4 Introduction
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
Create Hybrid Mobile Application with Icenium and Kendo UI Mobile
Create Hybrid Mobile Application with Icenium and Kendo UI Mobile Create Hybrid Mobile Application with Icenium and Kendo UI Mobile
Create Hybrid Mobile Application with Icenium and Kendo UI Mobile
 
Few Tips for asp.net developers 2014 and beyond
Few Tips for asp.net developers 2014 and beyondFew Tips for asp.net developers 2014 and beyond
Few Tips for asp.net developers 2014 and beyond
 
Build Hybrid Mobile Applications for Nokia Lumia Devices
Build Hybrid Mobile Applications for Nokia Lumia DevicesBuild Hybrid Mobile Applications for Nokia Lumia Devices
Build Hybrid Mobile Applications for Nokia Lumia Devices
 
The Evolution of Cloud-first Headless CMS [Infographics]
The Evolution of Cloud-first Headless CMS [Infographics]The Evolution of Cloud-first Headless CMS [Infographics]
The Evolution of Cloud-first Headless CMS [Infographics]
 
Website development & it's trends
Website development & it's trendsWebsite development & it's trends
Website development & it's trends
 
Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014
Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014
Building Single-page Web Applications with AngularJS @ TechCamp Sai Gon 2014
 
Mvc presentation
Mvc presentationMvc presentation
Mvc presentation
 
Mobile ASP.Net Web Forms - Making the impossible possible | FalafelCON 2014
Mobile ASP.Net Web Forms - Making the impossible possible | FalafelCON 2014Mobile ASP.Net Web Forms - Making the impossible possible | FalafelCON 2014
Mobile ASP.Net Web Forms - Making the impossible possible | FalafelCON 2014
 
Progressive Web Application - Advanced Topics
Progressive Web Application - Advanced TopicsProgressive Web Application - Advanced Topics
Progressive Web Application - Advanced Topics
 
A Smooth Transition to HTML5
A Smooth Transition to HTML5A Smooth Transition to HTML5
A Smooth Transition to HTML5
 
Kendo UI Wrappers in ASP.NET Core
Kendo UI Wrappers in ASP.NET CoreKendo UI Wrappers in ASP.NET Core
Kendo UI Wrappers in ASP.NET Core
 
Full stack devlopment using django main ppt
Full stack devlopment using django main pptFull stack devlopment using django main ppt
Full stack devlopment using django main ppt
 

Ähnlich wie Togu CMS

Building Mobile Web Apps using ASP.NET MVC, HTML5, & jQuery Mobile
Building Mobile Web Apps using ASP.NET MVC, HTML5, & jQuery MobileBuilding Mobile Web Apps using ASP.NET MVC, HTML5, & jQuery Mobile
Building Mobile Web Apps using ASP.NET MVC, HTML5, & jQuery Mobile
Jon Cortez
 
How we built nothingbutsharepoint.com on sharepoint 2010
How we built nothingbutsharepoint.com on sharepoint 2010How we built nothingbutsharepoint.com on sharepoint 2010
How we built nothingbutsharepoint.com on sharepoint 2010
Jeremy Thake
 
Directions on microsoft_web_and_cloud_development
Directions on microsoft_web_and_cloud_developmentDirections on microsoft_web_and_cloud_development
Directions on microsoft_web_and_cloud_development
Takeshi Shinmura
 
Pablo Villalba -
Pablo Villalba - Pablo Villalba -
Pablo Villalba -
.toster
 

Ähnlich wie Togu CMS (20)

Webpage Design Using Templates and Online WYSIWYG Platforms
Webpage Design Using Templates and Online WYSIWYG PlatformsWebpage Design Using Templates and Online WYSIWYG Platforms
Webpage Design Using Templates and Online WYSIWYG Platforms
 
Practical html5
Practical html5Practical html5
Practical html5
 
Angular webinar - Credo Systemz
Angular webinar - Credo SystemzAngular webinar - Credo Systemz
Angular webinar - Credo Systemz
 
Building SPA’s (Single Page App) with Backbone.js
Building SPA’s (Single Page App) with Backbone.jsBuilding SPA’s (Single Page App) with Backbone.js
Building SPA’s (Single Page App) with Backbone.js
 
Single Page Apps
Single Page AppsSingle Page Apps
Single Page Apps
 
WebriQ CMS for the JAM Stack
WebriQ CMS for the JAM Stack WebriQ CMS for the JAM Stack
WebriQ CMS for the JAM Stack
 
Asp Net Vs Vue JS Which One You Should Choose for Development.pdf
Asp Net Vs Vue JS Which One You Should Choose for Development.pdfAsp Net Vs Vue JS Which One You Should Choose for Development.pdf
Asp Net Vs Vue JS Which One You Should Choose for Development.pdf
 
Asp.net Vs Vue.js.pdf
Asp.net Vs Vue.js.pdfAsp.net Vs Vue.js.pdf
Asp.net Vs Vue.js.pdf
 
Angular JS Basics
Angular JS BasicsAngular JS Basics
Angular JS Basics
 
Building Mobile Web Apps using ASP.NET MVC, HTML5, & jQuery Mobile
Building Mobile Web Apps using ASP.NET MVC, HTML5, & jQuery MobileBuilding Mobile Web Apps using ASP.NET MVC, HTML5, & jQuery Mobile
Building Mobile Web Apps using ASP.NET MVC, HTML5, & jQuery Mobile
 
Static dynamic and active web pages
Static dynamic and active web pagesStatic dynamic and active web pages
Static dynamic and active web pages
 
How we built nothingbutsharepoint.com on sharepoint 2010
How we built nothingbutsharepoint.com on sharepoint 2010How we built nothingbutsharepoint.com on sharepoint 2010
How we built nothingbutsharepoint.com on sharepoint 2010
 
Web Development Today
Web Development TodayWeb Development Today
Web Development Today
 
Features
FeaturesFeatures
Features
 
Why do JavaScript enthusiast think of Vue.js for building real-time web appli...
Why do JavaScript enthusiast think of Vue.js for building real-time web appli...Why do JavaScript enthusiast think of Vue.js for building real-time web appli...
Why do JavaScript enthusiast think of Vue.js for building real-time web appli...
 
Directions on microsoft_web_and_cloud_development
Directions on microsoft_web_and_cloud_developmentDirections on microsoft_web_and_cloud_development
Directions on microsoft_web_and_cloud_development
 
Web Applications Are Technically Awesome!
Web Applications Are Technically Awesome!Web Applications Are Technically Awesome!
Web Applications Are Technically Awesome!
 
Word press with react – implementing headless wordpress with reactjs converted
Word press with react – implementing headless wordpress with reactjs convertedWord press with react – implementing headless wordpress with reactjs converted
Word press with react – implementing headless wordpress with reactjs converted
 
Pablo Villalba -
Pablo Villalba - Pablo Villalba -
Pablo Villalba -
 
Single page applications with backbone js
Single page applications with backbone jsSingle page applications with backbone js
Single page applications with backbone js
 

Kürzlich hochgeladen

%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 

Kürzlich hochgeladen (20)

Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdfThe Top App Development Trends Shaping the Industry in 2024-25 .pdf
The Top App Development Trends Shaping the Industry in 2024-25 .pdf
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban
 
%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand%in Midrand+277-882-255-28 abortion pills for sale in midrand
%in Midrand+277-882-255-28 abortion pills for sale in midrand
 
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 

Togu CMS

  • 2.  Backend based CMS  Time wasted by contributors  Lots of forms to fill, need to preview each time  WYSIWYG  Time wasted by developers  Often hard to customize for advanced features
  • 3.  Togu is aWYSIWIG Content Management Framework based on HTML 5  Support for Desktop and Mobile devices  Native support for Responsive design websites  Large library of production-ready Components
  • 4.  Easy contents creation  WYSIWYG editing  Fast to develop and customize  Forget about the backend development  Write the frontend code and you are done
  • 5.  In place text editing  Insert and modify resources with Drag & Drop  Customize the website aspect in real time  Access translated contents in one click  History of modifications available in one click  Adapt contents depending on the device or the location  Preview the website in mobile devices via an integrated simulator
  • 6.
  • 7.  Two-way data binding between the model and the view  The views are plain Mustache templates with custom directives  No more need to use jQuery Selectors  Events binding extremely simple  Dependency injection of Services into the Controllers  Inspired by Polymer /AngularJS
  • 8.  The server acts as a Data Provider  Delivers HTML just for the first Request, rendering the template to be SEO compliant  RESTWebServices expose the website data  Completely agnostic from the Frontend design  No need to write a line of code in most cases  Easy to port to different languages  NodeJS / .NET / Java…
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.

Hinweis der Redaktion

  1. Aujourd’hui il y a deux types principales de CMS: les CMS classiques, comme Wordpress, Drupal, Joomla, et les CMS WYSIWYG. Les premières sont généralement assez flexibles et simples pour les développeurs, mais risque d’être très compliqués pour les contributeurs et peu ergonomiques, car on n’a pas une aperçu immédiate du contenu. Les deuxièmes ont l’avantage d’une aperçu directe du résultat finale, mais manque de flexibilité pour des interfaces très custom, comme de plus en plus demandé par le HTML5.
  2. Togu est un Content Management Framework qui aide le développement de sites web administrables en WYSIWYG. Il est de nature responsive et il met à disposition une grande librairie de composants optimisés prêts à être utilisés en production.
  3. Togu a comme objectif de simplifier la création de sites web en HTML 5 avec une interface d’édition WYSIWYG. Le développeur n’aura pas besoin de modifier le backend ou l’interface d’administration, car assez génériques pour s’adapter à tous les usages. L’effort, parfois requis, est de remettre en forme le composant édité. Ceci se fait en appelant les mêmes fonctionnes écrites pour mettre en forme le composant, donc une tache très simple et rapide à mettre en place.
  4. Parmi les caractéristiques de Togu, il y a l’édition du texte en temps réel, la possibilité d’ajouter et changer images, vidéos et blocs de contenu en Drag & Drop. Tout type de modification faite au site est immédiatement visualisable par l’éditeur, car le site s’adapte en temps réel. L’éditeur a la possibilité d’accéder simplement aux versions traduites de la même page, et d’accéder aux différentes versions de la page en temps réel en quelque click. Il peut également visualiser les contenus sur tablette et téléphone par le biais d’un simulateur intégré et les adapter selon le type de device, ou de géolocalisation.
  5. Togu se base sur les Frameworks suivants: ExtJS Le Framework utilisé pour créer l’interface d’administration, il met à disposition des libraries robustes pour créer toutes les interfaces nécessaires à la gestion d’un CMS avancé ExtCore Utilisé dans le Frontend, permet de faire l’héritage JavaScript de classe de manière très propre et de créer des Objets JavaScript observables jQuery Permet d’avoir accès à une quantité énorme de plugins et de simplifier l’accès au DOM Symfony L’un des Frameworks Backend plus populaires, permet d’abstraire le modèle de données coté serveur, de connecter simplement Togu à des data sources externes et d’avoir une gestion des droits robuste.
  6. L’architecture du Frontend de Togu est MVC. Son data binding bidirectionnel entre le modèle et la vue permet de simplifier extrêmement le développement, car pour modifier l’aspect de la vue il suffit d’agir sur le modèle de données et vice-versa, une modification de la vue sera répercuté immédiatement sur le modèle. Les vues sont des fichiers HTML5 qui utilisent la syntaxe des Mustaches pour les variables, on utilise des attributs pour spécifier les fonctionnalités des nœuds. A différence de Frameworks comme AngularJS ou Polymer, la syntaxe expressément simple est faite pour pouvoir obtenir le même rendu coté Backend que Frontend. Ceci permet une indexation correcte par les moteurs de recherche. On peut assigner des nœuds DOM au contrôleur et binder des évènements de manière très simple, grâce aux directives. Injection de service dans les controleurs permet d’avoir un couplage faible entre les Controleurs et les Services. Les principes de développement sont inspirés par les Frameworks de Google Polymer et AngularJS, malgré une implémentation « from scratch » du Framework.
  7. Le Backend de Togu a été conçu pour agir comme Data Provider: il livre qu’au navigateur un fichier HTML qui contient le DOM nécessaire à l’indexation par les moteurs de recherche. Le reste des communications est fait par des requêtes AJAX via des Webservices REST. Étant donné que le Backend doit renvoyer que des données et ne pas prendre en charge l’affichage des interfaces d’administration et du Frontend, sa logique est très simple et le nombre de lignes de code nécessaire à son implémentation très réduit. Ceci fait que pour des sites éditoriaux souvent il n’est pas nécessaire d’écrire du code Backend ou ceci est très limité. Un autre avantage de ce choix est que le Backend peut être porté dans des autres langages de programmation, comme NodeJS, .NET, Java
  8. Le workflow de développent de Togu est composé de trois étapes principales: Création des fichiers de Template Définition des structures de données Écriture du contrôleur (si nécessaire)
  9. Comme dit en précédence, la syntaxe de Togu est du type Mustache, les variables sont écrites entre des accolades. À l’aide des directives, on définit le nom du Template, on assigne des nœuds au controleur (cmf-far) et on bind des évenments (cmf-on) On verra dans la suite comment les utiliser dans les controleurs
  10. Ici le modèle de données qui définit les types des variables et nous permet de créer les interfaces d’administration pour un composant donné. Chaque champ a son nom (ce qu’il est affiché dans le Template), le type, sa valeur par default, et les paramètres pour générer l’interface d’administration. Son format peut sembler un peu compliqué et verbeux, c’est pour ça que dans la roadmap du projet il y a le développement d’une GUI en ExtJS pour le paramétrer et gagner du temps.
  11. Ceci est le contrôleur pour le Template défini avant. Ici on peut voir comment fonctionne l’injection de dépendance, via le paramètre inject, le bind des évènements (via le paramètre listen), comment affecter les valeurs du modèle (this.data.set) et comment accéder aux éléments du DOM (this.$)
  12. Ceci est l’interface d’administration de Togu pour un site fait pour un atelier, on peut trouver le site sur www.onomatopees.fr. Sur la gauche on peut voir la liste des pages du site web triés par catégorie, sur la droite la liste des composants de la page et en bas leur propriétés. On peut faire Drag & Drop des nœuds de l’arbre des composants pour en changer l’ordre dans la grille. Pour modifier largeur et hauteur des blocs, changer lien et image de fond, il suffit de changer les valeurs dans le panneau Properties. On peut enfin changer les textes en utilisant les “Properties” ou bien en cliquant et écrivant directement sur la page.
  13. Le composant en surbrillance est le composant qu’on a montré dans l’exemple précèdent. Le code qu’on a écrit nous suffit pour pouvoir faire Drag & Drop d’un lien de la partie gauche et le déposer directement dans le composant pour le changer à la volée.
  14. Le même Drag & Drop peut être effectué depuis la bibliothèque d’images pour changer l’image de fond. On peut apprécier la structure à arborescence des images, qui permet d’en trier une grosse quantité.
  15. L’éditeur textuel de données nous permet d’accéder à la liste de tous les composants qui sont stockes dans la base de données, d’en inspecter et d’éditer leurs propriétés. Cette vue est très utile si on veut gérer un catalogue de produits, par exemple.
  16. Et comme pour le reste elle nous permet de faire Drag & Drop d’un projet sur un autre pour le changer sur la page.