SlideShare a Scribd company logo
Efficient, Error Free
Drupal Development
with JS Build Tools
elevatedthird.comelevatedthird.com
Elevated Third is an independent,
full-service digital marketing agency
based in Denver, CO.
Founded over 10 years ago, our
agency has a single purpose: to
solve marketing and technology
challenges for startups and Fortune
500s alike.
Nick Switzer
Development Director
elevatedthird.com
nswitzer@elevatedthird.com
Tanner Langley
Front End Developer
tlangley@elevatedthird.com
elevatedthird.com
DISCLAIMER
Error free refers to getting new
members of your team up and
running with the same tools. We
won’t be focusing on testing in any
form.
elevatedthird.com
OUR DEPENDENCY MANAGEMENT JOURNEY
Dependency management from ad-
hoc Ruby to Javascript
elevatedthird.comelevatedthird.com
DISCOVERING NEW FRONT END TOOLS
● We found and incorporated a lot of Ruby-based tools
like Sass (and it’s many extensions) for theming, and
Capistrano for deployment
● They worked great in the short term, but current
projects grew, new projects started and updates were
released; long-term maintenance and dependency
management quickly became problematic
● We realized we needed an automated, scalable solution
elevatedthird.comelevatedthird.com
RUBY TOOLS
● After some research and testing, we settled on RVM and
Bundler to manage the required dependencies of our
Ruby tools
● Problem solved! We had a versioned, easily repeatable
way to make sure any developer who needed to work on
a project with Ruby dependencies could be up and
running in a matter of minutes
● After 2+ successful years of using those tools, we
decided to revisit our needs
elevatedthird.comelevatedthird.com
● A unified system to add/compile javascript and sass,
dev tools, libraries and other front end
dependencies
RE-EVALUATING: OUR REQUIREMENTS
● Automated frontend workflows
● Flexibility to try new things
● Fast, simple and consistent dev onboarding
● Faster SASS compile times
● Improve Drupal CSS/JS compression
● Common Sass/JS structures and workflows
elevatedthird.comelevatedthird.com
JAVASCRIPT TOOLS
● Leverage a language everyone on the team was already
very familiar with and using on a daily basis
● Incorporate something that will have value outside of
Drupal use
elevatedthird.com
TOOLS
THE
elevatedthird.comelevatedthird.com
THE LANGUAGE: NODE
● JavaScript on the server
● Can be used for full web applications but we’re just using it for
the developer tools
● Node vs io.js
● Node 4.0 released
● Use NVM to upgrade
elevatedthird.comelevatedthird.com
PACKAGE MANAGEMENT: NPM
● Node's package manager
● Manage dependencies via JSON
● Easily manage from command line
● Large library of node packages
elevatedthird.comelevatedthird.com
NPM WORKFLOW
1. Start a Project
2. Add New Package
3. Install All Dependencies For Project
Creates a package.json file
Downloads package and saves it to package.json
Downloads all dependencies listed in package.json
elevatedthird.com
EXAMPLE PACKAGE.JSON
elevatedthird.comelevatedthird.com
TASK RUNNER: GULP
● Plain JS over configuration
● Faster than Grunt
● Large library of plugins
( not as large as Grunt )
● Quickly increasing in popularity
● Automates common tasks
elevatedthird.comelevatedthird.com
HOW GULP WORKS
● Plugins ( each plugin does one thing well )
● Streams
● Tasks
elevatedthird.com
EXAMPLE
GULPFILE.JS
elevatedthird.comelevatedthird.com
FRONTEND PACKAGE MANAGEMENT: BOWER
● Similar to NPM but only handles
frontend dependencies
● Quickly download/include/remove
frontend dependencies in your
project
● Only includes one of each
dependency for all packages
elevatedthird.comelevatedthird.com
BOWER WORKFLOW
1. Start a Project
2. Add New Package
3. Install All Dependencies For Project
elevatedthird.com
INTEGRATION
DRUPAL
elevatedthird.comelevatedthird.com
DRUPAL + JS BUILD TOOLS
1. Only included as part of the theme directory
● Intended for theming use, large chunks of custom functionality
should be part of a custom module
● Better organization for development, better performance
for production
2. Adds an automation layer where Drupal
doesn’t have one OOTB
elevatedthird.comelevatedthird.com
DRUPAL + JS BUILD TOOLS
● Improve minification and concatenation
● More efficient workflows with watch and sourcemaps
3. Should augment, not replace, existing Drupal
functionality
4. Bower vs. Libraries API
● Does your Drupal installation need to be aware of the plugin you’
re adding?
● Bower dependencies can be concatenated with theme assets
elevatedthird.com
THEME ASSET STRUCTURE
● Treat all front end
assets in a similar way
● Focus on semantically-
named files
● Compile to a single,
optimized, production-
ready asset
elevatedthird.comelevatedthird.com
TRANSFORMATIONS
● Concatenate
● Sourcemaps
● Minify
● Livereload
JS
● Concatenate
● Sourcemaps
● Minify
● Livereload
● Compile Sass
● Add autoprefixer
Sass
elevatedthird.comelevatedthird.com
PULLING IT TOGETHER
● Use drupal_add_js() and
drupal_add_css() to add assets
● Use conf variables in settings.php
for added control
elevatedthird.com
LIVE
DEMO
elevatedthird.comelevatedthird.com
Q&A
TIME FOR

More Related Content

What's hot (20)

PDF
QA on drupal projects
La Drupalera
 
PDF
GlotPress aka translate.wordpress.org
Marko Heijnen
 
PPTX
BarCamp CR 2014 - Python para web
barcampcr
 
PDF
Web development meetingup
PiTechnologies
 
PPTX
JavaScript - Web Development Fundaments Part 2 - DeepDive Learning Academy
Parag Mujumdar
 
ODP
How I built web services in CakePHP
David Yell
 
PPTX
Dimpact wim bumpy road of building reusable platform for municipalities from...
DrupalCamp Kyiv
 
ODP
Introduction of CMS Technology to the People of Tanay, Rizal Philippines
Eleison Cruz
 
PPTX
BelTech 2017 - Building Quality in the Browser
Eamonn Boyle
 
PDF
Gradle build automation tool
Ioan Eugen Stan
 
PDF
The Frontend Developer Landscape Explained and the Rise of Advanced Frontend ...
Prasid Pathak
 
ODP
PHP Berkshire October 2015
David Yell
 
PDF
Going Global with WordPress Multilingual (WordCamp Denpasar 2016)
Dat Hoang
 
ODP
The Full Stack Web Development
Sam Dias
 
PPTX
Learn WordPress - Live Session 1 Slides
Ahmed Mohammed Nagdy
 
PDF
[Srijan Wednesday Webinar] How to Run Stateless and Stateful Services on K8S ...
Srijan Technologies
 
PDF
Frameworks for Web Development
dtmodern
 
PDF
Modern web applications
Andrea Tino
 
PDF
Seaside Web 2.0
ESUG
 
PPTX
Q6 what have you learnt about technologies
Alex Drury
 
QA on drupal projects
La Drupalera
 
GlotPress aka translate.wordpress.org
Marko Heijnen
 
BarCamp CR 2014 - Python para web
barcampcr
 
Web development meetingup
PiTechnologies
 
JavaScript - Web Development Fundaments Part 2 - DeepDive Learning Academy
Parag Mujumdar
 
How I built web services in CakePHP
David Yell
 
Dimpact wim bumpy road of building reusable platform for municipalities from...
DrupalCamp Kyiv
 
Introduction of CMS Technology to the People of Tanay, Rizal Philippines
Eleison Cruz
 
BelTech 2017 - Building Quality in the Browser
Eamonn Boyle
 
Gradle build automation tool
Ioan Eugen Stan
 
The Frontend Developer Landscape Explained and the Rise of Advanced Frontend ...
Prasid Pathak
 
PHP Berkshire October 2015
David Yell
 
Going Global with WordPress Multilingual (WordCamp Denpasar 2016)
Dat Hoang
 
The Full Stack Web Development
Sam Dias
 
Learn WordPress - Live Session 1 Slides
Ahmed Mohammed Nagdy
 
[Srijan Wednesday Webinar] How to Run Stateless and Stateful Services on K8S ...
Srijan Technologies
 
Frameworks for Web Development
dtmodern
 
Modern web applications
Andrea Tino
 
Seaside Web 2.0
ESUG
 
Q6 what have you learnt about technologies
Alex Drury
 

Viewers also liked (19)

PDF
Front End Workflow
Matt Bailey
 
PDF
Workflow automation for Front-end web applications
Mayank Patel
 
PDF
Use Content to Enhance Your Commerce Experience
Acquia
 
PDF
Top Reasons Your Website Should Use Drupal 8
Acquia
 
PPTX
Drupal 8 Every Day: An Intro to Developing With Drupal 8
Acquia
 
PPTX
Drupal 101: Tips and Tricks for Troubleshooting Drupal
Acquia
 
PDF
Decoupled Drupal: What This Means for Developers
Acquia
 
DOCX
Kyle Bowers Resume 2016
Kyle Bowers
 
PDF
05a fede mma forum colombia
Mobile Marketing Association
 
PPT
запорізька січ
Світлана Збарах
 
DOC
Aleksandar Naskovski cv
Aleksandar Naskovski
 
PPTX
UTILIZARLO PARA TRAFFICMONSOON
Josue Tejada
 
PPT
IoTTracker
Madan Parameswaran
 
PPTX
Question 2
paigecrossland
 
PDF
E book mma_eng_short
Mobile Marketing Association
 
DOCX
Davina CV 32015
Davine Diesel
 
PDF
Letter of Rec - Larry Boyle
Suzanne Lee
 
PDF
Business Benefits of Drupal 8: Empower Digital Innovation with the Newest Ver...
Acquia
 
PPTX
Концепция 400 дней ФАУ ФЦЦС
Maxim Cadenbo
 
Front End Workflow
Matt Bailey
 
Workflow automation for Front-end web applications
Mayank Patel
 
Use Content to Enhance Your Commerce Experience
Acquia
 
Top Reasons Your Website Should Use Drupal 8
Acquia
 
Drupal 8 Every Day: An Intro to Developing With Drupal 8
Acquia
 
Drupal 101: Tips and Tricks for Troubleshooting Drupal
Acquia
 
Decoupled Drupal: What This Means for Developers
Acquia
 
Kyle Bowers Resume 2016
Kyle Bowers
 
05a fede mma forum colombia
Mobile Marketing Association
 
запорізька січ
Світлана Збарах
 
Aleksandar Naskovski cv
Aleksandar Naskovski
 
UTILIZARLO PARA TRAFFICMONSOON
Josue Tejada
 
IoTTracker
Madan Parameswaran
 
Question 2
paigecrossland
 
E book mma_eng_short
Mobile Marketing Association
 
Davina CV 32015
Davine Diesel
 
Letter of Rec - Larry Boyle
Suzanne Lee
 
Business Benefits of Drupal 8: Empower Digital Innovation with the Newest Ver...
Acquia
 
Концепция 400 дней ФАУ ФЦЦС
Maxim Cadenbo
 
Ad

More from Acquia (20)

PDF
Acquia_Adcetera Webinar_Marketing Automation.pdf
Acquia
 
PDF
Acquia Webinar Deck - 9_13 .pdf
Acquia
 
PDF
Taking Your Multi-Site Management at Scale to the Next Level
Acquia
 
PDF
CDP for Retail Webinar with Appnovation - Q2 2022.pdf
Acquia
 
PDF
May Partner Bootcamp 2022
Acquia
 
PDF
April Partner Bootcamp 2022
Acquia
 
PDF
How to Unify Brand Experience: A Hootsuite Story
Acquia
 
PDF
Using Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CX
Acquia
 
PDF
Improve Code Quality and Time to Market: 100% Cloud-Based Development Workflow
Acquia
 
PDF
September Partner Bootcamp
Acquia
 
PDF
August partner bootcamp
Acquia
 
PDF
July 2021 Partner Bootcamp
Acquia
 
PDF
May Partner Bootcamp
Acquia
 
PDF
DRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASY
Acquia
 
PDF
Work While You Sleep: The CMO’s Guide to a 24/7/365 Lead Machine
Acquia
 
PDF
Acquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B Leads
Acquia
 
PDF
April partner bootcamp deck cookieless future
Acquia
 
PDF
How to enhance cx through personalised, automated solutions
Acquia
 
PDF
DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...
Acquia
 
PDF
Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021
Acquia
 
Acquia_Adcetera Webinar_Marketing Automation.pdf
Acquia
 
Acquia Webinar Deck - 9_13 .pdf
Acquia
 
Taking Your Multi-Site Management at Scale to the Next Level
Acquia
 
CDP for Retail Webinar with Appnovation - Q2 2022.pdf
Acquia
 
May Partner Bootcamp 2022
Acquia
 
April Partner Bootcamp 2022
Acquia
 
How to Unify Brand Experience: A Hootsuite Story
Acquia
 
Using Personas to Guide DAM Results: How Life Time Pumped Up Their UX and CX
Acquia
 
Improve Code Quality and Time to Market: 100% Cloud-Based Development Workflow
Acquia
 
September Partner Bootcamp
Acquia
 
August partner bootcamp
Acquia
 
July 2021 Partner Bootcamp
Acquia
 
May Partner Bootcamp
Acquia
 
DRUPAL 7 END OF LIFE IS NEAR - MIGRATE TO DRUPAL 9 FAST AND EASY
Acquia
 
Work While You Sleep: The CMO’s Guide to a 24/7/365 Lead Machine
Acquia
 
Acquia webinar: Leveraging Drupal to Bury Your Sales Team In B2B Leads
Acquia
 
April partner bootcamp deck cookieless future
Acquia
 
How to enhance cx through personalised, automated solutions
Acquia
 
DRUPAL MIGRATIONS AND DRUPAL 9 INNOVATION: HOW PAC-12 DELIVERED DIGITALLY FOR...
Acquia
 
Customer Experience (CX): 3 Key Factors Shaping CX Redesign in 2021
Acquia
 
Ad

Recently uploaded (20)

PDF
UiPath DevConnect 2025: Agentic Automation Community User Group Meeting
DianaGray10
 
PDF
NLJUG Speaker academy 2025 - first session
Bert Jan Schrijver
 
PDF
Future-Proof or Fall Behind? 10 Tech Trends You Can’t Afford to Ignore in 2025
DIGITALCONFEX
 
PDF
Transcript: Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PPTX
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
PDF
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
PDF
What’s my job again? Slides from Mark Simos talk at 2025 Tampa BSides
Mark Simos
 
PPTX
MuleSoft MCP Support (Model Context Protocol) and Use Case Demo
shyamraj55
 
PPT
Ericsson LTE presentation SEMINAR 2010.ppt
npat3
 
PPTX
Seamless Tech Experiences Showcasing Cross-Platform App Design.pptx
presentifyai
 
PPTX
Designing_the_Future_AI_Driven_Product_Experiences_Across_Devices.pptx
presentifyai
 
PDF
AI Agents in the Cloud: The Rise of Agentic Cloud Architecture
Lilly Gracia
 
PDF
NASA A Researcher’s Guide to International Space Station : Physical Sciences ...
Dr. PANKAJ DHUSSA
 
PPTX
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
PDF
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
PDF
How do you fast track Agentic automation use cases discovery?
DianaGray10
 
PPTX
Agentforce World Tour Toronto '25 - Supercharge MuleSoft Development with Mod...
Alexandra N. Martinez
 
UiPath DevConnect 2025: Agentic Automation Community User Group Meeting
DianaGray10
 
NLJUG Speaker academy 2025 - first session
Bert Jan Schrijver
 
Future-Proof or Fall Behind? 10 Tech Trends You Can’t Afford to Ignore in 2025
DIGITALCONFEX
 
Transcript: Book industry state of the nation 2025 - Tech Forum 2025
BookNet Canada
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
What’s my job again? Slides from Mark Simos talk at 2025 Tampa BSides
Mark Simos
 
MuleSoft MCP Support (Model Context Protocol) and Use Case Demo
shyamraj55
 
Ericsson LTE presentation SEMINAR 2010.ppt
npat3
 
Seamless Tech Experiences Showcasing Cross-Platform App Design.pptx
presentifyai
 
Designing_the_Future_AI_Driven_Product_Experiences_Across_Devices.pptx
presentifyai
 
AI Agents in the Cloud: The Rise of Agentic Cloud Architecture
Lilly Gracia
 
NASA A Researcher’s Guide to International Space Station : Physical Sciences ...
Dr. PANKAJ DHUSSA
 
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
How do you fast track Agentic automation use cases discovery?
DianaGray10
 
Agentforce World Tour Toronto '25 - Supercharge MuleSoft Development with Mod...
Alexandra N. Martinez
 

Efficient, Error-Free Drupal Development with JS Build Tools