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
180
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
110
GEL: Laying the Foundation
shaunbent
0
41
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
120
Other Decks in Technology
See All in Technology
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
6.4k
Amazon Bedrock AgentCore でプロモーション用動画生成エージェントを開発する
nasuvitz
6
380
EKS Pod Identity における推移的な session tags
z63d
1
200
datadog-distribution-of-opentelemetry-collector-intro
tetsuya28
0
240
Claude Code x Androidアプリ 開発
kgmyshin
1
530
あとはAIに任せて人間は自由に生きる
kentaro
3
1.1k
[OCI Skill Mapping] AWSユーザーのためのOCI(2025年8月20日開催)
oracle4engineer
PRO
2
120
信頼できる開発プラットフォームをどう作るか?-Governance as Codeと継続的監視/フィードバックが導くPlatform Engineeringの進め方
yuriemori
1
420
AIエージェントの開発に必須な「コンテキスト・エンジニアリング」とは何か──プロンプト・エンジニアリングとの違いを手がかりに考える
masayamoriofficial
0
310
ABEMAにおける 生成AI活用の現在地 / The Current Status of Generative AI at ABEMA
dekatotoro
0
620
Delegate authentication and a lot more to Keycloak with OpenID Connect
ahus1
0
240
LLMエージェント時代に適応した開発フロー
hiragram
1
370
Featured
See All Featured
Typedesign – Prime Four
hannesfritz
42
2.8k
Balancing Empowerment & Direction
lara
2
580
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
[RailsConf 2023] Rails as a piece of cake
palkan
56
5.8k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Gamification - CAS2011
davidbonilla
81
5.4k
Embracing the Ebb and Flow
colly
87
4.8k
Navigating Team Friction
lara
188
15k
The Cult of Friendly URLs
andyhume
79
6.5k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
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