Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Reducing duplication and driving consistency at...
Search
Shaun Bent
November 15, 2014
Technology
1
170
Reducing duplication and driving consistency at the BBC - Front End North 2014
Reducing duplication and driving consistency at the BBC through shared common CSS abstractions.
Shaun Bent
November 15, 2014
Tweet
Share
More Decks by Shaun Bent
See All by Shaun Bent
CSS Trickery at the BBC - 2016 - MMU
shaunbent
2
100
GEL: Laying the Foundation
shaunbent
0
36
Responsive Web Design at the BBC - 2015 - Lancaster University
shaunbent
0
180
Introduction to Responsive Web Design at the BBC - 2014 - Lancaster University
shaunbent
1
110
Other Decks in Technology
See All in Technology
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
dev 補講: プロダクトセキュリティ / Product security overview
wa6sn
0
1.8k
社内で最大の技術的負債のリファクタリングに取り組んだお話し
kidooonn
1
490
マルチモーダル / AI Agent / LLMOps 3つの技術トレンドで理解するLLMの今後の展望
hirosatogamo
27
6.8k
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
5
1.1k
音声×Copilot オンコパの世界
kasada
1
120
Lexical Analysis
shigashiyama
1
140
FOSS4G 2024 Japan コアデイ 一般発表25 PythonでPLATEAUのデータを手軽に扱ってみる
ra0kley
1
140
3次元点群データ「VIRTUAL SHIZUOKA』のオープンデータ化による恩恵と協働の未来/FOSS4G Japan 2024
kazz24s
0
140
【若手エンジニア応援LT会】ソフトウェアを学んできた私がインフラエンジニアを目指した理由
kazushi_ohata
0
120
強いチームと開発生産性
onk
PRO
25
8.3k
【Pycon mini 東海 2024】Google Colaboratoryで試すVLM
kazuhitotakahashi
2
210
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Agile that works and the tools we love
rasmusluckow
327
21k
Fireside Chat
paigeccino
33
3k
Music & Morning Musume
bryan
46
6.2k
Bash Introduction
62gerente
608
210k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
505
140k
How STYLIGHT went responsive
nonsquared
95
5.2k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
The Art of Programming - Codeland 2020
erikaheidi
52
13k
Transcript
Reducing duplication and driving consistency at the BBC Front End
North 15th November 2014
Shaun Bent Front End Developer Specialising in CSS for large
sites Look 12 without this ginger beard! @shaunbent
SPORT
LIVE
None
None
NEWS SPORT LIVE WEATHER SEARCH HOMEPAGE ABOUT THE BBC TRAVEL
MUSIC Bitesize ARTS FOOD NEWSBEAT PROGRAMMES Radio
GEL
Global Experience Language
None
None
None
None
None
None
GEL Responsive Typography
None
Where this all began… Responsive Typography
Bridging the language gap Responsive Typography
None
Trafalgar (.gel-trafalgar) Double Pica (.gel-double-pica) Great Primer (.gel-great-primer) Pica (.gel-pica)
Long Primer (.gel-long-primer) Brevier (.gel-brevier) Minion (.gel-minion) Responsive Typography
SPORT
None
LIVE
None
None
Abstract a standard typography implementation Works out of the box
Pulled into Sport using a package manager Responsive Typography
/** * Trafalgar - typically used for the main page
heading or article heading. */ .#{$gel-namespace}trafalgar, %#{$gel-namespace}trafalgar { @include font-size(20px, 24px); @include rem('letter-spacing', -1px); font-weight: bold; } /** * Group B - Sizes applied are applied at 320px */ @include mq($from: $gel-group-b-breakpoint) { .#{$gel-namespace}trafalgar, %#{$gel-namespace}trafalgar { @include font-size(24px, 28px); } }
NEWS
None
Rebuild from scratch Allow for complete customisation of the typography
values Continues to work out of the box Responsive Typography
// Default GEL typography configuration $gel-type-settings: ( 'trafalgar': ( 'group-a':
( 'font-size': 20px, 'line-height': 24px, '-bold': ( 'font-weight': bold, 'letter-spacing': -1px ) ), 'group-b': ( 'font-size': 24px, 'line-height': 28px ), … ) );
// Burmese GEL typography configuration $gel-type-settings: ( 'trafalgar': ( 'group-a':
( 'font-size': 22px, 'line-height': 30px, '-bold': ( 'font-weight': bold, 'letter-spacing': -1px ) ), 'group-b': ( 'font-size': 26px, 'line-height': 36px ), … ) );
So how are we doing? Responsive Typography
SPORT LIVE
SPORT LIVE
SPORT LIVE SEARCH & HOMEPAGE
GEL as Code
Highly configurable code abstraction of a foundational GEL guideline GEL
as Code
Standalone implementation which can be versioned and used by all
BBC products Encouraging a standardised approach to type Delivering a consistant typographic experience to the audience GEL as Code
Reduced development effort Increasing re-use across the business Ease of
rolling out updates GEL as Code
Where next?
Proof of concept Build more foundations Increase adoption around the
BBC Where next?
Settings Tools Typography Grid Where next?
Settings Tools Typography Grid Where next?
Settings Tools Typography Grid Where next?
Settings Tools Typography Grid Where next?
Make it Open Source Where next?
Al Jones (@itsaljones) Will Bamford (@WebSeed) Joe Walker (@josephwalker) GEL,
Sport & Live Team Credit where credits due!
Thank You