Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Sitegeist.Monocle - Inspiring Conference 2016 Lightning-Talk

Sitegeist
April 23, 2016
190

Sitegeist.Monocle - Inspiring Conference 2016 Lightning-Talk

An introduction to sitegeists approach for atomic-design in TypoScript2 plus a living styleguide in Neos based on that.

Sitegeist

April 23, 2016
Tweet

Transcript

  1. SITEGEIST.MONOCLE WHO I AM » Martin Ficzel - Developer
 


    [email protected]
 twitter/slack: @kopfaufholz
 
 Neos, Flow 
 
 TYPO3 3.6-6.2 / ext_caretaker
  2. SITEGEIST.MONOCLE LIVING-STYLEGUIDES » Render the components of a website in

    isolation » Makes styling problems visible and encourages clean styling » Example: http://patternlab.io/ by Brad Frost » Problems » Extra Code » diverges over time in many cases
  3. SITEGEIST.MONOCLE THERE IS A BETTER WAY » Use the TypoScript2

    Prototypes for rendering » Annotate the Prototypes for the styleguide
  4. SITEGEIST.MONOCLE STYLEGUIDE ANNOTATIONS Styleguide-Annotation Dummy Data Meta Data prototype(Vendor.Site:Atoms.Button) <

    prototype(Vendor.Site:Atoms.Link) { @styleguide { path = 'atoms.basic' title = 'Button' description = 'generic Buttom Atom’ props { content = 'Lorem Ipsum'
 tagName = 'a' } } ... }
  5. SITEGEIST.MONOCLE ACHIEVEMENTS » Render ts2-prototypes in isolation » No extra

    code … @styleguide annotations » Template-engine agnoistic » Coding-style agnoistic » Works very well with atomic design
  6. SITEGEIST.MONOCLE ACHIEVEMENTS » Render ts2-prototypes in isolation » No extra

    code … @styleguide annotations » Template-engine agnoistic » Coding-style agnoistic » Works very well with atomic design + BEWARE OF MOVING GROUND + ATTENTION
  7. SITEGEIST.MONOCLE ACHIEVEMENTS » Render ts2-prototypes in isolation » No extra

    code … @styleguide annotations » Template-engine agnoistic » Coding-style agnoistic » Works very well with atomic design + BEWARE OF MOVING GROUND + ATTENTION sitegeist/Sitegeist.Monocle
  8. SITEGEIST.MONOCLE ATOMIC-DESIGN » Starts with basic Atoms » Aggregate Atoms

    to higher order components: Molecules, Organisms, Templates, Pages. » Made popular by Brad Frost » http://atomicdesign.bradfrost.com/
  9. SITEGEIST.MONOCLE prototype(Vendor.Site:Atoms.Link) < prototype(TYPO3.TypoScript:Tag) { tagName = 'a' ... }

    prototype(Vendor.Site:Atoms.Button) < prototype(Vendor.Site:Atoms.Link) { attributes.class = TYPO3.TypoScript:RawArray { button = 'btn' } ... } DEFINE & EXTEND COMPONENTS
  10. SITEGEIST.MONOCLE prototype(Vendor.Site:Organisms.Header) < prototype(TYPO3.TypoScript:Tag) { content = TYPO3.TypoScript:Array { funcNav

    = Vendor.Site:Mulecules.FuncNav mainNav = Vendor.Site:Mulecules.MainNav } } AGGREGATE COMPONENTS
  11. SITEGEIST.MONOCLE ACHIEVEMENTS » Atomic.TS2 feels great » just a TS2-Pattern

    » Template engine agnostic » No Fluid needed anymore » Ubiquitous component naming and structure » flexible and reusable Components
  12. SITEGEIST.MONOCLE ACHIEVEMENTS » Atomic.TS2 feels great » just a TS2-Pattern

    » Template engine agnostic » No Fluid needed anymore » Ubiquitous component naming and structure » flexible and reusable Components + UNMARKED OBSTACLES MAY EXIST + CAUTION