SlideShare a Scribd company logo
1 of 19
Download to read offline
Igor Khokhriakov
Mobile Tango Software Develoment Kit (mTangoSDK)
v1.0.1
29th
Tango meeting, Solaris, Krakow, Poland
20-22.05.2015
mTangoSDK v0.0.3
Was presented in Grenoble and Barcelona in the 2013.
Distributed as a single archive:
Web-Frontend; JavaScriptMVC;
embeded PhoneGap project;
bunch of ant scripts
Conclusion: a good starting point…
but not really user friendly
mTangoSDK v1.0.1
Totally redesigned, restructured and reorganized
Released in March, 2015
=>
mTangoSDK v1.0.1
Tools:
•mTangoREST.server
a java web application that provides
REST API to tango servers.
Basically it is a bridge
from "http://" to "tango://"
•mTangoREST-client for Java
a maven artifact.
This artifact provides java classes
for mTango-REST java client
development
•jsTangORB
a javascript library for mTango-REST
javascript client development
•mTangoUI
a framework for rapid web/mobile
UI development
mTangoSDK v1.0.1. Tools features.
mTangoREST.server:
•easy setup
•two steps authorization
•DatabaseDs and TangoAccessControl integration
•events support
•server side caches and optimizations
•images into response injection
mTangoREST-client for Java:
•distributed via maven
•predefined type tokens
jsTangORB:
•easy setup
•high level abstraction API to mTangoREST.server
•client side caches and optimizations
mTangoUI:
•easy integration with Apache Cordova
•predefined UI components
•reliable error handling
•client side optimizations
mTangoSDK v1.0.1. mTangoREST.server
Getting started:
1.Download .zip archive
2.Extract .war file from the .zip into the
servlet container’s webapps folder
3.Define users and roles
4.Restart the servlet container
mtangosdk v1.0.1
mTangoSDK v1.0.1. mTangoUI
Getting started:
1.Download .zip file
2.Extract
3.Start develop (see Wiki)
mtangosdk v1.0.1
mTangoSDK v1.0.1. mTangoUI & jsTangORB
mTangoUI is an extension to JavaScriptMVC which includes:
•jsTangORB engine
•mTangoUI engine
•mtango command line tools
jsTangORB is a javascript library that provides an API [aka TangORB.jar]
•communicates with the server via JsonP
•optimizes and caches requests to the server
•provides events support [based on Comet]
mTangoUI engine – next slides
mtango cli tools – a bunch of helpers, like create/remove apps; create/remove
app‘s pages; create jsTango proxies
mTangoSDK v1.0.1. mTangoUI engine
fld_text_ro
fld_text_rw
mTangoSDK v1.0.1. mTangoUI engine
fld_list_ro
mTangoSDK v1.0.1. mTangoUI engine
fld_list_rw
mTangoSDK v1.0.1. mTangoUI engine
Plots:
mtangosdk v1.0.1
mTangoSDK v1.0.1. mTangoUI
All the UI components are “clever” enough to suspend their activities
• when they are on the hidden page
• application pauses
To deploy onto a mobile device using Apache Cordova:
1.Setup cordova
2.Setup target platform SDK
3.Copy mTangoUI project into {CORDOVA}/www
4. cordova run [for debug]
5.Publish
mTangoSDK v1.0.2
What?
When? – August/September 2015
Thank you!
Questions?
jsTangORB. Caching and optimizations

More Related Content

Recently uploaded

Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLionel Briand
 
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdf
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdfPros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdf
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdfkalichargn70th171
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics
 
What’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesWhat’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesVictoriaMetrics
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shardsChristopher Curtin
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldRoberto Pérez Alcolea
 
Copilot para Microsoft 365 y Power Platform Copilot
Copilot para Microsoft 365 y Power Platform CopilotCopilot para Microsoft 365 y Power Platform Copilot
Copilot para Microsoft 365 y Power Platform CopilotEdgard Alejos
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingShane Coughlan
 
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jGraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jNeo4j
 
Data modeling 101 - Basics - Software Domain
Data modeling 101 - Basics - Software DomainData modeling 101 - Basics - Software Domain
Data modeling 101 - Basics - Software DomainAbdul Ahad
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...OnePlan Solutions
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorTier1 app
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...Bert Jan Schrijver
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingShane Coughlan
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slidesvaideheekore1
 
Osi security architecture in network.pptx
Osi security architecture in network.pptxOsi security architecture in network.pptx
Osi security architecture in network.pptxVinzoCenzo
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonApplitools
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecturerahul_net
 
Zer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfZer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfmaor17
 

Recently uploaded (20)

Large Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and RepairLarge Language Models for Test Case Evolution and Repair
Large Language Models for Test Case Evolution and Repair
 
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdf
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdfPros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdf
Pros and Cons of Selenium In Automation Testing_ A Comprehensive Assessment.pdf
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
 
What’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 UpdatesWhat’s New in VictoriaMetrics: Q1 2024 Updates
What’s New in VictoriaMetrics: Q1 2024 Updates
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository world
 
Copilot para Microsoft 365 y Power Platform Copilot
Copilot para Microsoft 365 y Power Platform CopilotCopilot para Microsoft 365 y Power Platform Copilot
Copilot para Microsoft 365 y Power Platform Copilot
 
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full RecordingOpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
OpenChain Education Work Group Monthly Meeting - 2024-04-10 - Full Recording
 
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4jGraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
GraphSummit Madrid - Product Vision and Roadmap - Luis Salvador Neo4j
 
Data modeling 101 - Basics - Software Domain
Data modeling 101 - Basics - Software DomainData modeling 101 - Basics - Software Domain
Data modeling 101 - Basics - Software Domain
 
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
 
Effectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryErrorEffectively Troubleshoot 9 Types of OutOfMemoryError
Effectively Troubleshoot 9 Types of OutOfMemoryError
 
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
JavaLand 2024 - Going serverless with Quarkus GraalVM native images and AWS L...
 
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full RecordingOpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
OpenChain AI Study Group - Europe and Asia Recap - 2024-04-11 - Full Recording
 
Introduction to Firebase Workshop Slides
Introduction to Firebase Workshop SlidesIntroduction to Firebase Workshop Slides
Introduction to Firebase Workshop Slides
 
Osi security architecture in network.pptx
Osi security architecture in network.pptxOsi security architecture in network.pptx
Osi security architecture in network.pptx
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecture
 
Zer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdfZer0con 2024 final share short version.pdf
Zer0con 2024 final share short version.pdf
 

mtangosdk v1.0.1

  • 1. Igor Khokhriakov Mobile Tango Software Develoment Kit (mTangoSDK) v1.0.1 29th Tango meeting, Solaris, Krakow, Poland 20-22.05.2015
  • 2. mTangoSDK v0.0.3 Was presented in Grenoble and Barcelona in the 2013. Distributed as a single archive: Web-Frontend; JavaScriptMVC; embeded PhoneGap project; bunch of ant scripts Conclusion: a good starting point… but not really user friendly
  • 3. mTangoSDK v1.0.1 Totally redesigned, restructured and reorganized Released in March, 2015 =>
  • 4. mTangoSDK v1.0.1 Tools: •mTangoREST.server a java web application that provides REST API to tango servers. Basically it is a bridge from "http://" to "tango://" •mTangoREST-client for Java a maven artifact. This artifact provides java classes for mTango-REST java client development •jsTangORB a javascript library for mTango-REST javascript client development •mTangoUI a framework for rapid web/mobile UI development
  • 5. mTangoSDK v1.0.1. Tools features. mTangoREST.server: •easy setup •two steps authorization •DatabaseDs and TangoAccessControl integration •events support •server side caches and optimizations •images into response injection mTangoREST-client for Java: •distributed via maven •predefined type tokens jsTangORB: •easy setup •high level abstraction API to mTangoREST.server •client side caches and optimizations mTangoUI: •easy integration with Apache Cordova •predefined UI components •reliable error handling •client side optimizations
  • 6. mTangoSDK v1.0.1. mTangoREST.server Getting started: 1.Download .zip archive 2.Extract .war file from the .zip into the servlet container’s webapps folder 3.Define users and roles 4.Restart the servlet container
  • 8. mTangoSDK v1.0.1. mTangoUI Getting started: 1.Download .zip file 2.Extract 3.Start develop (see Wiki)
  • 10. mTangoSDK v1.0.1. mTangoUI & jsTangORB mTangoUI is an extension to JavaScriptMVC which includes: •jsTangORB engine •mTangoUI engine •mtango command line tools jsTangORB is a javascript library that provides an API [aka TangORB.jar] •communicates with the server via JsonP •optimizes and caches requests to the server •provides events support [based on Comet] mTangoUI engine – next slides mtango cli tools – a bunch of helpers, like create/remove apps; create/remove app‘s pages; create jsTango proxies
  • 11. mTangoSDK v1.0.1. mTangoUI engine fld_text_ro fld_text_rw
  • 12. mTangoSDK v1.0.1. mTangoUI engine fld_list_ro
  • 13. mTangoSDK v1.0.1. mTangoUI engine fld_list_rw
  • 14. mTangoSDK v1.0.1. mTangoUI engine Plots:
  • 16. mTangoSDK v1.0.1. mTangoUI All the UI components are “clever” enough to suspend their activities • when they are on the hidden page • application pauses To deploy onto a mobile device using Apache Cordova: 1.Setup cordova 2.Setup target platform SDK 3.Copy mTangoUI project into {CORDOVA}/www 4. cordova run [for debug] 5.Publish
  • 17. mTangoSDK v1.0.2 What? When? – August/September 2015
  • 19. jsTangORB. Caching and optimizations