SlideShare a Scribd company logo
Connect Web Experience. Basel.
Modular Front-End in AEM. Namics.
Michael Kreis. Software Engineer.
René Bach. Senior Frontend Engineer.
25. Juni 2014
Namics.
Agenda.
 Who we are
 Modular Front-End
 Challenges
 Experiences
 Outlook
The challenge of implementing modular front-end in a AEM environment. A case study.
27.06.2014 Denken. Präsentieren. Umsetzen.2
Namics.
Who we are.
27.06.2014 3 Denken. Präsentieren. Umsetzen.
Namics.
Michael Kreis.
Software Engineer
Namics, St. Gallen
The challenge of implementing modular front-end in a AEM environment. A case study.
27.06.2014 Denken. Präsentieren. Umsetzen.4
Namics.
René Bach.
Senior Frontend
Engineer
Namics, Zürich
The challenge of implementing modular front-end in a AEM environment. A case study.
27.06.2014 5 Denken. Präsentieren. Umsetzen.
Namics.
Namics.
 Leading Swiss Internet consultancy with a strong
presence in the German market.
 Focus
 Internet Strategy
 Design and implementation of user-centered, efficient and
compelling internet applications
 Marketing and launch support of online activities
 Standards based approach, pragmatic realization
The challenge of implementing modular front-end in a AEM environment. A case study.
27.06.2014 6 Denken. Präsentieren. Umsetzen.
Namics.
Namics.
 Facts and figures
 founded 1995 as a spin-off of the University of St. Gallen
 > 430 employees, Revenue 2013 CHF 55 Mns
 Locations: Frankfurt, Hamburg, Munich,
St. Gallen, Zurich
The challenge of implementing modular front-end in a AEM environment. A case study.
27.06.2014 7 Denken. Präsentieren. Umsetzen.
Namics.
Modular Front-End.
27.06.2014 8 Denken. Präsentieren. Umsetzen.
Namics.
What is a module?
Modular Front-End.
27.06.2014 Denken. Präsentieren. Umsetzen.9
Namics.
What is a module?
Modular Front-End.
27.06.2014 10 Denken. Präsentieren. Umsetzen.
 A module is a unique element that has a specific set of
functionalities and is not tied to the layout of a website.
 Wherever the module resides on the site, it has the same
general sub elements and functionality.
 Modules should be independent of other modules or
layout elements.
Namics.
What is a module?
Modular Front-End.
27.06.2014 11 Denken. Präsentieren. Umsetzen.
 A module is a unique element that has a specific set of
functionalities and is not tied to the layout of a website.
 Wherever the module resides on the site, it has the same
general sub elements and functionality.
 Modules should be independent of other modules or
layout elements.
Namics.
What is a module?
Modular Front-End.
27.06.2014 12 Denken. Präsentieren. Umsetzen.
 A module is a unique element that has a specific set of
functionalities and is not tied to the layout of a website.
 Wherever the module resides on the site, it has the same
general sub elements and functionality.
 Modules should be independent of other modules or
layout elements.
Namics.
Why using modules?
Modular Front-End.
27.06.2014 Denken. Präsentieren. Umsetzen.13
Namics.
Why using modules?
 The code will be cleaner, because CSS and JS of
modules are bundled in an own module-file-structure
 Changes in markup, CSS and JS can be done very
quick, because it's clear where to find it in the code
 Modules are reusable
 Modules can have different representations (“skins”)  
Modular Front-End.
27.06.2014 Denken. Präsentieren. Umsetzen.14
Namics.
Why using modules?
 The code will be cleaner, because CSS and JS of
modules are bundled in an own module-file-structure
 Changes in markup, CSS and JS can be done very
quick, because it's clear where to find it in the code
 Modules are reusable
 Modules can have different representations (“skins”)  
Modular Front-End.
27.06.2014 Denken. Präsentieren. Umsetzen.15
Namics.
Why using modules?
 The code will be cleaner, because CSS and JS of
modules are bundled in an own module-file-structure
 Changes in markup, CSS and JS can be done very
quick, because it's clear where to find it in the code
 Modules are reusable
 Modules can have different representations (“skins”)  
Modular Front-End.
27.06.2014 Denken. Präsentieren. Umsetzen.16
Namics.
Why using modules?
 The code will be cleaner, because CSS and JS of
modules are bundled in an own module-file-structure
 Changes in markup, CSS and JS can be done very
quick, because it's clear where to find it in the code
 Modules are reusable
 Modules can have different representations (“skins”)  
Modular Front-End.
27.06.2014 Denken. Präsentieren. Umsetzen.17
Namics.
Getting started with modular front-end
Modular Front-End.
27.06.2014 Denken. Präsentieren. Umsetzen.18
Namics.
Getting started with modular front-end
Modular Front-End.
27.06.2014 19 Denken. Präsentieren. Umsetzen.
 Layout
 First structure your layout (header, footer, sitebar, main-
area,...)
 Figure out variations of layout elements
Namics.
Getting started with modular front-end
Modular Front-End.
27.06.2014 20 Denken. Präsentieren. Umsetzen.
 Layout
Namics.
Getting started with modular front-end
Modular Front-End.
27.06.2014 21 Denken. Präsentieren. Umsetzen.
 Modules
 Figure out modules
 Don't be to general
 Don't be to specific
Namics.
Getting started with modular front-end
Modular Front-End.
27.06.2014 22 Denken. Präsentieren. Umsetzen.
 Modules
Namics.
Frameworks
Modular Front-End.
27.06.2014 Denken. Präsentieren. Umsetzen.23
Namics.
Frameworks
Modular Front-End.
27.06.2014 24 Denken. Präsentieren. Umsetzen.
Namics.
Frameworks - Terrific
Modular Front-End.
27.06.2014 Denken. Präsentieren. Umsetzen.25
Namics.
Frameworks - Terrific
 Markup
 modules/navmain/navmain.html
Modular Front-End.
27.06.2014 Denken. Präsentieren. Umsetzen.26
Namics.
Frameworks - Terrific
 CSS / LESS
 modules/navmain/css/navmain.less
Modular Front-End.
27.06.2014 Denken. Präsentieren. Umsetzen.27
Namics.
Frameworks - Terrific
 JavaScript
 modules/navmain/js/navmain.js
Modular Front-End.
27.06.2014 Denken. Präsentieren. Umsetzen.28
Namics.
Frameworks – Terrific-Micro
Modular Front-End.
27.06.2014 29 Denken. Präsentieren. Umsetzen.
 Boilerplate for Terrific Modules
 Module template generator
 Features
 CSS/JS concatenation & minification
 LESS/SASS support (optional)
 Caching (LESS/SASS) for optimal performance
 Written in PHP
https://github.com/rogerdudler/terrific-micro
Namics.
Challenges.
27.06.2014 30 Denken. Präsentieren. Umsetzen.
Namics.
Bringing Back-End and Front-End together
 We are using CQ and Terrific
 Development, both back-end and front-end, must be
quick
 The less develpoment dependencies between BE & FE,
the better
 FE should be able to use the same tools in for every
environment
Challenges.
27.06.2014 Denken. Präsentieren. Umsetzen.31
Namics.
Experiences.
27.06.2014 32 Denken. Präsentieren. Umsetzen.
Namics.
Integration approach I
 Develop FE in standalone Terrific
 Deliver compiled assets
Experiences.
27.06.2014 Denken. Präsentieren. Umsetzen.33
+ Same tools
+ Quick setup
 Different code base
 Hard to keep track of
changes
 Complete FE should be
finished when starting
with BE
Namics.
Integration approach II
 Adapt modular concept in CQ
 Only use Terrific JS framework
Experiences.
27.06.2014 Denken. Präsentieren. Umsetzen.34
+ Standard CQ
+ Quick setup
+ Same code base
 Different tools for FE
 CQ instance needed for FE
Namics.
Integration approach III
 Fully integrate Terrific in CQ
 Use Terrific modules as CQ components
Experiences.
27.06.2014 Denken. Präsentieren. Umsetzen.35
+ Same code base
+ FE and BE can use their
tools
 Differences between CQ
and Terrific concepts
 Pages / Views
 Assets
Namics.
Integration approach III
 Terrific Micro is installed in
component directory
 Exclude Terrific files in CRX
Package
 FE only uses component
directory
Experiences.
27.06.2014 Denken. Präsentieren. Umsetzen.36
Namics.
Integration approach III – Component handling
 Terrific modules are used as CQ components
 Own ClientLib for each module/component
 Embed module ClientLibs in
design ClientLib
(/etc/designs/project/clientlibs.css)
Experiences.
27.06.2014 Denken. Präsentieren. Umsetzen.37
Namics.
Integration approach III – Asset handling
 No access to Terrific asset folder in CQ
 Copy to design folder
 Maven resource plugin
 Rewrite references in Stylesheets
 Maven replacer plugin

 No direct references in markup possible
Experiences.
27.06.2014 Denken. Präsentieren. Umsetzen.38
Namics.
Integration approach III
Experiences.
27.06.2014 Denken. Präsentieren. Umsetzen.39
Available on Github: https://github.com/m-kay/connect-terrific-aem
Namics.
Perfect world???
Experiences.
27.06.2014 Denken. Präsentieren. Umsetzen.40
Namics.
Known problems
 Markup has to be copied
 Changes in markup do not take immediate effect in CQ
 Terrific does not have the same concept of pages like
CQ
 Different LESS compiler in Terrific and CQ
Experiences.
27.06.2014 Denken. Präsentieren. Umsetzen.41
Namics.
Outlook.
27.06.2014 42 Denken. Präsentieren. Umsetzen.
Namics.
Possibilities in AEM 6
 Sightly is only using valid HTML
 Can be rendered in Apache and CQ
 Same source even for markup
Outlook.
27.06.2014 Denken. Präsentieren. Umsetzen.43
Namics.
Questions? Comments?
27.06.2014 44 Denken. Präsentieren. Umsetzen.
Namics.
Thank you for your attention.
michael.kreis@namics.com
rene.bach@namics.com
© Namics
27.06.2014 45 Denken. Präsentieren. Umsetzen.

More Related Content

Viewers also liked

Digital analytics namics marco hassler_20140822
Digital analytics namics marco hassler_20140822Digital analytics namics marco hassler_20140822
Digital analytics namics marco hassler_20140822
Namics – A Merkle Company
 
Sitecore Digital Trendspot - Eiger Nordwand - Interhomes Aufstieg zum Custome...
Sitecore Digital Trendspot - Eiger Nordwand - Interhomes Aufstieg zum Custome...Sitecore Digital Trendspot - Eiger Nordwand - Interhomes Aufstieg zum Custome...
Sitecore Digital Trendspot - Eiger Nordwand - Interhomes Aufstieg zum Custome...
Namics – A Merkle Company
 
Fachveranstaltung Digital Marketing – Besticht mit aktuellen, personalisierte...
Fachveranstaltung Digital Marketing – Besticht mit aktuellen, personalisierte...Fachveranstaltung Digital Marketing – Besticht mit aktuellen, personalisierte...
Fachveranstaltung Digital Marketing – Besticht mit aktuellen, personalisierte...Namics – A Merkle Company
 
Strategisches & kanalübergreifendes KPI Framework
Strategisches & kanalübergreifendes KPI FrameworkStrategisches & kanalübergreifendes KPI Framework
Strategisches & kanalübergreifendes KPI Framework
Namics – A Merkle Company
 
B2B Commerce zwischen Apple und SAP - Raphael Hauser, E-Commerce Konferenz 20...
B2B Commerce zwischen Apple und SAP - Raphael Hauser, E-Commerce Konferenz 20...B2B Commerce zwischen Apple und SAP - Raphael Hauser, E-Commerce Konferenz 20...
B2B Commerce zwischen Apple und SAP - Raphael Hauser, E-Commerce Konferenz 20...
Namics – A Merkle Company
 
Fachveranstaltung Digital Marketing – Multichannel, CRM, Kampagnen – und was ...
Fachveranstaltung Digital Marketing – Multichannel, CRM, Kampagnen – und was ...Fachveranstaltung Digital Marketing – Multichannel, CRM, Kampagnen – und was ...
Fachveranstaltung Digital Marketing – Multichannel, CRM, Kampagnen – und was ...Namics – A Merkle Company
 
Usability-Testing - nichts leichter als das!
Usability-Testing - nichts leichter als das!Usability-Testing - nichts leichter als das!
Usability-Testing - nichts leichter als das!
Namics – A Merkle Company
 
Fachveranstaltung Digital Marketing – Welcher Digital Marketing Typ sind Sie?...
Fachveranstaltung Digital Marketing – Welcher Digital Marketing Typ sind Sie?...Fachveranstaltung Digital Marketing – Welcher Digital Marketing Typ sind Sie?...
Fachveranstaltung Digital Marketing – Welcher Digital Marketing Typ sind Sie?...Namics – A Merkle Company
 
Das Intranet Konzept
Das Intranet KonzeptDas Intranet Konzept
Das Intranet Konzept
Volker Grünauer
 
Mit quantitativen Personas zu höherer Conversion - Von der Konzeption bis zur...
Mit quantitativen Personas zu höherer Conversion - Von der Konzeption bis zur...Mit quantitativen Personas zu höherer Conversion - Von der Konzeption bis zur...
Mit quantitativen Personas zu höherer Conversion - Von der Konzeption bis zur...
Namics – A Merkle Company
 
Customer Experience: Best Practices aus aktuellen Projekten.
Customer Experience: Best Practices aus aktuellen Projekten.Customer Experience: Best Practices aus aktuellen Projekten.
Customer Experience: Best Practices aus aktuellen Projekten.
Namics – A Merkle Company
 
Решение по управлению цифровыми активами от компании Oracle.
Решение по управлению цифровыми активами от компании Oracle.Решение по управлению цифровыми активами от компании Oracle.
Решение по управлению цифровыми активами от компании Oracle.Anton Shmakov
 
Evaluacion Factorial de las Aptitudes
Evaluacion Factorial de las AptitudesEvaluacion Factorial de las Aptitudes
Evaluacion Factorial de las Aptitudes
karkim
 
Open Source Superfriends for Super Small Library Budgets
Open Source Superfriends for Super Small Library BudgetsOpen Source Superfriends for Super Small Library Budgets
Open Source Superfriends for Super Small Library Budgets
Goodnight Memorial Library
 
Presentacion Cavas Patagon Castellano
Presentacion Cavas Patagon CastellanoPresentacion Cavas Patagon Castellano
Presentacion Cavas Patagon CastellanoArmando Gavidia
 
презентация релиз 5
презентация релиз 5презентация релиз 5
презентация релиз 5eugenij eugenij
 

Viewers also liked (19)

Digital analytics namics marco hassler_20140822
Digital analytics namics marco hassler_20140822Digital analytics namics marco hassler_20140822
Digital analytics namics marco hassler_20140822
 
Sitecore Digital Trendspot - Eiger Nordwand - Interhomes Aufstieg zum Custome...
Sitecore Digital Trendspot - Eiger Nordwand - Interhomes Aufstieg zum Custome...Sitecore Digital Trendspot - Eiger Nordwand - Interhomes Aufstieg zum Custome...
Sitecore Digital Trendspot - Eiger Nordwand - Interhomes Aufstieg zum Custome...
 
2014 05-24-i a-konferenz-frombrand2experience
2014 05-24-i a-konferenz-frombrand2experience2014 05-24-i a-konferenz-frombrand2experience
2014 05-24-i a-konferenz-frombrand2experience
 
Fachveranstaltung Digital Marketing – Besticht mit aktuellen, personalisierte...
Fachveranstaltung Digital Marketing – Besticht mit aktuellen, personalisierte...Fachveranstaltung Digital Marketing – Besticht mit aktuellen, personalisierte...
Fachveranstaltung Digital Marketing – Besticht mit aktuellen, personalisierte...
 
Strategisches & kanalübergreifendes KPI Framework
Strategisches & kanalübergreifendes KPI FrameworkStrategisches & kanalübergreifendes KPI Framework
Strategisches & kanalübergreifendes KPI Framework
 
B2B Commerce zwischen Apple und SAP - Raphael Hauser, E-Commerce Konferenz 20...
B2B Commerce zwischen Apple und SAP - Raphael Hauser, E-Commerce Konferenz 20...B2B Commerce zwischen Apple und SAP - Raphael Hauser, E-Commerce Konferenz 20...
B2B Commerce zwischen Apple und SAP - Raphael Hauser, E-Commerce Konferenz 20...
 
Was kann ein modernes Intranet heute?
Was kann ein modernes Intranet heute?Was kann ein modernes Intranet heute?
Was kann ein modernes Intranet heute?
 
Fachveranstaltung Digital Marketing – Multichannel, CRM, Kampagnen – und was ...
Fachveranstaltung Digital Marketing – Multichannel, CRM, Kampagnen – und was ...Fachveranstaltung Digital Marketing – Multichannel, CRM, Kampagnen – und was ...
Fachveranstaltung Digital Marketing – Multichannel, CRM, Kampagnen – und was ...
 
Usability-Testing - nichts leichter als das!
Usability-Testing - nichts leichter als das!Usability-Testing - nichts leichter als das!
Usability-Testing - nichts leichter als das!
 
Fachveranstaltung Digital Marketing – Welcher Digital Marketing Typ sind Sie?...
Fachveranstaltung Digital Marketing – Welcher Digital Marketing Typ sind Sie?...Fachveranstaltung Digital Marketing – Welcher Digital Marketing Typ sind Sie?...
Fachveranstaltung Digital Marketing – Welcher Digital Marketing Typ sind Sie?...
 
Das Intranet Konzept
Das Intranet KonzeptDas Intranet Konzept
Das Intranet Konzept
 
Mit quantitativen Personas zu höherer Conversion - Von der Konzeption bis zur...
Mit quantitativen Personas zu höherer Conversion - Von der Konzeption bis zur...Mit quantitativen Personas zu höherer Conversion - Von der Konzeption bis zur...
Mit quantitativen Personas zu höherer Conversion - Von der Konzeption bis zur...
 
Customer Experience: Best Practices aus aktuellen Projekten.
Customer Experience: Best Practices aus aktuellen Projekten.Customer Experience: Best Practices aus aktuellen Projekten.
Customer Experience: Best Practices aus aktuellen Projekten.
 
Решение по управлению цифровыми активами от компании Oracle.
Решение по управлению цифровыми активами от компании Oracle.Решение по управлению цифровыми активами от компании Oracle.
Решение по управлению цифровыми активами от компании Oracle.
 
Evaluacion Factorial de las Aptitudes
Evaluacion Factorial de las AptitudesEvaluacion Factorial de las Aptitudes
Evaluacion Factorial de las Aptitudes
 
Open Source Superfriends for Super Small Library Budgets
Open Source Superfriends for Super Small Library BudgetsOpen Source Superfriends for Super Small Library Budgets
Open Source Superfriends for Super Small Library Budgets
 
八白散
八白散八白散
八白散
 
Presentacion Cavas Patagon Castellano
Presentacion Cavas Patagon CastellanoPresentacion Cavas Patagon Castellano
Presentacion Cavas Patagon Castellano
 
презентация релиз 5
презентация релиз 5презентация релиз 5
презентация релиз 5
 

Similar to CONNECT Web Experience - Basel. Treffen der AEM Developer Community.

Let us understand design pattern
Let us understand design patternLet us understand design pattern
Let us understand design pattern
Mindfire Solutions
 
Oops design pattern intro
Oops design pattern intro Oops design pattern intro
Oops design pattern intro
anshu_atri
 
DP PPTS by BK.pptx
DP PPTS by BK.pptxDP PPTS by BK.pptx
DP PPTS by BK.pptx
chandrasenareddychan
 
The Modlet Pattern
The Modlet PatternThe Modlet Pattern
The Modlet Pattern
Adam L Barrett
 
Managing modular software for your nu get, c++ and java development
Managing modular software for your nu get, c++ and java developmentManaging modular software for your nu get, c++ and java development
Managing modular software for your nu get, c++ and java development
Baruch Sadogursky
 
Workshop 2: JavaScript Design Patterns
Workshop 2: JavaScript Design PatternsWorkshop 2: JavaScript Design Patterns
Workshop 2: JavaScript Design Patterns
Visual Engineering
 
SCSS Styleguide
SCSS StyleguideSCSS Styleguide
SCSS Styleguide
Karthikeyan Rajendran
 
Александр Белецкий "Архитектура Javascript приложений"
 Александр Белецкий "Архитектура Javascript приложений" Александр Белецкий "Архитектура Javascript приложений"
Александр Белецкий "Архитектура Javascript приложений"Agile Base Camp
 
C#.net, C Sharp.Net Online Training Course Content
C#.net, C Sharp.Net Online Training Course ContentC#.net, C Sharp.Net Online Training Course Content
C#.net, C Sharp.Net Online Training Course Content
SVRTechnologies
 
Zend Framework Modular Project Setup
Zend Framework Modular Project SetupZend Framework Modular Project Setup
Zend Framework Modular Project Setup
chadrobertson75
 
Design pattern in an expressive language java script
Design pattern in an expressive language java scriptDesign pattern in an expressive language java script
Design pattern in an expressive language java scriptAmit Thakkar
 
Javascript Design Patterns
Javascript Design PatternsJavascript Design Patterns
Javascript Design Patterns
Lilia Sfaxi
 
Lec18
Lec18Lec18
MANAGE STATIC RESOURCES IN SITECORE IN HELIX WAY
MANAGE STATIC RESOURCES IN SITECORE IN HELIX WAYMANAGE STATIC RESOURCES IN SITECORE IN HELIX WAY
MANAGE STATIC RESOURCES IN SITECORE IN HELIX WAY
Amit Kumar[Sitecore MVP]🇮🇳
 
Software Patterns
Software PatternsSoftware Patterns
Software Patterns
kim.mens
 
Multi modularized project setup with gulp, typescript and angular.js
Multi modularized project setup with gulp, typescript and angular.jsMulti modularized project setup with gulp, typescript and angular.js
Multi modularized project setup with gulp, typescript and angular.jsDavid Amend
 
JS Based Applications
JS Based ApplicationsJS Based Applications
JS Based Applications
Marcelo Henrique
 
Jay Callicott Drupal Views 2.0 Presentation
Jay Callicott Drupal Views 2.0 PresentationJay Callicott Drupal Views 2.0 Presentation
Jay Callicott Drupal Views 2.0 Presentation
Mediacurrent
 
Modules as requirement specifications
Modules as requirement specificationsModules as requirement specifications
Modules as requirement specifications
IBM Rational software
 

Similar to CONNECT Web Experience - Basel. Treffen der AEM Developer Community. (20)

Let us understand design pattern
Let us understand design patternLet us understand design pattern
Let us understand design pattern
 
Oops design pattern intro
Oops design pattern intro Oops design pattern intro
Oops design pattern intro
 
DP PPTS by BK.pptx
DP PPTS by BK.pptxDP PPTS by BK.pptx
DP PPTS by BK.pptx
 
The Modlet Pattern
The Modlet PatternThe Modlet Pattern
The Modlet Pattern
 
Managing modular software for your nu get, c++ and java development
Managing modular software for your nu get, c++ and java developmentManaging modular software for your nu get, c++ and java development
Managing modular software for your nu get, c++ and java development
 
Workshop 2: JavaScript Design Patterns
Workshop 2: JavaScript Design PatternsWorkshop 2: JavaScript Design Patterns
Workshop 2: JavaScript Design Patterns
 
SCSS Styleguide
SCSS StyleguideSCSS Styleguide
SCSS Styleguide
 
Александр Белецкий "Архитектура Javascript приложений"
 Александр Белецкий "Архитектура Javascript приложений" Александр Белецкий "Архитектура Javascript приложений"
Александр Белецкий "Архитектура Javascript приложений"
 
C#.net, C Sharp.Net Online Training Course Content
C#.net, C Sharp.Net Online Training Course ContentC#.net, C Sharp.Net Online Training Course Content
C#.net, C Sharp.Net Online Training Course Content
 
Design patterns tutorials
Design patterns tutorialsDesign patterns tutorials
Design patterns tutorials
 
Zend Framework Modular Project Setup
Zend Framework Modular Project SetupZend Framework Modular Project Setup
Zend Framework Modular Project Setup
 
Design pattern in an expressive language java script
Design pattern in an expressive language java scriptDesign pattern in an expressive language java script
Design pattern in an expressive language java script
 
Javascript Design Patterns
Javascript Design PatternsJavascript Design Patterns
Javascript Design Patterns
 
Lec18
Lec18Lec18
Lec18
 
MANAGE STATIC RESOURCES IN SITECORE IN HELIX WAY
MANAGE STATIC RESOURCES IN SITECORE IN HELIX WAYMANAGE STATIC RESOURCES IN SITECORE IN HELIX WAY
MANAGE STATIC RESOURCES IN SITECORE IN HELIX WAY
 
Software Patterns
Software PatternsSoftware Patterns
Software Patterns
 
Multi modularized project setup with gulp, typescript and angular.js
Multi modularized project setup with gulp, typescript and angular.jsMulti modularized project setup with gulp, typescript and angular.js
Multi modularized project setup with gulp, typescript and angular.js
 
JS Based Applications
JS Based ApplicationsJS Based Applications
JS Based Applications
 
Jay Callicott Drupal Views 2.0 Presentation
Jay Callicott Drupal Views 2.0 PresentationJay Callicott Drupal Views 2.0 Presentation
Jay Callicott Drupal Views 2.0 Presentation
 
Modules as requirement specifications
Modules as requirement specificationsModules as requirement specifications
Modules as requirement specifications
 

More from Namics – A Merkle Company

Namics Masterclass @ DMEXCO 2020
Namics Masterclass @ DMEXCO 2020Namics Masterclass @ DMEXCO 2020
Namics Masterclass @ DMEXCO 2020
Namics – A Merkle Company
 
Webinar "Experience Commerce – Erfolgsfaktoren für die Konzeption von Online-...
Webinar "Experience Commerce – Erfolgsfaktoren für die Konzeption von Online-...Webinar "Experience Commerce – Erfolgsfaktoren für die Konzeption von Online-...
Webinar "Experience Commerce – Erfolgsfaktoren für die Konzeption von Online-...
Namics – A Merkle Company
 
BVDW Challenge 2019: Concept of the award winners Katharina Konow and Büsra S...
BVDW Challenge 2019: Concept of the award winners Katharina Konow and Büsra S...BVDW Challenge 2019: Concept of the award winners Katharina Konow and Büsra S...
BVDW Challenge 2019: Concept of the award winners Katharina Konow and Büsra S...
Namics – A Merkle Company
 
Namics Webinarserie Digital Product & Service Design Teil 1: In 5 Schritte z...
 Namics Webinarserie Digital Product & Service Design Teil 1: In 5 Schritte z... Namics Webinarserie Digital Product & Service Design Teil 1: In 5 Schritte z...
Namics Webinarserie Digital Product & Service Design Teil 1: In 5 Schritte z...
Namics – A Merkle Company
 
People-based Marketing: How Data, Automatisation & Customer Centricity usher ...
People-based Marketing: How Data, Automatisation & Customer Centricity usher ...People-based Marketing: How Data, Automatisation & Customer Centricity usher ...
People-based Marketing: How Data, Automatisation & Customer Centricity usher ...
Namics – A Merkle Company
 
Webinar Lead Nurturing von Namics und Adobe am 21.06.2018
Webinar Lead Nurturing von Namics und Adobe am 21.06.2018Webinar Lead Nurturing von Namics und Adobe am 21.06.2018
Webinar Lead Nurturing von Namics und Adobe am 21.06.2018
Namics – A Merkle Company
 
SEO Webinar von Namics und Searchmetrics am 30.01.2018
SEO Webinar von Namics und Searchmetrics am 30.01.2018SEO Webinar von Namics und Searchmetrics am 30.01.2018
SEO Webinar von Namics und Searchmetrics am 30.01.2018
Namics – A Merkle Company
 
Webinar "DSGVO – Der Countdown läuft " Namics und Stibo Systems
Webinar "DSGVO – Der Countdown läuft " Namics und Stibo SystemsWebinar "DSGVO – Der Countdown läuft " Namics und Stibo Systems
Webinar "DSGVO – Der Countdown läuft " Namics und Stibo Systems
Namics – A Merkle Company
 
Agile Usergroup Rhein Main Treffen 17.08.2017 – Einführung in "Objectives und...
Agile Usergroup Rhein Main Treffen 17.08.2017 – Einführung in "Objectives und...Agile Usergroup Rhein Main Treffen 17.08.2017 – Einführung in "Objectives und...
Agile Usergroup Rhein Main Treffen 17.08.2017 – Einführung in "Objectives und...
Namics – A Merkle Company
 
Namics & Adobe Industrie-Workshop "Be smart" vom 23.05.2017
Namics & Adobe Industrie-Workshop "Be smart" vom 23.05.2017Namics & Adobe Industrie-Workshop "Be smart" vom 23.05.2017
Namics & Adobe Industrie-Workshop "Be smart" vom 23.05.2017
Namics – A Merkle Company
 
IoT und Mobile Connectivity – Vortrag auf der Hannovermesse von Jens Reufsteck
IoT und Mobile Connectivity – Vortrag auf der Hannovermesse von Jens ReufsteckIoT und Mobile Connectivity – Vortrag auf der Hannovermesse von Jens Reufsteck
IoT und Mobile Connectivity – Vortrag auf der Hannovermesse von Jens Reufsteck
Namics – A Merkle Company
 
Emerging Technology. Innovation. Durchstarten. Mobile. Advantage. Know-How. N...
Emerging Technology. Innovation. Durchstarten. Mobile. Advantage. Know-How. N...Emerging Technology. Innovation. Durchstarten. Mobile. Advantage. Know-How. N...
Emerging Technology. Innovation. Durchstarten. Mobile. Advantage. Know-How. N...
Namics – A Merkle Company
 
Woman's Contact Day 2013
Woman's Contact Day 2013Woman's Contact Day 2013
Woman's Contact Day 2013
Namics – A Merkle Company
 

More from Namics – A Merkle Company (13)

Namics Masterclass @ DMEXCO 2020
Namics Masterclass @ DMEXCO 2020Namics Masterclass @ DMEXCO 2020
Namics Masterclass @ DMEXCO 2020
 
Webinar "Experience Commerce – Erfolgsfaktoren für die Konzeption von Online-...
Webinar "Experience Commerce – Erfolgsfaktoren für die Konzeption von Online-...Webinar "Experience Commerce – Erfolgsfaktoren für die Konzeption von Online-...
Webinar "Experience Commerce – Erfolgsfaktoren für die Konzeption von Online-...
 
BVDW Challenge 2019: Concept of the award winners Katharina Konow and Büsra S...
BVDW Challenge 2019: Concept of the award winners Katharina Konow and Büsra S...BVDW Challenge 2019: Concept of the award winners Katharina Konow and Büsra S...
BVDW Challenge 2019: Concept of the award winners Katharina Konow and Büsra S...
 
Namics Webinarserie Digital Product & Service Design Teil 1: In 5 Schritte z...
 Namics Webinarserie Digital Product & Service Design Teil 1: In 5 Schritte z... Namics Webinarserie Digital Product & Service Design Teil 1: In 5 Schritte z...
Namics Webinarserie Digital Product & Service Design Teil 1: In 5 Schritte z...
 
People-based Marketing: How Data, Automatisation & Customer Centricity usher ...
People-based Marketing: How Data, Automatisation & Customer Centricity usher ...People-based Marketing: How Data, Automatisation & Customer Centricity usher ...
People-based Marketing: How Data, Automatisation & Customer Centricity usher ...
 
Webinar Lead Nurturing von Namics und Adobe am 21.06.2018
Webinar Lead Nurturing von Namics und Adobe am 21.06.2018Webinar Lead Nurturing von Namics und Adobe am 21.06.2018
Webinar Lead Nurturing von Namics und Adobe am 21.06.2018
 
SEO Webinar von Namics und Searchmetrics am 30.01.2018
SEO Webinar von Namics und Searchmetrics am 30.01.2018SEO Webinar von Namics und Searchmetrics am 30.01.2018
SEO Webinar von Namics und Searchmetrics am 30.01.2018
 
Webinar "DSGVO – Der Countdown läuft " Namics und Stibo Systems
Webinar "DSGVO – Der Countdown läuft " Namics und Stibo SystemsWebinar "DSGVO – Der Countdown läuft " Namics und Stibo Systems
Webinar "DSGVO – Der Countdown läuft " Namics und Stibo Systems
 
Agile Usergroup Rhein Main Treffen 17.08.2017 – Einführung in "Objectives und...
Agile Usergroup Rhein Main Treffen 17.08.2017 – Einführung in "Objectives und...Agile Usergroup Rhein Main Treffen 17.08.2017 – Einführung in "Objectives und...
Agile Usergroup Rhein Main Treffen 17.08.2017 – Einführung in "Objectives und...
 
Namics & Adobe Industrie-Workshop "Be smart" vom 23.05.2017
Namics & Adobe Industrie-Workshop "Be smart" vom 23.05.2017Namics & Adobe Industrie-Workshop "Be smart" vom 23.05.2017
Namics & Adobe Industrie-Workshop "Be smart" vom 23.05.2017
 
IoT und Mobile Connectivity – Vortrag auf der Hannovermesse von Jens Reufsteck
IoT und Mobile Connectivity – Vortrag auf der Hannovermesse von Jens ReufsteckIoT und Mobile Connectivity – Vortrag auf der Hannovermesse von Jens Reufsteck
IoT und Mobile Connectivity – Vortrag auf der Hannovermesse von Jens Reufsteck
 
Emerging Technology. Innovation. Durchstarten. Mobile. Advantage. Know-How. N...
Emerging Technology. Innovation. Durchstarten. Mobile. Advantage. Know-How. N...Emerging Technology. Innovation. Durchstarten. Mobile. Advantage. Know-How. N...
Emerging Technology. Innovation. Durchstarten. Mobile. Advantage. Know-How. N...
 
Woman's Contact Day 2013
Woman's Contact Day 2013Woman's Contact Day 2013
Woman's Contact Day 2013
 

Recently uploaded

guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...
Rogerio Filho
 
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
eutxy
 
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
ufdana
 
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
keoku
 
test test test test testtest test testtest test testtest test testtest test ...
test test  test test testtest test testtest test testtest test testtest test ...test test  test test testtest test testtest test testtest test testtest test ...
test test test test testtest test testtest test testtest test testtest test ...
Arif0071
 
Understanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdfUnderstanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdf
SEO Article Boost
 
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
zoowe
 
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
vmemo1
 
Explore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories SecretlyExplore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories Secretly
Trending Blogers
 
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
zyfovom
 
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
3ipehhoa
 
Italy Agriculture Equipment Market Outlook to 2027
Italy Agriculture Equipment Market Outlook to 2027Italy Agriculture Equipment Market Outlook to 2027
Italy Agriculture Equipment Market Outlook to 2027
harveenkaur52
 
Gen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needsGen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needs
Laura Szabó
 
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC
 
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
uehowe
 
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
cuobya
 
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptxBridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Brad Spiegel Macon GA
 
[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024
hackersuli
 
7 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 20247 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 2024
Danica Gill
 
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdfJAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
Javier Lasa
 

Recently uploaded (20)

guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...guildmasters guide to ravnica Dungeons & Dragons 5...
guildmasters guide to ravnica Dungeons & Dragons 5...
 
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
一比一原版(LBS毕业证)伦敦商学院毕业证成绩单专业办理
 
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
一比一原版(CSU毕业证)加利福尼亚州立大学毕业证成绩单专业办理
 
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
一比一原版(SLU毕业证)圣路易斯大学毕业证成绩单专业办理
 
test test test test testtest test testtest test testtest test testtest test ...
test test  test test testtest test testtest test testtest test testtest test ...test test  test test testtest test testtest test testtest test testtest test ...
test test test test testtest test testtest test testtest test testtest test ...
 
Understanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdfUnderstanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdf
 
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
 
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
重新申请毕业证书(RMIT毕业证)皇家墨尔本理工大学毕业证成绩单精仿办理
 
Explore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories SecretlyExplore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories Secretly
 
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
 
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
1比1复刻(bath毕业证书)英国巴斯大学毕业证学位证原版一模一样
 
Italy Agriculture Equipment Market Outlook to 2027
Italy Agriculture Equipment Market Outlook to 2027Italy Agriculture Equipment Market Outlook to 2027
Italy Agriculture Equipment Market Outlook to 2027
 
Gen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needsGen Z and the marketplaces - let's translate their needs
Gen Z and the marketplaces - let's translate their needs
 
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
APNIC Foundation, presented by Ellisha Heppner at the PNG DNS Forum 2024
 
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
 
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
 
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptxBridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
Bridging the Digital Gap Brad Spiegel Macon, GA Initiative.pptx
 
[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024
 
7 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 20247 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 2024
 
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdfJAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
JAVIER LASA-EXPERIENCIA digital 1986-2024.pdf
 

CONNECT Web Experience - Basel. Treffen der AEM Developer Community.

  • 1. Connect Web Experience. Basel. Modular Front-End in AEM. Namics. Michael Kreis. Software Engineer. René Bach. Senior Frontend Engineer. 25. Juni 2014
  • 2. Namics. Agenda.  Who we are  Modular Front-End  Challenges  Experiences  Outlook The challenge of implementing modular front-end in a AEM environment. A case study. 27.06.2014 Denken. Präsentieren. Umsetzen.2
  • 3. Namics. Who we are. 27.06.2014 3 Denken. Präsentieren. Umsetzen.
  • 4. Namics. Michael Kreis. Software Engineer Namics, St. Gallen The challenge of implementing modular front-end in a AEM environment. A case study. 27.06.2014 Denken. Präsentieren. Umsetzen.4
  • 5. Namics. René Bach. Senior Frontend Engineer Namics, Zürich The challenge of implementing modular front-end in a AEM environment. A case study. 27.06.2014 5 Denken. Präsentieren. Umsetzen.
  • 6. Namics. Namics.  Leading Swiss Internet consultancy with a strong presence in the German market.  Focus  Internet Strategy  Design and implementation of user-centered, efficient and compelling internet applications  Marketing and launch support of online activities  Standards based approach, pragmatic realization The challenge of implementing modular front-end in a AEM environment. A case study. 27.06.2014 6 Denken. Präsentieren. Umsetzen.
  • 7. Namics. Namics.  Facts and figures  founded 1995 as a spin-off of the University of St. Gallen  > 430 employees, Revenue 2013 CHF 55 Mns  Locations: Frankfurt, Hamburg, Munich, St. Gallen, Zurich The challenge of implementing modular front-end in a AEM environment. A case study. 27.06.2014 7 Denken. Präsentieren. Umsetzen.
  • 8. Namics. Modular Front-End. 27.06.2014 8 Denken. Präsentieren. Umsetzen.
  • 9. Namics. What is a module? Modular Front-End. 27.06.2014 Denken. Präsentieren. Umsetzen.9
  • 10. Namics. What is a module? Modular Front-End. 27.06.2014 10 Denken. Präsentieren. Umsetzen.  A module is a unique element that has a specific set of functionalities and is not tied to the layout of a website.  Wherever the module resides on the site, it has the same general sub elements and functionality.  Modules should be independent of other modules or layout elements.
  • 11. Namics. What is a module? Modular Front-End. 27.06.2014 11 Denken. Präsentieren. Umsetzen.  A module is a unique element that has a specific set of functionalities and is not tied to the layout of a website.  Wherever the module resides on the site, it has the same general sub elements and functionality.  Modules should be independent of other modules or layout elements.
  • 12. Namics. What is a module? Modular Front-End. 27.06.2014 12 Denken. Präsentieren. Umsetzen.  A module is a unique element that has a specific set of functionalities and is not tied to the layout of a website.  Wherever the module resides on the site, it has the same general sub elements and functionality.  Modules should be independent of other modules or layout elements.
  • 13. Namics. Why using modules? Modular Front-End. 27.06.2014 Denken. Präsentieren. Umsetzen.13
  • 14. Namics. Why using modules?  The code will be cleaner, because CSS and JS of modules are bundled in an own module-file-structure  Changes in markup, CSS and JS can be done very quick, because it's clear where to find it in the code  Modules are reusable  Modules can have different representations (“skins”)   Modular Front-End. 27.06.2014 Denken. Präsentieren. Umsetzen.14
  • 15. Namics. Why using modules?  The code will be cleaner, because CSS and JS of modules are bundled in an own module-file-structure  Changes in markup, CSS and JS can be done very quick, because it's clear where to find it in the code  Modules are reusable  Modules can have different representations (“skins”)   Modular Front-End. 27.06.2014 Denken. Präsentieren. Umsetzen.15
  • 16. Namics. Why using modules?  The code will be cleaner, because CSS and JS of modules are bundled in an own module-file-structure  Changes in markup, CSS and JS can be done very quick, because it's clear where to find it in the code  Modules are reusable  Modules can have different representations (“skins”)   Modular Front-End. 27.06.2014 Denken. Präsentieren. Umsetzen.16
  • 17. Namics. Why using modules?  The code will be cleaner, because CSS and JS of modules are bundled in an own module-file-structure  Changes in markup, CSS and JS can be done very quick, because it's clear where to find it in the code  Modules are reusable  Modules can have different representations (“skins”)   Modular Front-End. 27.06.2014 Denken. Präsentieren. Umsetzen.17
  • 18. Namics. Getting started with modular front-end Modular Front-End. 27.06.2014 Denken. Präsentieren. Umsetzen.18
  • 19. Namics. Getting started with modular front-end Modular Front-End. 27.06.2014 19 Denken. Präsentieren. Umsetzen.  Layout  First structure your layout (header, footer, sitebar, main- area,...)  Figure out variations of layout elements
  • 20. Namics. Getting started with modular front-end Modular Front-End. 27.06.2014 20 Denken. Präsentieren. Umsetzen.  Layout
  • 21. Namics. Getting started with modular front-end Modular Front-End. 27.06.2014 21 Denken. Präsentieren. Umsetzen.  Modules  Figure out modules  Don't be to general  Don't be to specific
  • 22. Namics. Getting started with modular front-end Modular Front-End. 27.06.2014 22 Denken. Präsentieren. Umsetzen.  Modules
  • 24. Namics. Frameworks Modular Front-End. 27.06.2014 24 Denken. Präsentieren. Umsetzen.
  • 25. Namics. Frameworks - Terrific Modular Front-End. 27.06.2014 Denken. Präsentieren. Umsetzen.25
  • 26. Namics. Frameworks - Terrific  Markup  modules/navmain/navmain.html Modular Front-End. 27.06.2014 Denken. Präsentieren. Umsetzen.26
  • 27. Namics. Frameworks - Terrific  CSS / LESS  modules/navmain/css/navmain.less Modular Front-End. 27.06.2014 Denken. Präsentieren. Umsetzen.27
  • 28. Namics. Frameworks - Terrific  JavaScript  modules/navmain/js/navmain.js Modular Front-End. 27.06.2014 Denken. Präsentieren. Umsetzen.28
  • 29. Namics. Frameworks – Terrific-Micro Modular Front-End. 27.06.2014 29 Denken. Präsentieren. Umsetzen.  Boilerplate for Terrific Modules  Module template generator  Features  CSS/JS concatenation & minification  LESS/SASS support (optional)  Caching (LESS/SASS) for optimal performance  Written in PHP https://github.com/rogerdudler/terrific-micro
  • 30. Namics. Challenges. 27.06.2014 30 Denken. Präsentieren. Umsetzen.
  • 31. Namics. Bringing Back-End and Front-End together  We are using CQ and Terrific  Development, both back-end and front-end, must be quick  The less develpoment dependencies between BE & FE, the better  FE should be able to use the same tools in for every environment Challenges. 27.06.2014 Denken. Präsentieren. Umsetzen.31
  • 32. Namics. Experiences. 27.06.2014 32 Denken. Präsentieren. Umsetzen.
  • 33. Namics. Integration approach I  Develop FE in standalone Terrific  Deliver compiled assets Experiences. 27.06.2014 Denken. Präsentieren. Umsetzen.33 + Same tools + Quick setup  Different code base  Hard to keep track of changes  Complete FE should be finished when starting with BE
  • 34. Namics. Integration approach II  Adapt modular concept in CQ  Only use Terrific JS framework Experiences. 27.06.2014 Denken. Präsentieren. Umsetzen.34 + Standard CQ + Quick setup + Same code base  Different tools for FE  CQ instance needed for FE
  • 35. Namics. Integration approach III  Fully integrate Terrific in CQ  Use Terrific modules as CQ components Experiences. 27.06.2014 Denken. Präsentieren. Umsetzen.35 + Same code base + FE and BE can use their tools  Differences between CQ and Terrific concepts  Pages / Views  Assets
  • 36. Namics. Integration approach III  Terrific Micro is installed in component directory  Exclude Terrific files in CRX Package  FE only uses component directory Experiences. 27.06.2014 Denken. Präsentieren. Umsetzen.36
  • 37. Namics. Integration approach III – Component handling  Terrific modules are used as CQ components  Own ClientLib for each module/component  Embed module ClientLibs in design ClientLib (/etc/designs/project/clientlibs.css) Experiences. 27.06.2014 Denken. Präsentieren. Umsetzen.37
  • 38. Namics. Integration approach III – Asset handling  No access to Terrific asset folder in CQ  Copy to design folder  Maven resource plugin  Rewrite references in Stylesheets  Maven replacer plugin   No direct references in markup possible Experiences. 27.06.2014 Denken. Präsentieren. Umsetzen.38
  • 39. Namics. Integration approach III Experiences. 27.06.2014 Denken. Präsentieren. Umsetzen.39 Available on Github: https://github.com/m-kay/connect-terrific-aem
  • 41. Namics. Known problems  Markup has to be copied  Changes in markup do not take immediate effect in CQ  Terrific does not have the same concept of pages like CQ  Different LESS compiler in Terrific and CQ Experiences. 27.06.2014 Denken. Präsentieren. Umsetzen.41
  • 42. Namics. Outlook. 27.06.2014 42 Denken. Präsentieren. Umsetzen.
  • 43. Namics. Possibilities in AEM 6  Sightly is only using valid HTML  Can be rendered in Apache and CQ  Same source even for markup Outlook. 27.06.2014 Denken. Präsentieren. Umsetzen.43
  • 44. Namics. Questions? Comments? 27.06.2014 44 Denken. Präsentieren. Umsetzen.
  • 45. Namics. Thank you for your attention. michael.kreis@namics.com rene.bach@namics.com © Namics 27.06.2014 45 Denken. Präsentieren. Umsetzen.