SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Yahoo! Mojito




                                                                                                                          GauravVaish
                                                                                                        Principal Engineer, Yahoo!


Copyright © 2012 Yahoo! All rights reserved. No reproduction or distribution allowed without express written permission
Background

The Problem:
 Developers do not have a method for delivering high quality digital media experiences
  to all popular consumer devices, without having to create applications specific to each
  device, which is slow and expensive.
 Current available technologies that try to solve for this problem are proprietary, locking
  developers to vendors.




                     The Solution: Yahoo! Cocktails
Yahoo! Cocktails
 “Cocktails” is a Javascript-based on-line/off-line, multi-device, cloud-ready, mobile
  development platform made up of “Mojito,” a JavaScript MVC framework and
  “Manhattan,” a cloud-based hosted environment, that Yahoo! announced in November
  2011.
 Cocktails, created by Yahoo!, leverages and evolves open web standard
  technologies, including HTML5, CSS3, JavaScript and Node.JS.
 Cocktails enables the development of hybrid applications, a new class of app that is
  cross-platform yet offers native-like performance across all popular devices including
  those based on iOS, Android and Windows Mobile.
 Cocktails creates a single web-based programming paradigm, which allows developers
  to build apps with a native-like performance, while delivering optimal experiences for
  any screen and any device.


             Yahoo! announced Cocktails in November 2011
Yahoo! Mojito

 With Mojito developers can create ONE app for several devices while lowering
  costs, increasing agility and maintaining a uniform aesthetic across screens
  (web, mobile, tablet).
 The Mojito code-base that has been open sourced accelerates the development of
  applications by giving developers the ability to maintain a single codebase for all the
  connected devices and optimize the application for each device.
 Because Mojito is built in one language, JavaScript, for client AND server
  environments, developers enjoy increased productivity - only one code-base to test and
  fix.


       As promised, Yahoo! open sourced Mojito on April 2nd, 2012
What’s Mojito?




      MVC Framework for Server +
              Client in
           One Language
What’s Mojito?



                  Mojito
   Express

 Connect
                   Mustache   YUI
     Node.js

               JavaScript
Getting Mojito

 Usingyinst + ynpm
 ›   yroot --create mojito 4.8-20090518
     • 5.x should also work
 ›   yinstiynodejs_dev
 ›   yinstiynpm –br current
 ›   sudoynpm install mojito –g
 ›   mojito test
“Hello, World!”
 mojito create app HelloWorldApp
 cdHelloWorldApp
 mojito create mojitHelloMojit


Now browse to
 http://localhost:8666/@HelloMojit/index
A minor customization

 routes.json

[
    {
        "settings": ["master"],
        "root": {
            "path": "/",
            "verbs": [ "GET" ],
            "call": "@HelloMojit.index"
        }
]
Analyzing Artifacts
 application.json
 mojits
 ›   models
 ›   views
 ›   controller
 ›   assets

 assets
 autoload
Let’s make the app interactive…
The Mojit

 The User Interface
 ›   Model + Controller + View

 The User Interaction
 ›   Binder

 Communication Back to Server
 ›   Form Submit
 ›   Direct Ajax calls
 ›   Proxied controller calls
Enhancing the Design

 The HTMLFrameMojit
 Composite Mojits
 External CSS
 External JavaScript


 Device specific UI
Componentizing Code

 Custom YUI Modules
 Autoload
 ›   Server, Client, Common

 Model
 ›   Server, Client, Common
 ›   Global, Mojit specific
Extending Mojito

 Addons
 Middleware
 Libraries
 View Engines
Yahoo! Products built on Mojito

 Livestand– A personalized living magazine.


 Yahoo! Fantasy Finance – is a stock trading game that pits players against each other
  and their friends for the chance to win $50,000.


 CITIZEN SPORTS - Fantasy Premier League Football – is the first major fantasy game
  to allow Premier League fans to draft, manage and discuss their fantasy teams entirely
  on their smartphone or tablet. Users can also play the game on their laptops; it is the
  same game on all screens for all fans.


 Search Direct – Search Direct is a search feature delivering the same rich content
  from Yahoo!’s products, aggregated as answers, not links, to give people the option to
  immediately engage and bypass a traditional search results page.


 ….and more
Contact

 Yahoo! Developers
 ›   http://developers.yahoo.com
 Yahoo! Cocktails
 ›   http://developers.yahoo.com/cocktails
 Yahoo! Mojito
 ›   http://developers.yahoo.com/cocktails/mojito
 Email:
 ›   gvaish@yahoo-inc.com
Join the Mojito community!
        Thanks!

Weitere ähnliche Inhalte

Ähnlich wie Yahoo! Mojito

Publicis Mojito
Publicis MojitoPublicis Mojito
Publicis Mojito
isaoyagi
 
Publicis Mojito
Publicis MojitoPublicis Mojito
Publicis Mojito
isaoyagi
 
Build an i phone, android, or blackberry web app with jq touch and jquery
Build an i phone, android, or blackberry web app with jq touch and jqueryBuild an i phone, android, or blackberry web app with jq touch and jquery
Build an i phone, android, or blackberry web app with jq touch and jquery
Antonio Chagoury
 
Html5 mobile develop tools
Html5 mobile develop toolsHtml5 mobile develop tools
Html5 mobile develop tools
Ley Liu
 
jQueryMobile Jump Start
jQueryMobile Jump StartjQueryMobile Jump Start
jQueryMobile Jump Start
Haim Michael
 
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeThe challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
Caridy Patino
 

Ähnlich wie Yahoo! Mojito (20)

Open Hack Taiwan 2012 - Mojito intro
Open Hack Taiwan 2012 - Mojito introOpen Hack Taiwan 2012 - Mojito intro
Open Hack Taiwan 2012 - Mojito intro
 
Publicis Mojito
Publicis MojitoPublicis Mojito
Publicis Mojito
 
YUIConf2012: Mojito for YUI Developers
YUIConf2012: Mojito for YUI DevelopersYUIConf2012: Mojito for YUI Developers
YUIConf2012: Mojito for YUI Developers
 
淺談 NodeJS 與框架
淺談 NodeJS 與框架淺談 NodeJS 與框架
淺談 NodeJS 與框架
 
Publicis Mojito
Publicis MojitoPublicis Mojito
Publicis Mojito
 
Introduction to the Yahoo! Mojito Node.js MVC
Introduction to the Yahoo! Mojito Node.js MVCIntroduction to the Yahoo! Mojito Node.js MVC
Introduction to the Yahoo! Mojito Node.js MVC
 
Yahoo! Hack India: Hyderabad | Introduction to the Yahoo! Mojito Node.js MVC
Yahoo! Hack India: Hyderabad | Introduction to the Yahoo! Mojito Node.js MVCYahoo! Hack India: Hyderabad | Introduction to the Yahoo! Mojito Node.js MVC
Yahoo! Hack India: Hyderabad | Introduction to the Yahoo! Mojito Node.js MVC
 
Wpp mojito-novid.pptx
Wpp mojito-novid.pptxWpp mojito-novid.pptx
Wpp mojito-novid.pptx
 
Build an i phone, android, or blackberry web app with jq touch and jquery
Build an i phone, android, or blackberry web app with jq touch and jqueryBuild an i phone, android, or blackberry web app with jq touch and jquery
Build an i phone, android, or blackberry web app with jq touch and jquery
 
Html5 mobile develop tools
Html5 mobile develop toolsHtml5 mobile develop tools
Html5 mobile develop tools
 
Mobile Widgets Development
Mobile Widgets DevelopmentMobile Widgets Development
Mobile Widgets Development
 
Inside Mobile Widgets Publish
Inside Mobile Widgets PublishInside Mobile Widgets Publish
Inside Mobile Widgets Publish
 
2011 07 Malaysia Open Source Conference
2011 07 Malaysia Open Source Conference2011 07 Malaysia Open Source Conference
2011 07 Malaysia Open Source Conference
 
jQueryMobile Jump Start
jQueryMobile Jump StartjQueryMobile Jump Start
jQueryMobile Jump Start
 
Artificial Intelligent: Intelligent Bot With Microsoft Bot Framework & Azure
Artificial Intelligent: Intelligent Bot With Microsoft Bot Framework & AzureArtificial Intelligent: Intelligent Bot With Microsoft Bot Framework & Azure
Artificial Intelligent: Intelligent Bot With Microsoft Bot Framework & Azure
 
Plattformübergreifende App-Entwicklung (ein Vergleich) - MobileTechCon 2010
Plattformübergreifende App-Entwicklung (ein Vergleich) - MobileTechCon 2010Plattformübergreifende App-Entwicklung (ein Vergleich) - MobileTechCon 2010
Plattformübergreifende App-Entwicklung (ein Vergleich) - MobileTechCon 2010
 
developing Android and HTML5 apps for the Motorola ATRIX - Taking advantage o...
developing Android and HTML5 apps for the Motorola ATRIX - Taking advantage o...developing Android and HTML5 apps for the Motorola ATRIX - Taking advantage o...
developing Android and HTML5 apps for the Motorola ATRIX - Taking advantage o...
 
JoomlaDay Chicago 2017 Keynote Address
JoomlaDay Chicago 2017 Keynote AddressJoomlaDay Chicago 2017 Keynote Address
JoomlaDay Chicago 2017 Keynote Address
 
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeThe challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
 
Firefox Mobile
Firefox MobileFirefox Mobile
Firefox Mobile
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Kürzlich hochgeladen (20)

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...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
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
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
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
 
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
 
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
 
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
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 

Yahoo! Mojito

  • 1. Yahoo! Mojito GauravVaish Principal Engineer, Yahoo! Copyright © 2012 Yahoo! All rights reserved. No reproduction or distribution allowed without express written permission
  • 2. Background The Problem:  Developers do not have a method for delivering high quality digital media experiences to all popular consumer devices, without having to create applications specific to each device, which is slow and expensive.  Current available technologies that try to solve for this problem are proprietary, locking developers to vendors. The Solution: Yahoo! Cocktails
  • 3. Yahoo! Cocktails  “Cocktails” is a Javascript-based on-line/off-line, multi-device, cloud-ready, mobile development platform made up of “Mojito,” a JavaScript MVC framework and “Manhattan,” a cloud-based hosted environment, that Yahoo! announced in November 2011.  Cocktails, created by Yahoo!, leverages and evolves open web standard technologies, including HTML5, CSS3, JavaScript and Node.JS.  Cocktails enables the development of hybrid applications, a new class of app that is cross-platform yet offers native-like performance across all popular devices including those based on iOS, Android and Windows Mobile.  Cocktails creates a single web-based programming paradigm, which allows developers to build apps with a native-like performance, while delivering optimal experiences for any screen and any device. Yahoo! announced Cocktails in November 2011
  • 4.
  • 5. Yahoo! Mojito  With Mojito developers can create ONE app for several devices while lowering costs, increasing agility and maintaining a uniform aesthetic across screens (web, mobile, tablet).  The Mojito code-base that has been open sourced accelerates the development of applications by giving developers the ability to maintain a single codebase for all the connected devices and optimize the application for each device.  Because Mojito is built in one language, JavaScript, for client AND server environments, developers enjoy increased productivity - only one code-base to test and fix. As promised, Yahoo! open sourced Mojito on April 2nd, 2012
  • 6.
  • 7. What’s Mojito? MVC Framework for Server + Client in One Language
  • 8. What’s Mojito? Mojito Express Connect Mustache YUI Node.js JavaScript
  • 9. Getting Mojito  Usingyinst + ynpm › yroot --create mojito 4.8-20090518 • 5.x should also work › yinstiynodejs_dev › yinstiynpm –br current › sudoynpm install mojito –g › mojito test
  • 10. “Hello, World!”  mojito create app HelloWorldApp  cdHelloWorldApp  mojito create mojitHelloMojit Now browse to  http://localhost:8666/@HelloMojit/index
  • 11. A minor customization  routes.json [ { "settings": ["master"], "root": { "path": "/", "verbs": [ "GET" ], "call": "@HelloMojit.index" } ]
  • 12. Analyzing Artifacts  application.json  mojits › models › views › controller › assets  assets  autoload
  • 13. Let’s make the app interactive…
  • 14. The Mojit  The User Interface › Model + Controller + View  The User Interaction › Binder  Communication Back to Server › Form Submit › Direct Ajax calls › Proxied controller calls
  • 15. Enhancing the Design  The HTMLFrameMojit  Composite Mojits  External CSS  External JavaScript  Device specific UI
  • 16. Componentizing Code  Custom YUI Modules  Autoload › Server, Client, Common  Model › Server, Client, Common › Global, Mojit specific
  • 17. Extending Mojito  Addons  Middleware  Libraries  View Engines
  • 18. Yahoo! Products built on Mojito  Livestand– A personalized living magazine.  Yahoo! Fantasy Finance – is a stock trading game that pits players against each other and their friends for the chance to win $50,000.  CITIZEN SPORTS - Fantasy Premier League Football – is the first major fantasy game to allow Premier League fans to draft, manage and discuss their fantasy teams entirely on their smartphone or tablet. Users can also play the game on their laptops; it is the same game on all screens for all fans.  Search Direct – Search Direct is a search feature delivering the same rich content from Yahoo!’s products, aggregated as answers, not links, to give people the option to immediately engage and bypass a traditional search results page.  ….and more
  • 19. Contact  Yahoo! Developers › http://developers.yahoo.com  Yahoo! Cocktails › http://developers.yahoo.com/cocktails  Yahoo! Mojito › http://developers.yahoo.com/cocktails/mojito  Email: › gvaish@yahoo-inc.com
  • 20. Join the Mojito community! Thanks!