SlideShare uma empresa Scribd logo
1 de 38
Baixar para ler offline
Mike Bifulco
Open edX Conference 2016
TUTORIAL
THEME CUSTOMIZATION USING EDX’S
NEW COMPREHENSIVE THEMING
I’m Mike.
I build www.thgymnasium.com.
Not an OpenEdX expert (but dangerous).
Not a python expert (yet).
Completely normal amounts of self-esteem.
Hello.
Advanced Rapid Prototyping with Axure
DON’T FORGET THE
SHAMELESS PLUG
livecoding.tv/mbifulco
1. Open edX
2. Devstack on vagrant
3. Dogwood.3
4. We are all on the same team
5. You are smarter than me
Assumptions For This Session
1. State of the Union (as I see it)
2. Talk a bit about theming on Open edX
• Stanford theming
• Comprehensive theming
3. Commiserate
4. Experiment
What We’ll Do Today
WRITE THESE THINGS DOWN
RESOURCES FOR HELP
1. #theming (http://bitly.com/openedx)
2. Edx-code Google Group (groups.google.com/forum/#!forum/edx-code)
3. Readthedocs (edx.readthedocs.io)
4. https://openedx.atlassian.net/wiki/display/SOL/Comprehensive+Theming
5. edX on GitHub (http://github.com/edx/edx-platform/)
6. edX Pattern Library (http://ux.edx.org )
Where To Go When You Need Help
BUT FIRST
What the heck is theming?
IT ALL STARTED
WITH STANFORD.
1. Searches your theme directory for matching template files
2. Renders your templates instead of defaults in /[theme]/templates/* if they
exist
3. Combines your custom SASS with existing SASS
What It Does:
Stanford theming
THEN THINGS GOT
A BIT
COMPLICATED
COMPREHENSIVE
THEMING
1. Searches your theme directory for matching template files
2. Renders your templates instead of defaults in /[theme]/lms/templates/* if they
exist
3. Combines your custom SASS with existing SASS
What It Does:
1. Searches your theme directory for
matching template files
2. Renders your templates instead of
defaults in /[theme]/templates/* if
they exist
3. Combines your custom SASS with
existing SASS
Stanford Comprehensive
1. Searches your theme directory for
matching template files
2. Renders your templates instead of
defaults in /[theme]/lms/
templates/* if they exist
3. Combines your custom SASS with
existing SASS
I PROMISE 

THIS IS A GOOD
THING
THERE ARE SOME
DIFFERENCES
1. Directory structure is slightly changed
2. Relative paths are interpreted differently
3. SASS story slightly changed
4. Comprehensive theming enabled through different feature flags
Differences
SO, HOW DOES IT WORK?
LET’S DO THE THING
Setting up devstack for theming
THEME AT YOUR
OWN RISK
This part of the slide is merely a distraction
1. Stand up devstack
2. Clone [or create] your theme repo
3. Configure devstack to point to your theme
4. Run devstack, debug, slam fists on keyboard, etc.
5. $$$
Steps To Have Had Themed Comprehensively
Stand up Devstack
curl -L https://raw.githubusercontent.com/edx/configuration/master/vagrant/release/
devstack/Vagrantfile > Vagrantfile
vagrant plugin install vagrant-vbguest
vagrant up
vagrant ssh
1. edxapp@:
• paver update_assets lms --settings=devstack
• paver devstack lms
• paver devstack lms --fast
2. vagrant@:
• sudo rm -rf /tmp/*
Useful Commands
https://github.com/edx/edx-platform/pull/12620
THERE ARE MORE CHANGES COMING
edx-platform PR #12620
WL-416: Multi-site comprehensive theming
THAT’S ABOUT IT
Any questions?
IT’S
DEMO TIME

Mais conteúdo relacionado

Destaque

Fonctionnalités Open edX - LMS et CMS
Fonctionnalités Open edX - LMS et CMSFonctionnalités Open edX - LMS et CMS
Fonctionnalités Open edX - LMS et CMSYvain Demollière
 
Bedjango talk about Git & GitHub
Bedjango talk about Git & GitHubBedjango talk about Git & GitHub
Bedjango talk about Git & GitHubBeDjango
 
eMadrid 2015 27 01(UC3M) Michael Amigot - Digital badges and latest innovatio...
eMadrid 2015 27 01(UC3M) Michael Amigot - Digital badges and latest innovatio...eMadrid 2015 27 01(UC3M) Michael Amigot - Digital badges and latest innovatio...
eMadrid 2015 27 01(UC3M) Michael Amigot - Digital badges and latest innovatio...eMadrid network
 
Increasing content reuse and user engagement on Open edX
Increasing content reuse and user engagement on Open edXIncreasing content reuse and user engagement on Open edX
Increasing content reuse and user engagement on Open edXJane Park
 
What's new: Open edX Dogwood release
What's new: Open edX Dogwood releaseWhat's new: Open edX Dogwood release
What's new: Open edX Dogwood releaseAppsembler
 
Projet MOOC - Formation - Organisation du tutorat et de l'accompagnement
Projet MOOC - Formation - Organisation du tutorat et de l'accompagnementProjet MOOC - Formation - Organisation du tutorat et de l'accompagnement
Projet MOOC - Formation - Organisation du tutorat et de l'accompagnementLeslie HUIN
 
Presentación "Análisis: Open edX vs. Moodle"
Presentación "Análisis: Open edX vs. Moodle"Presentación "Análisis: Open edX vs. Moodle"
Presentación "Análisis: Open edX vs. Moodle"INTEF
 
Eucalyptus Release of Open edX
Eucalyptus Release of Open edXEucalyptus Release of Open edX
Eucalyptus Release of Open edXAppsembler
 
Les MOOC - Education 2.0
Les MOOC - Education 2.0Les MOOC - Education 2.0
Les MOOC - Education 2.0Eric LEGER
 
Les LMS
Les LMSLes LMS
Les LMSaligot
 
Open edX Conference 2016 Review
Open edX Conference 2016 ReviewOpen edX Conference 2016 Review
Open edX Conference 2016 ReviewAppsembler
 
Former à l'ère numérique
Former à l'ère numériqueFormer à l'ère numérique
Former à l'ère numériqueFFFOD
 

Destaque (15)

Fonctionnalités Open edX - LMS et CMS
Fonctionnalités Open edX - LMS et CMSFonctionnalités Open edX - LMS et CMS
Fonctionnalités Open edX - LMS et CMS
 
#OpenEd13 - Pushing EdX to be Open
#OpenEd13 - Pushing EdX to be Open#OpenEd13 - Pushing EdX to be Open
#OpenEd13 - Pushing EdX to be Open
 
Formation continue mooc
Formation continue moocFormation continue mooc
Formation continue mooc
 
Bedjango talk about Git & GitHub
Bedjango talk about Git & GitHubBedjango talk about Git & GitHub
Bedjango talk about Git & GitHub
 
eMadrid 2015 27 01(UC3M) Michael Amigot - Digital badges and latest innovatio...
eMadrid 2015 27 01(UC3M) Michael Amigot - Digital badges and latest innovatio...eMadrid 2015 27 01(UC3M) Michael Amigot - Digital badges and latest innovatio...
eMadrid 2015 27 01(UC3M) Michael Amigot - Digital badges and latest innovatio...
 
Increasing content reuse and user engagement on Open edX
Increasing content reuse and user engagement on Open edXIncreasing content reuse and user engagement on Open edX
Increasing content reuse and user engagement on Open edX
 
What's new: Open edX Dogwood release
What's new: Open edX Dogwood releaseWhat's new: Open edX Dogwood release
What's new: Open edX Dogwood release
 
Projet MOOC - Formation - Organisation du tutorat et de l'accompagnement
Projet MOOC - Formation - Organisation du tutorat et de l'accompagnementProjet MOOC - Formation - Organisation du tutorat et de l'accompagnement
Projet MOOC - Formation - Organisation du tutorat et de l'accompagnement
 
Presentación "Análisis: Open edX vs. Moodle"
Presentación "Análisis: Open edX vs. Moodle"Presentación "Análisis: Open edX vs. Moodle"
Presentación "Análisis: Open edX vs. Moodle"
 
Eucalyptus Release of Open edX
Eucalyptus Release of Open edXEucalyptus Release of Open edX
Eucalyptus Release of Open edX
 
Les MOOC - Education 2.0
Les MOOC - Education 2.0Les MOOC - Education 2.0
Les MOOC - Education 2.0
 
Les LMS
Les LMSLes LMS
Les LMS
 
Open edX Conference 2016 Review
Open edX Conference 2016 ReviewOpen edX Conference 2016 Review
Open edX Conference 2016 Review
 
Former à l'ère numérique
Former à l'ère numériqueFormer à l'ère numérique
Former à l'ère numérique
 
Evaluacion Por Competencias
Evaluacion Por CompetenciasEvaluacion Por Competencias
Evaluacion Por Competencias
 

Semelhante a EdX Comprehensive Theming Tutorial

Drupal Camp Manila 2014 - Theming with Zen
Drupal Camp Manila 2014 - Theming with ZenDrupal Camp Manila 2014 - Theming with Zen
Drupal Camp Manila 2014 - Theming with ZenJapo Domingo
 
Drupal theming 101
Drupal theming 101Drupal theming 101
Drupal theming 101Exove
 
Scalable CSS You and Your Back-End Coders Can Love - @CSSConf Asia 2014
Scalable CSS You and Your Back-End Coders Can Love - @CSSConf Asia 2014Scalable CSS You and Your Back-End Coders Can Love - @CSSConf Asia 2014
Scalable CSS You and Your Back-End Coders Can Love - @CSSConf Asia 2014Christian Lilley
 
Levelling up your WordPress development workflow
Levelling up your WordPress development workflowLevelling up your WordPress development workflow
Levelling up your WordPress development workflowdaraskolnick
 
BathCamp #32 - CMS Smackdown! - Plone
BathCamp #32 - CMS Smackdown! - PloneBathCamp #32 - CMS Smackdown! - Plone
BathCamp #32 - CMS Smackdown! - PloneMatt Hamilton
 
Modeling Rich Narrative Content
Modeling Rich Narrative ContentModeling Rich Narrative Content
Modeling Rich Narrative ContentJeff Eaton
 
2013 Twin Cities Drupal Camp - No CSS Needed: A Sitebuilders' Guide to Theming
2013 Twin Cities Drupal Camp - No CSS Needed: A Sitebuilders' Guide to Theming2013 Twin Cities Drupal Camp - No CSS Needed: A Sitebuilders' Guide to Theming
2013 Twin Cities Drupal Camp - No CSS Needed: A Sitebuilders' Guide to ThemingTara King
 
Neo4j Stored Procedure Training Part 1
Neo4j Stored Procedure Training Part 1Neo4j Stored Procedure Training Part 1
Neo4j Stored Procedure Training Part 1Max De Marzi
 
Child Theme Frameworks
Child Theme FrameworksChild Theme Frameworks
Child Theme Frameworksryngrn
 
Minimalist Theming: How to Build a Lean, Mean Drupal 8 Theme
Minimalist Theming: How to Build a Lean, Mean Drupal 8 ThemeMinimalist Theming: How to Build a Lean, Mean Drupal 8 Theme
Minimalist Theming: How to Build a Lean, Mean Drupal 8 ThemeSuzanne Dergacheva
 
Adobe DITA World: Templates, DITA, and FrameMaker 2015
Adobe DITA World: Templates, DITA, and FrameMaker 2015Adobe DITA World: Templates, DITA, and FrameMaker 2015
Adobe DITA World: Templates, DITA, and FrameMaker 2015Publishing Smarter
 
Cis336 (introduction to database w lab – oracle) complete class
Cis336 (introduction to database w lab – oracle) complete classCis336 (introduction to database w lab – oracle) complete class
Cis336 (introduction to database w lab – oracle) complete classWalter Bartlett
 
Front-end developers - build Magnolia sites faster
Front-end developers - build Magnolia sites fasterFront-end developers - build Magnolia sites faster
Front-end developers - build Magnolia sites fasterMagnolia
 
Cis336 (introduction to database w lab oracle) complete class
Cis336 (introduction to database w lab   oracle) complete classCis336 (introduction to database w lab   oracle) complete class
Cis336 (introduction to database w lab oracle) complete classbestwriter
 
WordPress Child Theme Workshop
WordPress Child Theme WorkshopWordPress Child Theme Workshop
WordPress Child Theme WorkshopCarme Mias
 
TEI ODD based development
TEI ODD based developmentTEI ODD based development
TEI ODD based developmentEduard Drenth
 

Semelhante a EdX Comprehensive Theming Tutorial (20)

Evaluating Base Themes
Evaluating Base ThemesEvaluating Base Themes
Evaluating Base Themes
 
Drupal Camp Manila 2014 - Theming with Zen
Drupal Camp Manila 2014 - Theming with ZenDrupal Camp Manila 2014 - Theming with Zen
Drupal Camp Manila 2014 - Theming with Zen
 
Drupal theming 101
Drupal theming 101Drupal theming 101
Drupal theming 101
 
Scalable CSS You and Your Back-End Coders Can Love - @CSSConf Asia 2014
Scalable CSS You and Your Back-End Coders Can Love - @CSSConf Asia 2014Scalable CSS You and Your Back-End Coders Can Love - @CSSConf Asia 2014
Scalable CSS You and Your Back-End Coders Can Love - @CSSConf Asia 2014
 
Levelling up your WordPress development workflow
Levelling up your WordPress development workflowLevelling up your WordPress development workflow
Levelling up your WordPress development workflow
 
BathCamp #32 - CMS Smackdown! - Plone
BathCamp #32 - CMS Smackdown! - PloneBathCamp #32 - CMS Smackdown! - Plone
BathCamp #32 - CMS Smackdown! - Plone
 
Modeling Rich Narrative Content
Modeling Rich Narrative ContentModeling Rich Narrative Content
Modeling Rich Narrative Content
 
2013 Twin Cities Drupal Camp - No CSS Needed: A Sitebuilders' Guide to Theming
2013 Twin Cities Drupal Camp - No CSS Needed: A Sitebuilders' Guide to Theming2013 Twin Cities Drupal Camp - No CSS Needed: A Sitebuilders' Guide to Theming
2013 Twin Cities Drupal Camp - No CSS Needed: A Sitebuilders' Guide to Theming
 
Neo4j Stored Procedure Training Part 1
Neo4j Stored Procedure Training Part 1Neo4j Stored Procedure Training Part 1
Neo4j Stored Procedure Training Part 1
 
Child Theme Frameworks
Child Theme FrameworksChild Theme Frameworks
Child Theme Frameworks
 
Minimalist Theming: How to Build a Lean, Mean Drupal 8 Theme
Minimalist Theming: How to Build a Lean, Mean Drupal 8 ThemeMinimalist Theming: How to Build a Lean, Mean Drupal 8 Theme
Minimalist Theming: How to Build a Lean, Mean Drupal 8 Theme
 
Adobe DITA World: Templates, DITA, and FrameMaker 2015
Adobe DITA World: Templates, DITA, and FrameMaker 2015Adobe DITA World: Templates, DITA, and FrameMaker 2015
Adobe DITA World: Templates, DITA, and FrameMaker 2015
 
Cis336 (introduction to database w lab – oracle) complete class
Cis336 (introduction to database w lab – oracle) complete classCis336 (introduction to database w lab – oracle) complete class
Cis336 (introduction to database w lab – oracle) complete class
 
Front-end developers - build Magnolia sites faster
Front-end developers - build Magnolia sites fasterFront-end developers - build Magnolia sites faster
Front-end developers - build Magnolia sites faster
 
Cis336 (introduction to database w lab oracle) complete class
Cis336 (introduction to database w lab   oracle) complete classCis336 (introduction to database w lab   oracle) complete class
Cis336 (introduction to database w lab oracle) complete class
 
WordPress Child Theme Workshop
WordPress Child Theme WorkshopWordPress Child Theme Workshop
WordPress Child Theme Workshop
 
TEI ODD based development
TEI ODD based developmentTEI ODD based development
TEI ODD based development
 
Sample Absolute beginners guide
Sample Absolute beginners guideSample Absolute beginners guide
Sample Absolute beginners guide
 
How java works
How java worksHow java works
How java works
 
How java works
How java worksHow java works
How java works
 

Último

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
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
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
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
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
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 

Último (20)

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
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
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
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
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
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 

EdX Comprehensive Theming Tutorial

  • 1. Mike Bifulco Open edX Conference 2016 TUTORIAL THEME CUSTOMIZATION USING EDX’S NEW COMPREHENSIVE THEMING
  • 2. I’m Mike. I build www.thgymnasium.com. Not an OpenEdX expert (but dangerous). Not a python expert (yet). Completely normal amounts of self-esteem. Hello.
  • 3. Advanced Rapid Prototyping with Axure DON’T FORGET THE SHAMELESS PLUG livecoding.tv/mbifulco
  • 4. 1. Open edX 2. Devstack on vagrant 3. Dogwood.3 4. We are all on the same team 5. You are smarter than me Assumptions For This Session
  • 5. 1. State of the Union (as I see it) 2. Talk a bit about theming on Open edX • Stanford theming • Comprehensive theming 3. Commiserate 4. Experiment What We’ll Do Today
  • 6. WRITE THESE THINGS DOWN RESOURCES FOR HELP
  • 7. 1. #theming (http://bitly.com/openedx) 2. Edx-code Google Group (groups.google.com/forum/#!forum/edx-code) 3. Readthedocs (edx.readthedocs.io) 4. https://openedx.atlassian.net/wiki/display/SOL/Comprehensive+Theming 5. edX on GitHub (http://github.com/edx/edx-platform/) 6. edX Pattern Library (http://ux.edx.org ) Where To Go When You Need Help
  • 8. BUT FIRST What the heck is theming?
  • 10. 1. Searches your theme directory for matching template files 2. Renders your templates instead of defaults in /[theme]/templates/* if they exist 3. Combines your custom SASS with existing SASS What It Does:
  • 12. THEN THINGS GOT A BIT COMPLICATED
  • 14. 1. Searches your theme directory for matching template files 2. Renders your templates instead of defaults in /[theme]/lms/templates/* if they exist 3. Combines your custom SASS with existing SASS What It Does:
  • 15. 1. Searches your theme directory for matching template files 2. Renders your templates instead of defaults in /[theme]/templates/* if they exist 3. Combines your custom SASS with existing SASS Stanford Comprehensive 1. Searches your theme directory for matching template files 2. Renders your templates instead of defaults in /[theme]/lms/ templates/* if they exist 3. Combines your custom SASS with existing SASS
  • 16.
  • 17. I PROMISE 
 THIS IS A GOOD THING
  • 19. 1. Directory structure is slightly changed 2. Relative paths are interpreted differently 3. SASS story slightly changed 4. Comprehensive theming enabled through different feature flags Differences
  • 20. SO, HOW DOES IT WORK?
  • 21.
  • 22. LET’S DO THE THING Setting up devstack for theming
  • 23.
  • 25.
  • 26.
  • 27. This part of the slide is merely a distraction 1. Stand up devstack 2. Clone [or create] your theme repo 3. Configure devstack to point to your theme 4. Run devstack, debug, slam fists on keyboard, etc. 5. $$$ Steps To Have Had Themed Comprehensively
  • 28. Stand up Devstack curl -L https://raw.githubusercontent.com/edx/configuration/master/vagrant/release/ devstack/Vagrantfile > Vagrantfile vagrant plugin install vagrant-vbguest vagrant up vagrant ssh
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34. 1. edxapp@: • paver update_assets lms --settings=devstack • paver devstack lms • paver devstack lms --fast 2. vagrant@: • sudo rm -rf /tmp/* Useful Commands
  • 35.
  • 36. https://github.com/edx/edx-platform/pull/12620 THERE ARE MORE CHANGES COMING edx-platform PR #12620 WL-416: Multi-site comprehensive theming
  • 37. THAT’S ABOUT IT Any questions?