SlideShare a Scribd company logo
NOT
JUST A
PRETTY
FACE
How to design and build a
cross-CMS CSS framework
@CRYSTALENKA #JAB18
ABOUT ME
User Experience Consultant
Front End Developer
UI Designer
Crystal Dionysopoulos
@CRYSTALENKA #JAB18
The pros and cons of a DIY
CSS framework, plus our
starting project requirements.
Intro
1
WHAT TO EXPECT
IN THIS TALK
How implementing FEF
affected Akeeba’s extensions
and workflow
The Results
3
From design to code, 10
useful things we learned in
the process.
The Process
2
@CRYSTALENKA #JAB18
1.
INTRO

Recommended for you

Developing WordPress Plugins Using the MVC Methodology
Developing WordPress Plugins Using the MVC MethodologyDeveloping WordPress Plugins Using the MVC Methodology
Developing WordPress Plugins Using the MVC Methodology

MVC, which stands for Model-View-Controller, is a popular methodology used by modern PHP frameworks to separate the presentation (HTML) from the data and logic of an application. In this talk you’ll learn how to write plugins “the MVC way” while still doing things “the WordPress way.”

wordpressmvcplugins
Guide To Web Development
Guide To Web DevelopmentGuide To Web Development
Guide To Web Development

This document is a roadmap for web development created by Google DSC at King Abdulaziz University. It outlines sections for front-end development, back-end development, and design. Each section lists languages and tools to learn along with estimated timeframes and links to resources. The roadmap recommends spending 20% of time on crash courses, 30% applying knowledge, and 50% building projects. It aims to guide learners through a structured plan to become full-stack web developers.

Building a Moodle theme with bootstrap
Building a Moodle theme with bootstrapBuilding a Moodle theme with bootstrap
Building a Moodle theme with bootstrap

This document summarizes the history and development of the Bootstrap theme for Moodle. It discusses how the theme was originally developed during a Moodle conference by several developers. The Bootstrap theme was later adopted into the Moodle core as the "bootstrapbase" theme in version 2.5. The theme allows other themes like "Clean" to be built upon it. It provides templates and styles based on the Twitter Bootstrap framework to help developers create interfaces without design skills. Future development of the Bootstrap theme for Moodle includes improved styling for editors, accordion layouts, course progress indicators, and search functionality.

bootstrapmoodledevelopment
No really, LOTS of upfront work
I’m not kidding. You will be committing a
lot of time to this.
Lots of upfront work.
I mean, you’re building your own CSS
framework, after all…
Your code…you maintain it.
As with any code you write, you’ll have to
update it over time - and that takes time too.
THE
CONS
#JAB18
BILBAO DESIGN 6
BUT IT IS
WORTH IT!
Or at least, we think so!
Lightweight and FAST Code
Only build what you need, when
you need it. Reduce the bloat and
deliver better extensions!
You’re In Control
Make changes based on your own
schedule and needs, as well as the
needs of your audience.
Ŏ
Stay Visually Consistent
Make sure your extensions provide
a consistent experience for your
users in Joomla! and WordPress.
Easier to Maintain
Same CSS framework across
extensions and CMSs means more
reusable code and less tweaking.
WHY
BOTHER?
@CRYSTALENKA #JAB18
AKEEBA’S
REQUIREMENTS
Easy to convert to
That meant not too many changes
to the HTML or PHP structure, and
easy-to-remember classes.
♥
Easy to adapt to
We didn’t want to shock the users
too much, so this was strictly a
facelift - no functional changes.
Flexible elements
From structure to buttons,
everything had to be flexible and
easy to reuse.
@CRYSTALENKA #JAB18

Recommended for you

WeBB MeetUp#1 Web applications caching techniques
WeBB MeetUp#1 Web applications caching techniquesWeBB MeetUp#1 Web applications caching techniques
WeBB MeetUp#1 Web applications caching techniques

This document discusses techniques for caching web applications to improve page speed. It covers using OPcache and APC for opcode caching, setting expiration headers with mod_expires, using a key-value store like Redis for database query caching, and reverse proxy caching with HTTP proxies. The document provides tips for caching like starting early, overwriting cache when possible, caching reusable elements, and automating caching processes.

cachewebapplicationsmemcached
光速テーマ開発のコツ
光速テーマ開発のコツ光速テーマ開発のコツ
光速テーマ開発のコツ

This document contains notes from a WordCamp KOBE 2011 talk given by Takuro Hishikawa on WordPress theme development. It discusses WordPress template tags and functions like get_template_part(), query_posts(), and loop templates. Examples of themes like TwentyTen, TwentyEleven, Toolbox, HTML5Reset, and NCWhite are mentioned. Resources for WordPress theme development documentation and examples are provided.

wordpresswckobe-slide
CCSP 2012F 早點下班的工具
CCSP 2012F 早點下班的工具 CCSP 2012F 早點下班的工具
CCSP 2012F 早點下班的工具

This document discusses tools and techniques for making CSS and website development faster. It introduces CSS preprocessors like LESS and SCSS that compile into regular CSS. It also covers responsive front-end frameworks like Bootstrap and Foundation that provide pre-built components for faster site building. Additional tips covered include icon sets, grid systems, responsive design, and techniques for building beautiful sites.

2.
THE
PROCESS
2.
THE
PROCESS
10 tips which willhelp YOUR process
Know your audience
and what you can do.
1
@CRYSTALENKA #JAB18
If you know your audience’s technical capabilities,
you know when to play it safe and when to push
the envelope. Future-proof when you can by
using modern approaches like CSS Grid.
APPROACH
12
A CASE FOR
CSS GRID
Why you should just
use it, already
Two options for supporting older
browsers:
- fallback to mobile-first display
(Grid default)
- polyfill

Recommended for you

A modern front end development workflow for Magnolia at Atlassian
A modern front end development workflow for Magnolia at AtlassianA modern front end development workflow for Magnolia at Atlassian
A modern front end development workflow for Magnolia at Atlassian

This talk was given by Nicolas Barbé, Magnolia, and William Paoli, Atlassian, at Magnolia Conference 2015 in Foster City, California. The recommended development process for Magnolia is based on a Java stack and its ecosystem. It provides the best foundations to customize the back-end or create new content applications. However, implementing a new template or modifying an existing theme with standard front-end practices can be a challenging task. In this talk, William and Nicolas describe how Atlassian, the creator of JIRA and Confluence, has built a modern front-end development workflow with Magnolia. How they decouple the back-end and front-end release process to deliver incremental changes to the user.

magnolia conferencemconf15magnolia cms
HTML/CSS for WordPress
HTML/CSS for WordPressHTML/CSS for WordPress
HTML/CSS for WordPress

This document discusses using HTML/CSS in WordPress themes. It recommends using the Underscores starter theme to reduce time and effort. The Underscores theme provides default pages and structures that save developer hours. Key theme files like functions.php, header.php and footer.php are outlined. Styling elements with style.css is also covered. Child themes are recommended over directly modifying themes to avoid issues with updates. The document concludes with a practical example of creating a custom template file to build homepage slices directly in WordPress.

some major working files for designershow to create a child themecreate custom template
Responsive Web Design with Bootstrap
Responsive Web Design with BootstrapResponsive Web Design with Bootstrap
Responsive Web Design with Bootstrap

Responsive Web Design uses CSS3 media queries to make websites work well on different devices by adapting the layout. It has benefits like a single codebase that works across screen sizes, and better user experience. Drawbacks include more complexity in development and testing. Popular frameworks like Bootstrap use a grid system and components to help developers quickly build interfaces that work responsively.

bootstrapresponsive web designcss3
Not Just a Pretty Face: How to design and build a cross-CMS CSS framework
Auto-fill repeating tracks
with CSS Grid,
inspired by Rachel Andrews
https://codepen.io/rachelandrew/pen/GZQYOL
The magic bit:
grid-template-columns:
repeat(auto-fill,
minmax(200px, 1fr));
BILBAO DESIGN
CSS GRID
RESOURCES
Grid by Example - Rachel Andrews
https://gridbyexample.com
CSS Grid Changes Everything - Morten Rand-Hendriksen
https://mor10.com/wceu2017/
A Complete Guide to Grid - CSS Tricks
https://css-tricks.com/snippets/css/complete-guide-grid/
CSS Grid Layout - MDN Web Docs
https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Grid_Layout
Have a plan, but be
open-minded.
It’s good to have an idea of where you’re going,
but it can be unproductive to stick to it religiously.
When things go sideways, sometimes it’s better
to go with the flow.
2
@CRYSTALENKA #JAB18
APPROACH

Recommended for you

WordPress plugin development
WordPress plugin developmentWordPress plugin development
WordPress plugin development

This document provides an overview of WordPress plugin development. It discusses what WordPress plugins are and their uses. It then outlines important considerations for developing a plugin such as drawing a roadmap, choosing a unique name, file structure, coding standards, database usage, security, extensibility, translations, and distribution options. The goal is to help developers create effective, secure, and sustainable WordPress plugins.

pluginwordcampwordpress
Wordpress Underscores & foundation5
Wordpress Underscores & foundation5Wordpress Underscores & foundation5
Wordpress Underscores & foundation5

Underscores is a starter theme that can help build the next great WordPress theme without needing PHP or programming knowledge. Foundation 5 is a front-end framework that uses a mobile-first and responsive grid approach. It has new features like fast click, off canvas, GPU acceleration and interchange. Foundation 5 emphasizes building interfaces for mobile screens first before larger displays using a bottom-up approach.

foundationwebresponsive
You wanna crypto in AEM
You wanna crypto in AEMYou wanna crypto in AEM
You wanna crypto in AEM

This document introduces cryptography concepts like encryption, integrity protection, and digital signatures. It discusses how Adobe Experience Manager (AEM) implements cryptography to encrypt tokens and protect against CSRF attacks. Specifically, AEM uses JSON Web Tokens (JWTs) to encapsulate tokens, signs them with an HMAC key for integrity, and includes the token in non-GET requests to prevent CSRF without requiring changes to application code or dependencies on server-side sessions. Developers do not need to handle the CSRF token explicitly in their JavaScript code.

Find your building
blocks, or “atoms”
This will help your design look good, and also will
help you later when coding as you can have
cleaner, more reusable CSS.
3
@CRYSTALENKA #JAB18
APPROACH&
DESIGN
Not Just a Pretty Face: How to design and build a cross-CMS CSS framework
Not Just a Pretty Face: How to design and build a cross-CMS CSS framework
Not Just a Pretty Face: How to design and build a cross-CMS CSS framework

Recommended for you

Why You Need a Front End Developer
Why You Need a Front End DeveloperWhy You Need a Front End Developer
Why You Need a Front End Developer

This document discusses why front end developers are needed. It begins by defining what a front end developer is and outlines some of their typical duties, which include working on the user interface, accessibility, testing, multimedia, design, and optimization of the front end. It notes that while back end developers focus more on the server side, front end developers ensure the client-side code and experience are effective. The document also discusses some of the challenges of front end development like different browsers, mobile environments, and JavaScript frameworks. It emphasizes that user interface and design are important aspects that should not be an afterthought.

usabilitycsshtml5
WordPress Security : What We Learnt When We Were Hacked : WordCamp Mumbai 2017
WordPress Security : What We Learnt When We Were Hacked : WordCamp Mumbai 2017WordPress Security : What We Learnt When We Were Hacked : WordCamp Mumbai 2017
WordPress Security : What We Learnt When We Were Hacked : WordCamp Mumbai 2017

In this talk at WordCamp Mumbai 2017, I shared what we learnt when we were hacked. Common type of attacks, how to spot them, some free tools and some Do's & Don'ts. You can find link to demo video here https://youtu.be/ErpZreeM4Z4

securitywordpresshacking
Frameworks for the web
Frameworks for the webFrameworks for the web
Frameworks for the web

The document discusses using HTML frameworks to help with web design. It notes some benefits of frameworks like providing a simple foundation to start, saving time, and capitalizing on good code. However, frameworks can sometimes result in less semantic or readable code, and the design and code may not be separate. Several popular frameworks are mentioned like HTML Framework, Blueprint, 960 Grid System, and HTML5 Boilerplate. The document encourages exploring these frameworks and using techniques like CSS libraries and clips to work faster when designing with frameworks.

Not Just a Pretty Face: How to design and build a cross-CMS CSS framework
Not Just a Pretty Face: How to design and build a cross-CMS CSS framework
Not Just a Pretty Face: How to design and build a cross-CMS CSS framework
BILBAO DESIGN
DESIGN SYSTEM
RESOURCES
Atomic Design - Brad Frost
http://atomicdesign.bradfrost.com/table-of-contents/

Recommended for you

How to Build Custom WordPress Blocks
How to Build Custom WordPress BlocksHow to Build Custom WordPress Blocks
How to Build Custom WordPress Blocks

This document discusses building custom blocks for WordPress and provides an overview of the process. It recommends that blocks be built as plugins and be self-contained components. It outlines the typical development and production setup, with source code in one directory and built files like minified scripts and stylesheets in another. The key steps are to make a plugin, set up the build process, build the block, and then use the block. Links to additional resources on the block editor and examples are also provided.

wordpressgutenbergblock editor
Building the next generation of themes with WP Rig 2.0
Building the next generation of themes with WP Rig 2.0Building the next generation of themes with WP Rig 2.0
Building the next generation of themes with WP Rig 2.0

The web has evolved, and now it’s time our themes do the same. WP Rig is an evolution on the tried and true starter theme model: a modern build process and WordPress starter theme bundled together, created to simplify the process of building advanced, accessible, performant, progressive themes. WP Rig does the heavy lifting of optimization so developers can focus on what they do best: designing and building great user experiences. In this talk you’ll learn how to supercharge your theme development process with WP Rig.

wordpresswprigcss
Using a CSS Framework
Using a CSS FrameworkUsing a CSS Framework
Using a CSS Framework

The document discusses using CSS frameworks to speed up web development by avoiding having to repeatedly write CSS resets and layout code. It describes the Blueprint CSS framework, including how it provides a grid system, typography styles, and other components out of the box. The author explains how using a framework like Blueprint CSS can save significant time over building sites from scratch each time.

blueprintcssblueprintframework
Be consistent with
your colors & style
Stick to your brand colors and others in that
range so your extensions are easily recognizable
on any platform. Pick an icon font (or go without)
and stick to it.
4
@CRYSTALENKA #JAB18
APPROACH&
DESIGN
BILBAO DESIGN
COLOR PALETTE
RESOURCES
Adobe Color
color.adobe.com
Coolers Color Palette Generator
coolers.co
Paletton
paletton.com
Use a preprocessor
and make life easy
Using SASS or LESS allows you to be more
organized from the beginning, which helps you
maintain the framework in the long-term.
5
@CRYSTALENKA #JAB18
APPROACH&
DESIGN&
CODE
Organize your code
based on purpose
Purposely-organized code is easier to come back
to later than location-based code. Extensions
evolve over time!
6
@CRYSTALENKA #JAB18
APPROACH&
DESIGN&
CODE

Recommended for you

2009_09_11_Grid960
2009_09_11_Grid9602009_09_11_Grid960
2009_09_11_Grid960

The document discusses a 5-step process for using a CSS grid framework called the 960 Grid System to design a website. Step 1 involves paper prototyping to define expectations. Step 2 is creating an unstyled semantic structure using the 960 Grid. Step 3 adds graphical elements in Photoshop. Step 4 finalizes production by slicing images and applying CSS. Step 5 focuses on testing across browsers before client delivery. Using this process and a CSS framework provides benefits like visual consistency and reduced cross-browser issues.

EnterJS 2015 - Continuous Integration for Frontend Code
EnterJS 2015 - Continuous Integration for Frontend CodeEnterJS 2015 - Continuous Integration for Frontend Code
EnterJS 2015 - Continuous Integration for Frontend Code

Continuous Integration gehört in den meisten Unternehmen mittlerweile zum guten Ton, oft aber nur mit Blick auf die Server-Seite. Dabei kommt heute keine Anwendung mehr ohne Frontend-Code aus. Dieser wird - gerade im Enterprise-Bereich - oft vernachlässigt. In diesem Vortrag wird ein CI-Setup mit Fokus auf das Frontend vorgestellt. Automatisierte Tests, Sourcecode Quality Management und andere typische Bestandteile sind für den Frontend-Code genauso wichtig wie für das Backend. Durch Asset-Optimierung kann die Performance, gerade für mobile Clients, deutlich gesteigert werden. Gezeigt werden Tools, Methoden und Best Practices für den Aufbau und die Umsetzung der Delivery-Pipeline. Zum Einsatz kommen dabei Grunt, ESLint, Mocha und Jenkins.

continuous integrationunit testingcontinuous delivery
Style Guides Are The New Photoshop (Smashing Conference 2012)
Style Guides Are The New Photoshop (Smashing Conference 2012)Style Guides Are The New Photoshop (Smashing Conference 2012)
Style Guides Are The New Photoshop (Smashing Conference 2012)

The document discusses replacing Photoshop comps with web-based comps and style guides for responsive design mockups. It outlines problems with using Photoshop, such as design changes being time-consuming and the inability to represent responsive designs. The document then presents the benefits of using web-based comps and style guides, such as allowing for realistic rendering and representation of responsive designs. It also describes a workflow for creating web-based style guides using tools like Markdown, Jinja templates, PhantomJS, CasperJS, and Dexy.

responsive designstyle guidesphotoshop
Not Just a Pretty Face: How to design and build a cross-CMS CSS framework
Not Just a Pretty Face: How to design and build a cross-CMS CSS framework
Build from outside in,
not top to bottom
This helps you think in a more function-based
mindset. Start with the structure and work your
way in. You’re likely to have more maintainable
code as a result.
7
@CRYSTALENKA #JAB18
APPROACH&
DESIGN&
CODE
Namespace ALL the
things
This prevents conflicts with any too-generic CSS
loaded by the CMS, and makes it easier to target
so you never have to use !important.
Example: .akeeba-button instead of .button
8
@CRYSTALENKA #JAB18
APPROACH&
DESIGN&
CODE

Recommended for you

Structuring your CSS for maintainability: rules and guile lines to write CSS
Structuring your CSS for maintainability: rules and guile lines to write CSSStructuring your CSS for maintainability: rules and guile lines to write CSS
Structuring your CSS for maintainability: rules and guile lines to write CSS

Structuring your CSS for maintainability: rules and guile lines to write CSS As you start work on larger stylesheets and big projects with a team, you will discover that maintaining a huge CSS file can be challenging. So, we will go through some best practices for writing CSS that will help us to maintain the CSS project easily.

cssfrontendmaintainability
Style Guides Are The New Photoshop (Fronteers 2012)
Style Guides Are The New Photoshop (Fronteers 2012)Style Guides Are The New Photoshop (Fronteers 2012)
Style Guides Are The New Photoshop (Fronteers 2012)

A slightly modified version of the talk I first presented at Smashing Conference, now presented at Fronteers 2012. (http://fronteers.nl/congres/2012) Use of image editors for creating web design mockups has worked until now, but responsive design is forcing us to find alternatives, as we can't simply create more mockups as we design for more screens. Have no fear, there is at least one method of replacing Photoshop for web design. Let's take a look at one of the most important aspects of this method: the creation of clear, semi-automated, self-updating style guides.

responsive designstyle guidesphotoshop
Creating a Business Oriented UI in APEX
Creating a Business Oriented UI in APEXCreating a Business Oriented UI in APEX
Creating a Business Oriented UI in APEX

If you’re building Oracle APEX applications, there’s a good chance that they are business-centric applications that will mostly be used by employees of your organization. The main goal of the user interface of these applications is to be functional and intuitive, not flashy and eccentric. Throw in the challenges of cross-browser compatibility and mobile support, and designing a user interface gets pretty complex. This session will outline some techniques and tools that can be applied when designing user interfaces for these business-centric applications. All solutions will be presented in a format that does not require advanced graphics design experience.

Don’t bloat your
JavaScript
Write what you need - it’s entirely possible to do it
all with just a little vanilla JS. (You don’t need that
giant JavaScript framework.)
@CRYSTALENKA #JAB18
APPROACH&
DESIGN&
CODE
9
Have CMS-specific
stylesheets
No matter how hard you try, you will end up
needing to make small tweaks for each CMS.
Keep this separate from “common” code.
@CRYSTALENKA #JAB18
APPROACH&
DESIGN&
CODE
10
It’s a journey, not a
destination.
You will need to maintain your framework as
technology changes, your audience matures, and
your knowledge grows. Things will get added and
removed over time - enjoy the process. :)
11
@CRYSTALENKA #JAB18
APPROACH&
DESIGN&
CODE&
BONUS
3.
THE
RESULTS

Recommended for you

Drupal Theming with CSS Frameworks (960grid)
Drupal Theming with CSS Frameworks (960grid)Drupal Theming with CSS Frameworks (960grid)
Drupal Theming with CSS Frameworks (960grid)

The document discusses CSS frameworks and grid-based design. It introduces CSS frameworks as sets of tools and best practices that abstract routine tasks into reusable modules. Grid-based design uses a grid system to organize content spatially on a page in a clear, meaningful way for users. The document examines specific CSS frameworks, Blueprint and 960gs, and discusses advantages and disadvantages of working with grids, including how grids can facilitate creativity but also impose restrictions. It also explores using the 960gs framework with the Drupal CMS.

drupalcampau08drupalsdug
CSS framework By Palash
CSS framework By PalashCSS framework By Palash
CSS framework By Palash

All about CSS and its framework. This covered the most important CSS frameworks with their sample code and working.

webweb2.0css
An Introduction to CSS Frameworks
An Introduction to CSS FrameworksAn Introduction to CSS Frameworks
An Introduction to CSS Frameworks

The document discusses CSS frameworks, which aim to abstract routine CSS tasks into reusable modules. It covers the frustrations of CSS development like lack of code reuse. Popular frameworks like Blueprint, 960gs and CSS Scaffold are examined. Frameworks provide advantages like increased productivity but also have disadvantages like creating bloated code and design restrictions. In summary, frameworks can help speed up development and improve designs but are not perfect solutions and building your own comes with further complications.

htmlweb designcss
BEFORE
Akeeba Backup
v. 5.6.3
@CRYSTALENKA #JAB18
AFTER
Akeeba Backup
v. 6.0.0
@CRYSTALENKA #JAB18
BEFORE
Akeeba Backup
v. 5.6.3
@CRYSTALENKA #JAB18
AFTER
Akeeba Backup
v. 6.0.0
@CRYSTALENKA #JAB18

Recommended for you

Roadmap 01
Roadmap 01Roadmap 01
Roadmap 01

This document provides an overview of CSS (Cascading Style Sheets) and why it is important for web design. It discusses the benefits of CSS, including improved portability across devices, increased download speeds, and easier site maintenance. The document then provides steps for getting started with CSS, including planning layouts with CSS in mind, using simple building blocks, and testing designs across browsers. The overall purpose is to convince readers of the business and design advantages of using CSS for websites.

Css masterclass book
Css masterclass bookCss masterclass book
Css masterclass book

This document provides an introduction to the CSS Masterclass course by Arkmont.com. It discusses what CSS is and how it is used to style web pages. It also covers different ways to add CSS to a page, including external, internal, and inline styles. Additionally, it explains CSS selectors like tags, classes, and IDs which are used to target specific HTML elements for styling. The document provides examples of CSS properties and values that are used to define styles.

csscss3html
Get Started With Tailwind React and Create Beautiful Apps.pdf
Get Started With Tailwind React and Create Beautiful Apps.pdfGet Started With Tailwind React and Create Beautiful Apps.pdf
Get Started With Tailwind React and Create Beautiful Apps.pdf

Get started with Tailwind CSS and React today, and unleash your creativity in building beautiful, responsive web applications.

tailwind react
AKEEBA IS
HAPPY
File size didn’t increase.
The packaged Akeeba extensions
are no larger than they were
before, but look a lot better.
2
3
Much faster page rendering.
By ditching Bootstrap and jQuery,
Akeeba components now load way
faster because fewer page redraws.
Changes are predictable.
Akeeba can make updates to the
CSS when they need to, within their
own development timeline.
1
@CRYSTALENKA #JAB18
QUESTIONS/
DISCUSSION
@CRYSTALENKA #JAB18
THANK
YOU!
slides will be tweeted
@crystalenka

More Related Content

What's hot

Front End Best Practices
Front End Best PracticesFront End Best Practices
Front End Best Practices
Holger Bartel
 
Bootstrap 3 - Sleek, intuitive, and powerful mobile first front-end framework...
Bootstrap 3 - Sleek, intuitive, and powerful mobile first front-end framework...Bootstrap 3 - Sleek, intuitive, and powerful mobile first front-end framework...
Bootstrap 3 - Sleek, intuitive, and powerful mobile first front-end framework...
Cedric Spillebeen
 
Sabine Langmann - Brighton SEO 2018 - How to expand to different markets
Sabine Langmann - Brighton SEO 2018 - How to expand to different marketsSabine Langmann - Brighton SEO 2018 - How to expand to different markets
Sabine Langmann - Brighton SEO 2018 - How to expand to different markets
Sabine Langmann
 
Developing WordPress Plugins Using the MVC Methodology
Developing WordPress Plugins Using the MVC MethodologyDeveloping WordPress Plugins Using the MVC Methodology
Developing WordPress Plugins Using the MVC Methodology
Nate Allen
 
Guide To Web Development
Guide To Web DevelopmentGuide To Web Development
Guide To Web Development
FaisalBinHassan
 
Building a Moodle theme with bootstrap
Building a Moodle theme with bootstrapBuilding a Moodle theme with bootstrap
Building a Moodle theme with bootstrap
Bas Brands
 
WeBB MeetUp#1 Web applications caching techniques
WeBB MeetUp#1 Web applications caching techniquesWeBB MeetUp#1 Web applications caching techniques
WeBB MeetUp#1 Web applications caching techniques
Maciej Grajcarek
 
光速テーマ開発のコツ
光速テーマ開発のコツ光速テーマ開発のコツ
光速テーマ開発のコツ
Hishikawa Takuro
 
CCSP 2012F 早點下班的工具
CCSP 2012F 早點下班的工具 CCSP 2012F 早點下班的工具
CCSP 2012F 早點下班的工具
裕欽 林
 
A modern front end development workflow for Magnolia at Atlassian
A modern front end development workflow for Magnolia at AtlassianA modern front end development workflow for Magnolia at Atlassian
A modern front end development workflow for Magnolia at Atlassian
Magnolia
 
HTML/CSS for WordPress
HTML/CSS for WordPressHTML/CSS for WordPress
HTML/CSS for WordPress
Kanchha kaji Prajapati
 
Responsive Web Design with Bootstrap
Responsive Web Design with BootstrapResponsive Web Design with Bootstrap
Responsive Web Design with Bootstrap
Jason Stehle
 
WordPress plugin development
WordPress plugin developmentWordPress plugin development
WordPress plugin development
arryaas
 
Wordpress Underscores & foundation5
Wordpress Underscores & foundation5Wordpress Underscores & foundation5
Wordpress Underscores & foundation5
Aum Watcharapol
 
You wanna crypto in AEM
You wanna crypto in AEMYou wanna crypto in AEM
You wanna crypto in AEM
Damien Antipa
 
Why You Need a Front End Developer
Why You Need a Front End DeveloperWhy You Need a Front End Developer
Why You Need a Front End Developer
Mike Wilcox
 
WordPress Security : What We Learnt When We Were Hacked : WordCamp Mumbai 2017
WordPress Security : What We Learnt When We Were Hacked : WordCamp Mumbai 2017WordPress Security : What We Learnt When We Were Hacked : WordCamp Mumbai 2017
WordPress Security : What We Learnt When We Were Hacked : WordCamp Mumbai 2017
Bhushan Jawle
 
Frameworks for the web
Frameworks for the webFrameworks for the web
Frameworks for the web
netfuel
 
How to Build Custom WordPress Blocks
How to Build Custom WordPress BlocksHow to Build Custom WordPress Blocks
How to Build Custom WordPress Blocks
Morten Rand-Hendriksen
 
Building the next generation of themes with WP Rig 2.0
Building the next generation of themes with WP Rig 2.0Building the next generation of themes with WP Rig 2.0
Building the next generation of themes with WP Rig 2.0
Morten Rand-Hendriksen
 

What's hot (20)

Front End Best Practices
Front End Best PracticesFront End Best Practices
Front End Best Practices
 
Bootstrap 3 - Sleek, intuitive, and powerful mobile first front-end framework...
Bootstrap 3 - Sleek, intuitive, and powerful mobile first front-end framework...Bootstrap 3 - Sleek, intuitive, and powerful mobile first front-end framework...
Bootstrap 3 - Sleek, intuitive, and powerful mobile first front-end framework...
 
Sabine Langmann - Brighton SEO 2018 - How to expand to different markets
Sabine Langmann - Brighton SEO 2018 - How to expand to different marketsSabine Langmann - Brighton SEO 2018 - How to expand to different markets
Sabine Langmann - Brighton SEO 2018 - How to expand to different markets
 
Developing WordPress Plugins Using the MVC Methodology
Developing WordPress Plugins Using the MVC MethodologyDeveloping WordPress Plugins Using the MVC Methodology
Developing WordPress Plugins Using the MVC Methodology
 
Guide To Web Development
Guide To Web DevelopmentGuide To Web Development
Guide To Web Development
 
Building a Moodle theme with bootstrap
Building a Moodle theme with bootstrapBuilding a Moodle theme with bootstrap
Building a Moodle theme with bootstrap
 
WeBB MeetUp#1 Web applications caching techniques
WeBB MeetUp#1 Web applications caching techniquesWeBB MeetUp#1 Web applications caching techniques
WeBB MeetUp#1 Web applications caching techniques
 
光速テーマ開発のコツ
光速テーマ開発のコツ光速テーマ開発のコツ
光速テーマ開発のコツ
 
CCSP 2012F 早點下班的工具
CCSP 2012F 早點下班的工具 CCSP 2012F 早點下班的工具
CCSP 2012F 早點下班的工具
 
A modern front end development workflow for Magnolia at Atlassian
A modern front end development workflow for Magnolia at AtlassianA modern front end development workflow for Magnolia at Atlassian
A modern front end development workflow for Magnolia at Atlassian
 
HTML/CSS for WordPress
HTML/CSS for WordPressHTML/CSS for WordPress
HTML/CSS for WordPress
 
Responsive Web Design with Bootstrap
Responsive Web Design with BootstrapResponsive Web Design with Bootstrap
Responsive Web Design with Bootstrap
 
WordPress plugin development
WordPress plugin developmentWordPress plugin development
WordPress plugin development
 
Wordpress Underscores & foundation5
Wordpress Underscores & foundation5Wordpress Underscores & foundation5
Wordpress Underscores & foundation5
 
You wanna crypto in AEM
You wanna crypto in AEMYou wanna crypto in AEM
You wanna crypto in AEM
 
Why You Need a Front End Developer
Why You Need a Front End DeveloperWhy You Need a Front End Developer
Why You Need a Front End Developer
 
WordPress Security : What We Learnt When We Were Hacked : WordCamp Mumbai 2017
WordPress Security : What We Learnt When We Were Hacked : WordCamp Mumbai 2017WordPress Security : What We Learnt When We Were Hacked : WordCamp Mumbai 2017
WordPress Security : What We Learnt When We Were Hacked : WordCamp Mumbai 2017
 
Frameworks for the web
Frameworks for the webFrameworks for the web
Frameworks for the web
 
How to Build Custom WordPress Blocks
How to Build Custom WordPress BlocksHow to Build Custom WordPress Blocks
How to Build Custom WordPress Blocks
 
Building the next generation of themes with WP Rig 2.0
Building the next generation of themes with WP Rig 2.0Building the next generation of themes with WP Rig 2.0
Building the next generation of themes with WP Rig 2.0
 

Similar to Not Just a Pretty Face: How to design and build a cross-CMS CSS framework

Using a CSS Framework
Using a CSS FrameworkUsing a CSS Framework
Using a CSS Framework
Gareth Saunders
 
2009_09_11_Grid960
2009_09_11_Grid9602009_09_11_Grid960
2009_09_11_Grid960
LightSpeed
 
EnterJS 2015 - Continuous Integration for Frontend Code
EnterJS 2015 - Continuous Integration for Frontend CodeEnterJS 2015 - Continuous Integration for Frontend Code
EnterJS 2015 - Continuous Integration for Frontend Code
Marcel Birkner
 
Style Guides Are The New Photoshop (Smashing Conference 2012)
Style Guides Are The New Photoshop (Smashing Conference 2012)Style Guides Are The New Photoshop (Smashing Conference 2012)
Style Guides Are The New Photoshop (Smashing Conference 2012)
Stephen Hay
 
Structuring your CSS for maintainability: rules and guile lines to write CSS
Structuring your CSS for maintainability: rules and guile lines to write CSSStructuring your CSS for maintainability: rules and guile lines to write CSS
Structuring your CSS for maintainability: rules and guile lines to write CSS
Sanjoy Kr. Paul
 
Style Guides Are The New Photoshop (Fronteers 2012)
Style Guides Are The New Photoshop (Fronteers 2012)Style Guides Are The New Photoshop (Fronteers 2012)
Style Guides Are The New Photoshop (Fronteers 2012)
Stephen Hay
 
Creating a Business Oriented UI in APEX
Creating a Business Oriented UI in APEXCreating a Business Oriented UI in APEX
Creating a Business Oriented UI in APEX
Enkitec
 
Drupal Theming with CSS Frameworks (960grid)
Drupal Theming with CSS Frameworks (960grid)Drupal Theming with CSS Frameworks (960grid)
Drupal Theming with CSS Frameworks (960grid)
Ryan Cross
 
CSS framework By Palash
CSS framework By PalashCSS framework By Palash
CSS framework By Palash
PalashBajpai
 
An Introduction to CSS Frameworks
An Introduction to CSS FrameworksAn Introduction to CSS Frameworks
An Introduction to CSS Frameworks
Adrian Westlake
 
Roadmap 01
Roadmap 01Roadmap 01
Roadmap 01
quangnv17071980
 
Css masterclass book
Css masterclass bookCss masterclass book
Css masterclass book
Phoenix
 
Get Started With Tailwind React and Create Beautiful Apps.pdf
Get Started With Tailwind React and Create Beautiful Apps.pdfGet Started With Tailwind React and Create Beautiful Apps.pdf
Get Started With Tailwind React and Create Beautiful Apps.pdf
RonDosh
 
Mobile Monday Presentation: Responsive Web Design
Mobile Monday Presentation: Responsive Web DesignMobile Monday Presentation: Responsive Web Design
Mobile Monday Presentation: Responsive Web Design
Cantina
 
6 css week12 2020 2021 for g10
6 css week12 2020 2021 for g106 css week12 2020 2021 for g10
6 css week12 2020 2021 for g10
Osama Ghandour Geris
 
CSS vs. JavaScript - Trust vs. Control
CSS vs. JavaScript - Trust vs. ControlCSS vs. JavaScript - Trust vs. Control
CSS vs. JavaScript - Trust vs. Control
Christian Heilmann
 
Html5 & less css
Html5 & less cssHtml5 & less css
Html5 & less css
Graham Johnson
 
CSS3 and a brief introduction to Google Maps API v3
CSS3 and a brief introduction to Google Maps API v3 CSS3 and a brief introduction to Google Maps API v3
CSS3 and a brief introduction to Google Maps API v3
Jeffrey Barke
 
Intro to html5 Boilerplate
Intro to html5 BoilerplateIntro to html5 Boilerplate
Intro to html5 Boilerplate
Michael Enslow
 
Neoito — NativeScript Best Coding Practices
Neoito — NativeScript Best Coding PracticesNeoito — NativeScript Best Coding Practices
Neoito — NativeScript Best Coding Practices
Neoito
 

Similar to Not Just a Pretty Face: How to design and build a cross-CMS CSS framework (20)

Using a CSS Framework
Using a CSS FrameworkUsing a CSS Framework
Using a CSS Framework
 
2009_09_11_Grid960
2009_09_11_Grid9602009_09_11_Grid960
2009_09_11_Grid960
 
EnterJS 2015 - Continuous Integration for Frontend Code
EnterJS 2015 - Continuous Integration for Frontend CodeEnterJS 2015 - Continuous Integration for Frontend Code
EnterJS 2015 - Continuous Integration for Frontend Code
 
Style Guides Are The New Photoshop (Smashing Conference 2012)
Style Guides Are The New Photoshop (Smashing Conference 2012)Style Guides Are The New Photoshop (Smashing Conference 2012)
Style Guides Are The New Photoshop (Smashing Conference 2012)
 
Structuring your CSS for maintainability: rules and guile lines to write CSS
Structuring your CSS for maintainability: rules and guile lines to write CSSStructuring your CSS for maintainability: rules and guile lines to write CSS
Structuring your CSS for maintainability: rules and guile lines to write CSS
 
Style Guides Are The New Photoshop (Fronteers 2012)
Style Guides Are The New Photoshop (Fronteers 2012)Style Guides Are The New Photoshop (Fronteers 2012)
Style Guides Are The New Photoshop (Fronteers 2012)
 
Creating a Business Oriented UI in APEX
Creating a Business Oriented UI in APEXCreating a Business Oriented UI in APEX
Creating a Business Oriented UI in APEX
 
Drupal Theming with CSS Frameworks (960grid)
Drupal Theming with CSS Frameworks (960grid)Drupal Theming with CSS Frameworks (960grid)
Drupal Theming with CSS Frameworks (960grid)
 
CSS framework By Palash
CSS framework By PalashCSS framework By Palash
CSS framework By Palash
 
An Introduction to CSS Frameworks
An Introduction to CSS FrameworksAn Introduction to CSS Frameworks
An Introduction to CSS Frameworks
 
Roadmap 01
Roadmap 01Roadmap 01
Roadmap 01
 
Css masterclass book
Css masterclass bookCss masterclass book
Css masterclass book
 
Get Started With Tailwind React and Create Beautiful Apps.pdf
Get Started With Tailwind React and Create Beautiful Apps.pdfGet Started With Tailwind React and Create Beautiful Apps.pdf
Get Started With Tailwind React and Create Beautiful Apps.pdf
 
Mobile Monday Presentation: Responsive Web Design
Mobile Monday Presentation: Responsive Web DesignMobile Monday Presentation: Responsive Web Design
Mobile Monday Presentation: Responsive Web Design
 
6 css week12 2020 2021 for g10
6 css week12 2020 2021 for g106 css week12 2020 2021 for g10
6 css week12 2020 2021 for g10
 
CSS vs. JavaScript - Trust vs. Control
CSS vs. JavaScript - Trust vs. ControlCSS vs. JavaScript - Trust vs. Control
CSS vs. JavaScript - Trust vs. Control
 
Html5 & less css
Html5 & less cssHtml5 & less css
Html5 & less css
 
CSS3 and a brief introduction to Google Maps API v3
CSS3 and a brief introduction to Google Maps API v3 CSS3 and a brief introduction to Google Maps API v3
CSS3 and a brief introduction to Google Maps API v3
 
Intro to html5 Boilerplate
Intro to html5 BoilerplateIntro to html5 Boilerplate
Intro to html5 Boilerplate
 
Neoito — NativeScript Best Coding Practices
Neoito — NativeScript Best Coding PracticesNeoito — NativeScript Best Coding Practices
Neoito — NativeScript Best Coding Practices
 

Recently uploaded

Comparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdfComparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdf
Andrey Yasko
 
Research Directions for Cross Reality Interfaces
Research Directions for Cross Reality InterfacesResearch Directions for Cross Reality Interfaces
Research Directions for Cross Reality Interfaces
Mark Billinghurst
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
shanthidl1
 
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry
Eric D. Schabell
 
Implementations of Fused Deposition Modeling in real world
Implementations of Fused Deposition Modeling  in real worldImplementations of Fused Deposition Modeling  in real world
Implementations of Fused Deposition Modeling in real world
Emerging Tech
 
20240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 202420240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 2024
Matthew Sinclair
 
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
Kief Morris
 
Quality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of TimeQuality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of Time
Aurora Consulting
 
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-InTrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc
 
Password Rotation in 2024 is still Relevant
Password Rotation in 2024 is still RelevantPassword Rotation in 2024 is still Relevant
Password Rotation in 2024 is still Relevant
Bert Blevins
 
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Chris Swan
 
Coordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar SlidesCoordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar Slides
Safe Software
 
Recent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS InfrastructureRecent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS Infrastructure
KAMAL CHOUDHARY
 
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptxRPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
SynapseIndia
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
Tatiana Al-Chueyr
 
20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf
Sally Laouacheria
 
20240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 202420240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 2024
Matthew Sinclair
 
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - MydbopsScaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Mydbops
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
Yevgen Sysoyev
 
What's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptxWhat's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptx
Stephanie Beckett
 

Recently uploaded (20)

Comparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdfComparison Table of DiskWarrior Alternatives.pdf
Comparison Table of DiskWarrior Alternatives.pdf
 
Research Directions for Cross Reality Interfaces
Research Directions for Cross Reality InterfacesResearch Directions for Cross Reality Interfaces
Research Directions for Cross Reality Interfaces
 
Cookies program to display the information though cookie creation
Cookies program to display the information though cookie creationCookies program to display the information though cookie creation
Cookies program to display the information though cookie creation
 
Observability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetryObservability For You and Me with OpenTelemetry
Observability For You and Me with OpenTelemetry
 
Implementations of Fused Deposition Modeling in real world
Implementations of Fused Deposition Modeling  in real worldImplementations of Fused Deposition Modeling  in real world
Implementations of Fused Deposition Modeling in real world
 
20240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 202420240702 QFM021 Machine Intelligence Reading List June 2024
20240702 QFM021 Machine Intelligence Reading List June 2024
 
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
[Talk] Moving Beyond Spaghetti Infrastructure [AOTB] 2024-07-04.pdf
 
Quality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of TimeQuality Patents: Patents That Stand the Test of Time
Quality Patents: Patents That Stand the Test of Time
 
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-InTrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
 
Password Rotation in 2024 is still Relevant
Password Rotation in 2024 is still RelevantPassword Rotation in 2024 is still Relevant
Password Rotation in 2024 is still Relevant
 
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
Fluttercon 2024: Showing that you care about security - OpenSSF Scorecards fo...
 
Coordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar SlidesCoordinate Systems in FME 101 - Webinar Slides
Coordinate Systems in FME 101 - Webinar Slides
 
Recent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS InfrastructureRecent Advancements in the NIST-JARVIS Infrastructure
Recent Advancements in the NIST-JARVIS Infrastructure
 
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptxRPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
RPA In Healthcare Benefits, Use Case, Trend And Challenges 2024.pptx
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
 
20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf20240702 Présentation Plateforme GenAI.pdf
20240702 Présentation Plateforme GenAI.pdf
 
20240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 202420240704 QFM023 Engineering Leadership Reading List June 2024
20240704 QFM023 Engineering Leadership Reading List June 2024
 
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - MydbopsScaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
Scaling Connections in PostgreSQL Postgres Bangalore(PGBLR) Meetup-2 - Mydbops
 
DealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 editionDealBook of Ukraine: 2024 edition
DealBook of Ukraine: 2024 edition
 
What's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptxWhat's New in Copilot for Microsoft365 May 2024.pptx
What's New in Copilot for Microsoft365 May 2024.pptx
 

Not Just a Pretty Face: How to design and build a cross-CMS CSS framework

  • 1. NOT JUST A PRETTY FACE How to design and build a cross-CMS CSS framework @CRYSTALENKA #JAB18
  • 2. ABOUT ME User Experience Consultant Front End Developer UI Designer Crystal Dionysopoulos @CRYSTALENKA #JAB18
  • 3. The pros and cons of a DIY CSS framework, plus our starting project requirements. Intro 1 WHAT TO EXPECT IN THIS TALK How implementing FEF affected Akeeba’s extensions and workflow The Results 3 From design to code, 10 useful things we learned in the process. The Process 2 @CRYSTALENKA #JAB18
  • 5. No really, LOTS of upfront work I’m not kidding. You will be committing a lot of time to this. Lots of upfront work. I mean, you’re building your own CSS framework, after all… Your code…you maintain it. As with any code you write, you’ll have to update it over time - and that takes time too. THE CONS #JAB18
  • 6. BILBAO DESIGN 6 BUT IT IS WORTH IT! Or at least, we think so!
  • 7. Lightweight and FAST Code Only build what you need, when you need it. Reduce the bloat and deliver better extensions! You’re In Control Make changes based on your own schedule and needs, as well as the needs of your audience. Ŏ Stay Visually Consistent Make sure your extensions provide a consistent experience for your users in Joomla! and WordPress. Easier to Maintain Same CSS framework across extensions and CMSs means more reusable code and less tweaking. WHY BOTHER? @CRYSTALENKA #JAB18
  • 8. AKEEBA’S REQUIREMENTS Easy to convert to That meant not too many changes to the HTML or PHP structure, and easy-to-remember classes. ♥ Easy to adapt to We didn’t want to shock the users too much, so this was strictly a facelift - no functional changes. Flexible elements From structure to buttons, everything had to be flexible and easy to reuse. @CRYSTALENKA #JAB18
  • 10. 2. THE PROCESS 10 tips which willhelp YOUR process
  • 11. Know your audience and what you can do. 1 @CRYSTALENKA #JAB18 If you know your audience’s technical capabilities, you know when to play it safe and when to push the envelope. Future-proof when you can by using modern approaches like CSS Grid. APPROACH
  • 12. 12 A CASE FOR CSS GRID Why you should just use it, already Two options for supporting older browsers: - fallback to mobile-first display (Grid default) - polyfill
  • 14. Auto-fill repeating tracks with CSS Grid, inspired by Rachel Andrews https://codepen.io/rachelandrew/pen/GZQYOL The magic bit: grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  • 15. BILBAO DESIGN CSS GRID RESOURCES Grid by Example - Rachel Andrews https://gridbyexample.com CSS Grid Changes Everything - Morten Rand-Hendriksen https://mor10.com/wceu2017/ A Complete Guide to Grid - CSS Tricks https://css-tricks.com/snippets/css/complete-guide-grid/ CSS Grid Layout - MDN Web Docs https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Grid_Layout
  • 16. Have a plan, but be open-minded. It’s good to have an idea of where you’re going, but it can be unproductive to stick to it religiously. When things go sideways, sometimes it’s better to go with the flow. 2 @CRYSTALENKA #JAB18 APPROACH
  • 17. Find your building blocks, or “atoms” This will help your design look good, and also will help you later when coding as you can have cleaner, more reusable CSS. 3 @CRYSTALENKA #JAB18 APPROACH& DESIGN
  • 24. BILBAO DESIGN DESIGN SYSTEM RESOURCES Atomic Design - Brad Frost http://atomicdesign.bradfrost.com/table-of-contents/
  • 25. Be consistent with your colors & style Stick to your brand colors and others in that range so your extensions are easily recognizable on any platform. Pick an icon font (or go without) and stick to it. 4 @CRYSTALENKA #JAB18 APPROACH& DESIGN
  • 26. BILBAO DESIGN COLOR PALETTE RESOURCES Adobe Color color.adobe.com Coolers Color Palette Generator coolers.co Paletton paletton.com
  • 27. Use a preprocessor and make life easy Using SASS or LESS allows you to be more organized from the beginning, which helps you maintain the framework in the long-term. 5 @CRYSTALENKA #JAB18 APPROACH& DESIGN& CODE
  • 28. Organize your code based on purpose Purposely-organized code is easier to come back to later than location-based code. Extensions evolve over time! 6 @CRYSTALENKA #JAB18 APPROACH& DESIGN& CODE
  • 31. Build from outside in, not top to bottom This helps you think in a more function-based mindset. Start with the structure and work your way in. You’re likely to have more maintainable code as a result. 7 @CRYSTALENKA #JAB18 APPROACH& DESIGN& CODE
  • 32. Namespace ALL the things This prevents conflicts with any too-generic CSS loaded by the CMS, and makes it easier to target so you never have to use !important. Example: .akeeba-button instead of .button 8 @CRYSTALENKA #JAB18 APPROACH& DESIGN& CODE
  • 33. Don’t bloat your JavaScript Write what you need - it’s entirely possible to do it all with just a little vanilla JS. (You don’t need that giant JavaScript framework.) @CRYSTALENKA #JAB18 APPROACH& DESIGN& CODE 9
  • 34. Have CMS-specific stylesheets No matter how hard you try, you will end up needing to make small tweaks for each CMS. Keep this separate from “common” code. @CRYSTALENKA #JAB18 APPROACH& DESIGN& CODE 10
  • 35. It’s a journey, not a destination. You will need to maintain your framework as technology changes, your audience matures, and your knowledge grows. Things will get added and removed over time - enjoy the process. :) 11 @CRYSTALENKA #JAB18 APPROACH& DESIGN& CODE& BONUS
  • 41. AKEEBA IS HAPPY File size didn’t increase. The packaged Akeeba extensions are no larger than they were before, but look a lot better. 2 3 Much faster page rendering. By ditching Bootstrap and jQuery, Akeeba components now load way faster because fewer page redraws. Changes are predictable. Akeeba can make updates to the CSS when they need to, within their own development timeline. 1 @CRYSTALENKA #JAB18
  • 43. THANK YOU! slides will be tweeted @crystalenka