SlideShare ist ein Scribd-Unternehmen logo
1 von 16
Downloaden Sie, um offline zu lesen
XWiki Skins
Progress and Future
Ecaterina Moraru — 22 July 2015 —
A XWiki skin is used to customize
the interface of a XWiki Enterprise
instance.
A skin is composed of:
Velocity templates
CSS files
LESS files
JavaScript files
Images
Fonts
What is a Skin?
·
·
·
·
·
·
·
·
2/16
Skin Support
Skin Used as
default
Replaced as default
in
Replaced
by
Support maintained
until
Unbundled
since
Dodo 1.2 1.3
Finch 1.2 1.3
Albatross 1.0 - 1.2 1.3 (Mar 08) Toucan 2.5 3.2
Toucan 1.3 - 1.9 2.0 (Sep 09) Colibri 4.3 4.4
Colibri 2.0 - 3.4 - 6.1 6.2 (Sep 14) Flamingo 7.0 8.0 (planned)
Flamingo 6.2 -
Lists of Skins that were bundled with XWiki Platform 3/16
Colibri vs. Colibri 3.4
Flamingo's Add button position
Flamingo's Menu Go to options
XCS Flavors (Documentation, etc.)
What do we do for Nested
changes?
Create a new skin? (Macaw)
Make Flamingo configurable?
Harder to test
Increases complexity
Choosing the defaults
Skin Variations
·
·
·
·
·
·
·
·
·
·
4/16
Credits
How different a new skin needs to be?
Credits
Can we support multiple skins at the same time?
Responsive
HTML5
Bootstrap
LESS
Also in SSX
Override LESS templates
Icon Themes
Silk Theme
Font Awesome Theme
Flamingo Themes
Bootswatch Themes
Flamingo Enhancements
·
·
·
·
·
·
·
·
·
·
·
< >
1 / 4
Bootswatch Themes Integration
extensions.xwiki.org Themes
7/16
PRO
Powerful
Ability to write LESS
Less complex
Excludes Velocity templates
Preserves structure
CON
Overrides the Skin mechanism
Possible source of bugs
Predisposed to duplication
Rely on a particular structure
Confusing differences with
Color Themes
Flamingo Themes vs. Skins
·
·
·
·
·
·
·
·
·
·
·
·
8/16
Credits
Flamingo Themes:
an evolution?
or something to avoid?
UI generated from multiple places:
Velocity, JavaScript, Macros, Sheets,
etc.
Hard to achieve global consistency:
Applications Isolation
Missing a Style Guide
Not so extensible skin structure
Slower UI novelties adoption:
Material Design Guidelines
New JavaScript frameworks
Proposal: UI Standards for
now and the future (Jul 7, 2014)
MarrytoBootstrap(+ourownadd-onsbuiltontopof
Bootstrap)
Createourownstandard(andbindittowhatever
frameworkyouwant)
MixStandard:XWikispecificclasses+aselectionof
Bootstrapclasses
Skin Issues
·
·
·
·
·
·
·
·
·
·
·
10/16
Credits
What will happen when Bootstrap goes
out-of-style?
Skin as a collection of
Extensions Points (UIXP):
Interface Extensions (UIX)
Skin as a collection of
Layout Templates:
At Skin level
At Page level
Example: Totem Application
Discussion: Stop using UI
Extension Points and
deprecate this concept
(Mar 4, 2014)
Define LayoutClass and
ContainerClass
Skin Extensibility
·
·
·
·
·
·
12/16
Credits
How extensible should a skin be?
Skin Balance
Simplicity vs. Customisable
Standard vs. Extensible
Modern vs. Stable
Accommodation of new features
·
·
·
·
14/16
Credits
Questions?
Thank you
Ecaterina Moraru — 22 July 2015 —

Weitere ähnliche Inhalte

Andere mochten auch (12)

Exploring and Integrating UX in Open Source Software Development
Exploring and Integrating UX in Open Source Software Development Exploring and Integrating UX in Open Source Software Development
Exploring and Integrating UX in Open Source Software Development
 
XWiki Usability Testing Sessions
XWiki Usability Testing SessionsXWiki Usability Testing Sessions
XWiki Usability Testing Sessions
 
Interconectarea Semantica A Datelor In Contextul Managementului Informatiilor...
Interconectarea Semantica A Datelor In Contextul Managementului Informatiilor...Interconectarea Semantica A Datelor In Contextul Managementului Informatiilor...
Interconectarea Semantica A Datelor In Contextul Managementului Informatiilor...
 
XWiki Improvements Review (ver 2.4 - 5.1)
XWiki Improvements Review (ver 2.4 - 5.1)XWiki Improvements Review (ver 2.4 - 5.1)
XWiki Improvements Review (ver 2.4 - 5.1)
 
Mashups
MashupsMashups
Mashups
 
XWiki Rendering @ FOSDEM 2014
XWiki Rendering @ FOSDEM 2014XWiki Rendering @ FOSDEM 2014
XWiki Rendering @ FOSDEM 2014
 
Do you really need to test with only 5 users
Do you really need to test with only 5 usersDo you really need to test with only 5 users
Do you really need to test with only 5 users
 
Success stats from OSD community
Success stats from OSD communitySuccess stats from OSD community
Success stats from OSD community
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Visual Communication through Infographics
Visual Communication through InfographicsVisual Communication through Infographics
Visual Communication through Infographics
 
Captcha
CaptchaCaptcha
Captcha
 
Visual Cryptography
Visual CryptographyVisual Cryptography
Visual Cryptography
 

Ähnlich wie Future of XWiki Skins

Building a Real-World Application with Adobe Flex 2
Building a Real-World Application with Adobe Flex 2Building a Real-World Application with Adobe Flex 2
Building a Real-World Application with Adobe Flex 2dcoletta
 
Facets of applied smw
Facets of applied smwFacets of applied smw
Facets of applied smwJesse Wang
 
Buzzword, How'd They Build That?
Buzzword, How'd They Build That?Buzzword, How'd They Build That?
Buzzword, How'd They Build That?dcoletta
 
Building Buzzword (Flex Camp Boston 2007)
Building Buzzword (Flex Camp Boston 2007)Building Buzzword (Flex Camp Boston 2007)
Building Buzzword (Flex Camp Boston 2007)dcoletta
 
Top 10 HTML5 frameworks for effective development in 2016
Top 10 HTML5 frameworks for effective development in 2016Top 10 HTML5 frameworks for effective development in 2016
Top 10 HTML5 frameworks for effective development in 2016iMOBDEV Technologies Pvt. Ltd.
 
A web development runtime platform based on the wiki paradigm
A web development runtime platform based on the wiki paradigmA web development runtime platform based on the wiki paradigm
A web development runtime platform based on the wiki paradigmXWiki
 
Design Pattern Mastery - Momentum Dev Con 19 Apr 2018
Design Pattern Mastery - Momentum Dev Con 19 Apr 2018Design Pattern Mastery - Momentum Dev Con 19 Apr 2018
Design Pattern Mastery - Momentum Dev Con 19 Apr 2018Steven Smith
 
Window Shopping Browser - Bug Hunting in 2012
Window Shopping Browser - Bug Hunting in 2012Window Shopping Browser - Bug Hunting in 2012
Window Shopping Browser - Bug Hunting in 2012Roberto Suggi Liverani
 
Front-end optimisation & jQuery Internals
Front-end optimisation & jQuery InternalsFront-end optimisation & jQuery Internals
Front-end optimisation & jQuery InternalsArtur Cistov
 
Using OSGi technology in Eclipse - BJ Hargrave, IBM, for Jeff McAffer, IBM
Using OSGi technology in Eclipse - BJ Hargrave, IBM, for Jeff McAffer, IBMUsing OSGi technology in Eclipse - BJ Hargrave, IBM, for Jeff McAffer, IBM
Using OSGi technology in Eclipse - BJ Hargrave, IBM, for Jeff McAffer, IBMmfrancis
 
Powerful tools for building web solutions
Powerful tools for building web solutionsPowerful tools for building web solutions
Powerful tools for building web solutionsAndrea Tino
 
Starting with jQuery
Starting with jQueryStarting with jQuery
Starting with jQueryAnil Kumar
 
AIDA/Scribo
AIDA/ScriboAIDA/Scribo
AIDA/ScriboESUG
 

Ähnlich wie Future of XWiki Skins (20)

Building a Real-World Application with Adobe Flex 2
Building a Real-World Application with Adobe Flex 2Building a Real-World Application with Adobe Flex 2
Building a Real-World Application with Adobe Flex 2
 
Facets of applied smw
Facets of applied smwFacets of applied smw
Facets of applied smw
 
Buzzword, How'd They Build That?
Buzzword, How'd They Build That?Buzzword, How'd They Build That?
Buzzword, How'd They Build That?
 
Building Buzzword (Flex Camp Boston 2007)
Building Buzzword (Flex Camp Boston 2007)Building Buzzword (Flex Camp Boston 2007)
Building Buzzword (Flex Camp Boston 2007)
 
Top 10 HTML5 frameworks for effective development in 2016
Top 10 HTML5 frameworks for effective development in 2016Top 10 HTML5 frameworks for effective development in 2016
Top 10 HTML5 frameworks for effective development in 2016
 
Ui development frameworks html-bootstrap by awa
Ui development frameworks html-bootstrap by awaUi development frameworks html-bootstrap by awa
Ui development frameworks html-bootstrap by awa
 
A web development runtime platform based on the wiki paradigm
A web development runtime platform based on the wiki paradigmA web development runtime platform based on the wiki paradigm
A web development runtime platform based on the wiki paradigm
 
Design Pattern Mastery - Momentum Dev Con 19 Apr 2018
Design Pattern Mastery - Momentum Dev Con 19 Apr 2018Design Pattern Mastery - Momentum Dev Con 19 Apr 2018
Design Pattern Mastery - Momentum Dev Con 19 Apr 2018
 
Web browsers
Web browsersWeb browsers
Web browsers
 
Web browsers
Web browsersWeb browsers
Web browsers
 
Squeak
SqueakSqueak
Squeak
 
Window Shopping Browser - Bug Hunting in 2012
Window Shopping Browser - Bug Hunting in 2012Window Shopping Browser - Bug Hunting in 2012
Window Shopping Browser - Bug Hunting in 2012
 
Flourish2011
Flourish2011Flourish2011
Flourish2011
 
SWT - Technical Deep Dive
SWT - Technical Deep DiveSWT - Technical Deep Dive
SWT - Technical Deep Dive
 
Front-end optimisation & jQuery Internals
Front-end optimisation & jQuery InternalsFront-end optimisation & jQuery Internals
Front-end optimisation & jQuery Internals
 
Using OSGi technology in Eclipse - BJ Hargrave, IBM, for Jeff McAffer, IBM
Using OSGi technology in Eclipse - BJ Hargrave, IBM, for Jeff McAffer, IBMUsing OSGi technology in Eclipse - BJ Hargrave, IBM, for Jeff McAffer, IBM
Using OSGi technology in Eclipse - BJ Hargrave, IBM, for Jeff McAffer, IBM
 
Powerful tools for building web solutions
Powerful tools for building web solutionsPowerful tools for building web solutions
Powerful tools for building web solutions
 
Starting with jQuery
Starting with jQueryStarting with jQuery
Starting with jQuery
 
AIDA/Scribo
AIDA/ScriboAIDA/Scribo
AIDA/Scribo
 
Comparisons Wiki vs CMS
Comparisons Wiki vs CMSComparisons Wiki vs CMS
Comparisons Wiki vs CMS
 

Mehr von Ecaterina Moraru (Valica)

Mehr von Ecaterina Moraru (Valica) (14)

UI/UX Tips & Tricks for developers - FOSDEM2020
UI/UX Tips & Tricks for developers - FOSDEM2020UI/UX Tips & Tricks for developers - FOSDEM2020
UI/UX Tips & Tricks for developers - FOSDEM2020
 
UI/UX Tips & Tricks for developers
UI/UX Tips & Tricks for developersUI/UX Tips & Tricks for developers
UI/UX Tips & Tricks for developers
 
Sketching Session
Sketching SessionSketching Session
Sketching Session
 
CSS Grid vs. Flexbox
CSS Grid vs. FlexboxCSS Grid vs. Flexbox
CSS Grid vs. Flexbox
 
Designing in the open
Designing in the openDesigning in the open
Designing in the open
 
XWiki Skin 10.x+ ideas
XWiki Skin 10.x+ ideasXWiki Skin 10.x+ ideas
XWiki Skin 10.x+ ideas
 
Difficulties in having more designers participate in Open Source
Difficulties in having more designers participate in Open SourceDifficulties in having more designers participate in Open Source
Difficulties in having more designers participate in Open Source
 
CSS Variables — Native reusable custom properties
CSS Variables — Native reusable custom propertiesCSS Variables — Native reusable custom properties
CSS Variables — Native reusable custom properties
 
Icon Themes
Icon ThemesIcon Themes
Icon Themes
 
Design proposals status 9.x
Design proposals status 9.xDesign proposals status 9.x
Design proposals status 9.x
 
What's new in XWiki 8.x and half of 9.x
What's new in XWiki 8.x and half of 9.x What's new in XWiki 8.x and half of 9.x
What's new in XWiki 8.x and half of 9.x
 
Expectations from Open Source Designers
Expectations from Open Source DesignersExpectations from Open Source Designers
Expectations from Open Source Designers
 
Tehnici De Tip Mashup Pentru Interactiuni Web In Sisteme Informationale Geogr...
Tehnici De Tip Mashup Pentru Interactiuni Web In Sisteme Informationale Geogr...Tehnici De Tip Mashup Pentru Interactiuni Web In Sisteme Informationale Geogr...
Tehnici De Tip Mashup Pentru Interactiuni Web In Sisteme Informationale Geogr...
 
Interconectarea Semantica A Datelor In Contextul Managementului Informatiilor...
Interconectarea Semantica A Datelor In Contextul Managementului Informatiilor...Interconectarea Semantica A Datelor In Contextul Managementului Informatiilor...
Interconectarea Semantica A Datelor In Contextul Managementului Informatiilor...
 

Kürzlich hochgeladen

Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Zilliz
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusZilliz
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 

Kürzlich hochgeladen (20)

Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 

Future of XWiki Skins

  • 1. XWiki Skins Progress and Future Ecaterina Moraru — 22 July 2015 —
  • 2. A XWiki skin is used to customize the interface of a XWiki Enterprise instance. A skin is composed of: Velocity templates CSS files LESS files JavaScript files Images Fonts What is a Skin? · · · · · · · · 2/16
  • 3. Skin Support Skin Used as default Replaced as default in Replaced by Support maintained until Unbundled since Dodo 1.2 1.3 Finch 1.2 1.3 Albatross 1.0 - 1.2 1.3 (Mar 08) Toucan 2.5 3.2 Toucan 1.3 - 1.9 2.0 (Sep 09) Colibri 4.3 4.4 Colibri 2.0 - 3.4 - 6.1 6.2 (Sep 14) Flamingo 7.0 8.0 (planned) Flamingo 6.2 - Lists of Skins that were bundled with XWiki Platform 3/16
  • 4. Colibri vs. Colibri 3.4 Flamingo's Add button position Flamingo's Menu Go to options XCS Flavors (Documentation, etc.) What do we do for Nested changes? Create a new skin? (Macaw) Make Flamingo configurable? Harder to test Increases complexity Choosing the defaults Skin Variations · · · · · · · · · · 4/16
  • 5. Credits How different a new skin needs to be?
  • 6. Credits Can we support multiple skins at the same time?
  • 7. Responsive HTML5 Bootstrap LESS Also in SSX Override LESS templates Icon Themes Silk Theme Font Awesome Theme Flamingo Themes Bootswatch Themes Flamingo Enhancements · · · · · · · · · · · < > 1 / 4 Bootswatch Themes Integration extensions.xwiki.org Themes 7/16
  • 8. PRO Powerful Ability to write LESS Less complex Excludes Velocity templates Preserves structure CON Overrides the Skin mechanism Possible source of bugs Predisposed to duplication Rely on a particular structure Confusing differences with Color Themes Flamingo Themes vs. Skins · · · · · · · · · · · · 8/16
  • 10. UI generated from multiple places: Velocity, JavaScript, Macros, Sheets, etc. Hard to achieve global consistency: Applications Isolation Missing a Style Guide Not so extensible skin structure Slower UI novelties adoption: Material Design Guidelines New JavaScript frameworks Proposal: UI Standards for now and the future (Jul 7, 2014) MarrytoBootstrap(+ourownadd-onsbuiltontopof Bootstrap) Createourownstandard(andbindittowhatever frameworkyouwant) MixStandard:XWikispecificclasses+aselectionof Bootstrapclasses Skin Issues · · · · · · · · · · · 10/16
  • 11. Credits What will happen when Bootstrap goes out-of-style?
  • 12. Skin as a collection of Extensions Points (UIXP): Interface Extensions (UIX) Skin as a collection of Layout Templates: At Skin level At Page level Example: Totem Application Discussion: Stop using UI Extension Points and deprecate this concept (Mar 4, 2014) Define LayoutClass and ContainerClass Skin Extensibility · · · · · · 12/16
  • 14. Skin Balance Simplicity vs. Customisable Standard vs. Extensible Modern vs. Stable Accommodation of new features · · · · 14/16
  • 16. Thank you Ecaterina Moraru — 22 July 2015 —