SlideShare a Scribd company logo
1 of 25
Building Modern
Front Ends for Joomla
Online Joomla Day 6-8 November 2019
Ashwin Date
@coolbung
ashwin@tekditechnologies.com
● CTO, Techjoomla & Tekdi
Technologies
● Started in 2009
● Extensions
● Custom Software Development
● Team of over 50+ developers,
designers and architects
About Us
• Founded in 2006
• Opensource focused growth strategy has helped us
get a large worldwide client base
• We are one of India’s top Joomla based development
companies with some of the most complex projects to
our name
• Product first approach to development, delivering
optimisations through code reuse
www.techjoomla.com | www.appcarvers.com
Team
• 50+ team across all divisions
consisting of frontend and backend
developers, Product developers,
Project & Product managers, Analysts
and Architects
• Majority of the team has an
experience of 4-8 years
• Senior Architects with 12+ Years of
experience
www.techjoomla.com | www.appcarvers.com
Offerings
• UI/UX Development
• Web & Portal Applications
• API Development
• Business Intelligence (BI), Big Data and
Data Analytics
• Modern Abstracted frontends
• Large Scale Joomla based applications and
enterprise implementations
• Native & hybrid mobile applications
• Progressive web applications
Key Products
Shika e-Learning system for Joomla that supports host of content types -
documents, videos, SCORM, quizzes, exercises and feedback. Also supports
e-commerce / paid courses.
JTicketing Event booking system supporting paid events and multiple ticket
types. Can integrate with Adobe Connect for online events. Use it with the
native events manager or with JEvents, Easysocial or Jomsocial events.
JGive Create campaigns for accepting donations for causes, or set it up in an
investment mode like Kickstarter to put up projects and accept micro-
investments.
com_api REST API toolkit for Joomla 3.x. This extension allows creating RESTful API endpoints for
Joomla resources
TJ Reports is an extension that allows you to easily build reports for your extensions
UCM Content Manager that allows creating multiple “content Types”, add fields.
TJ Dashboard is a great way to build Dashboards for your Joomla Applications
Open Source Product Stack
Open Source Product Stack
Advanced Search allows indexing data from any extension into a search database like Algolia,
SOLR, Elasticsearch
TJ Notifications is a unified communication tool that allows managing email templates for different
media - email, SMS, push
TJ Queue Is a generic job queue / message queue that has MySQL and Amazon SQS adaptors
Why another
frontend ?
Multi Tier Architecture - the way
forward
● User front ends are not limited to web - can be mobile, TV, wearables and lot
more
● Each tier may evolve independently
● Easier to Manage & Simpler to scale
● Typical web 3 tier architecture uses a JavaScript frontend (Angular, React),
Application layer (PHP, Python, NodeJS etc) and a database.
Multi Tier Architecture with Joomla
● Joomla uses MVC which already has separation of concerns
● However using different CSS frameworks needs good knowledge of the
Joomla templating system
● Clients love the smooth experience offered by Single Page Apps
● But what about those who have already invested in learning Joomla ?
Multi Tier Architecture with Joomla
Joomla as API backend
Uses com_api as the API framework
Several core plugins already built
3rd party extensions can write plugins to add more endpoints
Supports JSON, JSONP and XML
Authentication with API Tokens / JWT
Auto login plugin to login to Joomla using API Token
User Impersonation
Available APIs
Joomla user with social login (Uses JFB Connect)
Articles and Categories
Easysocial (Users, Pages, Groups, Events, Newsfeed)
Easyblog (Reading, searching and writing blogs)
JTicketing
Shika
TJ Reports via API
Angular / React
No need to reinvent the UI
Large ecosystem with plenty of modules
JavaScript - The cool thing everyone wants to get into
Case Study 1 -
Osianama.com
Osianama
Asia’s largest Auction House
Running on Angular + Joomla for over 2 years now
Joomla menus, Zoo, Advanced Search
Algolia
www.osianama.com
User + Articles
Articles - List, search, filter, read article
User - Username / password login, Social login
https://github.com/tekdi/ngtek-joomla/tree/demo
● Around 150,000 records in Zoo
● Around 500,000 relations between records
● 15 API endpoints created
Some Numbers
Case Study 2 -
Marketplace with
driving quality and
safety monitoring
Vehicle
Tracking
Mobile and web
application with API
mashups for Vehicle
tracking for compliance.
Web App using Joomla
backend for APIs,
Angular JS for Frontend
Mobile app using
Xamarin
● Admin Panel for agencies to manage jobs
● Mobile App for drivers to accept jobs and as a driving companion.
● App integrates with the Sentiance SDK for driving quality monitoring
● Background services to calculate driving scores
● Close to 30 APIs with full CRUD implementation for most entities
Key Areas
Thank You !
Please share your feedback
https://forms.gle/HyvnGwuxtp21zT8n9

More Related Content

What's hot

Start on mobile App: Native, Hybrid, and Make Money
Start on mobile App: Native, Hybrid, and Make MoneyStart on mobile App: Native, Hybrid, and Make Money
Start on mobile App: Native, Hybrid, and Make MoneyTeerasej Jiraphatchandej
 
Mobile applications development - why should you start learning it right now?
Mobile applications development - why should you start learning it right now?Mobile applications development - why should you start learning it right now?
Mobile applications development - why should you start learning it right now?Natalija Rodionova
 
PPT from Webinar Create Hybrid Mobile Application in 1 hour
PPT from Webinar Create Hybrid Mobile Application in 1 hourPPT from Webinar Create Hybrid Mobile Application in 1 hour
PPT from Webinar Create Hybrid Mobile Application in 1 hourDhananjay Kumar
 
Creativity and-skill-to-java-app-development
Creativity and-skill-to-java-app-developmentCreativity and-skill-to-java-app-development
Creativity and-skill-to-java-app-developmentDeepika Chaudhary
 
Mobile Application Development Using Java
Mobile Application Development Using JavaMobile Application Development Using Java
Mobile Application Development Using JavaNexSoftsys
 
Chatbot development with Microsoft Bot Framework
Chatbot development with Microsoft Bot FrameworkChatbot development with Microsoft Bot Framework
Chatbot development with Microsoft Bot FrameworkMd. Mahedee Hasan
 
A Gentle introduction to Web Development & Django
A Gentle introduction to Web Development & DjangoA Gentle introduction to Web Development & Django
A Gentle introduction to Web Development & DjangoPRASANNAVENK
 
Industry-Standard Web Development Techniques for Angular
Industry-Standard Web Development Techniques for AngularIndustry-Standard Web Development Techniques for Angular
Industry-Standard Web Development Techniques for AngularJai Prakash Mishra
 
Native Mobile Application Using Java Script
Native  Mobile  Application  Using  Java ScriptNative  Mobile  Application  Using  Java Script
Native Mobile Application Using Java ScriptBorey Lim
 

What's hot (15)

Start on mobile App: Native, Hybrid, and Make Money
Start on mobile App: Native, Hybrid, and Make MoneyStart on mobile App: Native, Hybrid, and Make Money
Start on mobile App: Native, Hybrid, and Make Money
 
Web Accessibility
Web AccessibilityWeb Accessibility
Web Accessibility
 
Mobile applications development - why should you start learning it right now?
Mobile applications development - why should you start learning it right now?Mobile applications development - why should you start learning it right now?
Mobile applications development - why should you start learning it right now?
 
PPT from Webinar Create Hybrid Mobile Application in 1 hour
PPT from Webinar Create Hybrid Mobile Application in 1 hourPPT from Webinar Create Hybrid Mobile Application in 1 hour
PPT from Webinar Create Hybrid Mobile Application in 1 hour
 
Creativity and-skill-to-java-app-development
Creativity and-skill-to-java-app-developmentCreativity and-skill-to-java-app-development
Creativity and-skill-to-java-app-development
 
ArvindDhakad_PHP
ArvindDhakad_PHPArvindDhakad_PHP
ArvindDhakad_PHP
 
Mobile Application Development Using Java
Mobile Application Development Using JavaMobile Application Development Using Java
Mobile Application Development Using Java
 
Shailendr Singh
Shailendr SinghShailendr Singh
Shailendr Singh
 
Touching jQuery Mobile
Touching jQuery MobileTouching jQuery Mobile
Touching jQuery Mobile
 
Search Engine Optimization
Search Engine OptimizationSearch Engine Optimization
Search Engine Optimization
 
Chatbot development with Microsoft Bot Framework
Chatbot development with Microsoft Bot FrameworkChatbot development with Microsoft Bot Framework
Chatbot development with Microsoft Bot Framework
 
A Gentle introduction to Web Development & Django
A Gentle introduction to Web Development & DjangoA Gentle introduction to Web Development & Django
A Gentle introduction to Web Development & Django
 
Industry-Standard Web Development Techniques for Angular
Industry-Standard Web Development Techniques for AngularIndustry-Standard Web Development Techniques for Angular
Industry-Standard Web Development Techniques for Angular
 
Native Mobile Application Using Java Script
Native  Mobile  Application  Using  Java ScriptNative  Mobile  Application  Using  Java Script
Native Mobile Application Using Java Script
 
Saurav_cv
Saurav_cvSaurav_cv
Saurav_cv
 

Similar to Building modern frontends for joomla

Techjoomla Infrastructure Extensions - Adding an Enterprise Layer to Joomla!
Techjoomla Infrastructure Extensions - Adding an Enterprise Layer to Joomla!Techjoomla Infrastructure Extensions - Adding an Enterprise Layer to Joomla!
Techjoomla Infrastructure Extensions - Adding an Enterprise Layer to Joomla!Parth Lawate
 
Optimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best PracticesOptimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best PracticesTeamstudio
 
Basics of Joomla!
Basics of Joomla! Basics of Joomla!
Basics of Joomla! Saurabh Shah
 
REST API for Joomla
REST API for JoomlaREST API for Joomla
REST API for JoomlaParth Lawate
 
Building Mobile (app) Masterpiece with Distributed Agile
Building Mobile (app) Masterpiece with Distributed AgileBuilding Mobile (app) Masterpiece with Distributed Agile
Building Mobile (app) Masterpiece with Distributed AgileWee Witthawaskul
 
Josin Wang Resume
Josin Wang ResumeJosin Wang Resume
Josin Wang ResumeJosin Wang
 
Curriculum vitae of nguyen hai quy
Curriculum vitae of nguyen hai quyCurriculum vitae of nguyen hai quy
Curriculum vitae of nguyen hai quyHai Quy Nguyen
 
Portfolio - PROGmaatic Developer Network
Portfolio - PROGmaatic Developer NetworkPortfolio - PROGmaatic Developer Network
Portfolio - PROGmaatic Developer NetworkHabib Ullah Bahar
 
Introduction To Open Web Protocols
Introduction To Open Web ProtocolsIntroduction To Open Web Protocols
Introduction To Open Web ProtocolsMohan Krishnan
 
Prabhu-Software-Engineer-3+-Year-Exp
Prabhu-Software-Engineer-3+-Year-ExpPrabhu-Software-Engineer-3+-Year-Exp
Prabhu-Software-Engineer-3+-Year-ExpPrabhu S
 
Angular jS Introduction by Google
Angular jS Introduction by GoogleAngular jS Introduction by Google
Angular jS Introduction by GoogleASG
 
Sabarish_php_resume
Sabarish_php_resumeSabarish_php_resume
Sabarish_php_resumesabarish K
 
API Platform Cloud Service best practice - OOW17
API Platform Cloud Service best practice - OOW17API Platform Cloud Service best practice - OOW17
API Platform Cloud Service best practice - OOW17Phil Wilkins
 

Similar to Building modern frontends for joomla (20)

Techjoomla Infrastructure Extensions - Adding an Enterprise Layer to Joomla!
Techjoomla Infrastructure Extensions - Adding an Enterprise Layer to Joomla!Techjoomla Infrastructure Extensions - Adding an Enterprise Layer to Joomla!
Techjoomla Infrastructure Extensions - Adding an Enterprise Layer to Joomla!
 
Entando datasheet
Entando datasheetEntando datasheet
Entando datasheet
 
Optimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best PracticesOptimus XPages: An Explosion of Techniques and Best Practices
Optimus XPages: An Explosion of Techniques and Best Practices
 
George Jordanov CV
George Jordanov CVGeorge Jordanov CV
George Jordanov CV
 
Basics of Joomla!
Basics of Joomla! Basics of Joomla!
Basics of Joomla!
 
REST API for Joomla
REST API for JoomlaREST API for Joomla
REST API for Joomla
 
Building Mobile (app) Masterpiece with Distributed Agile
Building Mobile (app) Masterpiece with Distributed AgileBuilding Mobile (app) Masterpiece with Distributed Agile
Building Mobile (app) Masterpiece with Distributed Agile
 
Abhishek Resume
Abhishek ResumeAbhishek Resume
Abhishek Resume
 
Josin Wang Resume
Josin Wang ResumeJosin Wang Resume
Josin Wang Resume
 
Curriculum vitae of nguyen hai quy
Curriculum vitae of nguyen hai quyCurriculum vitae of nguyen hai quy
Curriculum vitae of nguyen hai quy
 
Saloni_Tyagi
Saloni_TyagiSaloni_Tyagi
Saloni_Tyagi
 
Portfolio - PROGmaatic Developer Network
Portfolio - PROGmaatic Developer NetworkPortfolio - PROGmaatic Developer Network
Portfolio - PROGmaatic Developer Network
 
Introduction To Open Web Protocols
Introduction To Open Web ProtocolsIntroduction To Open Web Protocols
Introduction To Open Web Protocols
 
Sandeepv553_Resume
Sandeepv553_ResumeSandeepv553_Resume
Sandeepv553_Resume
 
Prabhu-Software-Engineer-3+-Year-Exp
Prabhu-Software-Engineer-3+-Year-ExpPrabhu-Software-Engineer-3+-Year-Exp
Prabhu-Software-Engineer-3+-Year-Exp
 
Angular jS Introduction by Google
Angular jS Introduction by GoogleAngular jS Introduction by Google
Angular jS Introduction by Google
 
Sabarish_php_resume
Sabarish_php_resumeSabarish_php_resume
Sabarish_php_resume
 
API Platform Cloud Service best practice - OOW17
API Platform Cloud Service best practice - OOW17API Platform Cloud Service best practice - OOW17
API Platform Cloud Service best practice - OOW17
 
Resume
ResumeResume
Resume
 
Maruti gollapudi cv
Maruti gollapudi cvMaruti gollapudi cv
Maruti gollapudi cv
 

More from Ashwin Date

King of Fruits - Theme based Gamification
King of Fruits - Theme based GamificationKing of Fruits - Theme based Gamification
King of Fruits - Theme based GamificationAshwin Date
 
Revolutionizing kids education using joomla
Revolutionizing kids education using joomlaRevolutionizing kids education using joomla
Revolutionizing kids education using joomlaAshwin Date
 
Joomla! Itemid amd routing explained
Joomla! Itemid amd routing explainedJoomla! Itemid amd routing explained
Joomla! Itemid amd routing explainedAshwin Date
 
Caching and Performance Improvememts in Joomla
Caching and Performance Improvememts in JoomlaCaching and Performance Improvememts in Joomla
Caching and Performance Improvememts in JoomlaAshwin Date
 
Joomla REST API - JoomlaDay Bangkok 2014
Joomla REST API - JoomlaDay Bangkok 2014Joomla REST API - JoomlaDay Bangkok 2014
Joomla REST API - JoomlaDay Bangkok 2014Ashwin Date
 
10 things you are doing wrong in Joomla
10 things you are doing wrong in Joomla10 things you are doing wrong in Joomla
10 things you are doing wrong in JoomlaAshwin Date
 
How Joomla powers one of the biggest grain warehouses in India
How Joomla powers one of the biggest grain warehouses in IndiaHow Joomla powers one of the biggest grain warehouses in India
How Joomla powers one of the biggest grain warehouses in IndiaAshwin Date
 
Deploying Joomla sites with GIT
Deploying Joomla sites with GITDeploying Joomla sites with GIT
Deploying Joomla sites with GITAshwin Date
 

More from Ashwin Date (10)

King of Fruits - Theme based Gamification
King of Fruits - Theme based GamificationKing of Fruits - Theme based Gamification
King of Fruits - Theme based Gamification
 
Revolutionizing kids education using joomla
Revolutionizing kids education using joomlaRevolutionizing kids education using joomla
Revolutionizing kids education using joomla
 
Joomla! Itemid amd routing explained
Joomla! Itemid amd routing explainedJoomla! Itemid amd routing explained
Joomla! Itemid amd routing explained
 
Git basics
Git basicsGit basics
Git basics
 
Caching and Performance Improvememts in Joomla
Caching and Performance Improvememts in JoomlaCaching and Performance Improvememts in Joomla
Caching and Performance Improvememts in Joomla
 
Joomla REST API - JoomlaDay Bangkok 2014
Joomla REST API - JoomlaDay Bangkok 2014Joomla REST API - JoomlaDay Bangkok 2014
Joomla REST API - JoomlaDay Bangkok 2014
 
10 things you are doing wrong in Joomla
10 things you are doing wrong in Joomla10 things you are doing wrong in Joomla
10 things you are doing wrong in Joomla
 
How Joomla powers one of the biggest grain warehouses in India
How Joomla powers one of the biggest grain warehouses in IndiaHow Joomla powers one of the biggest grain warehouses in India
How Joomla powers one of the biggest grain warehouses in India
 
Deploying Joomla sites with GIT
Deploying Joomla sites with GITDeploying Joomla sites with GIT
Deploying Joomla sites with GIT
 
Joomla REST API
Joomla REST APIJoomla REST API
Joomla REST API
 

Recently uploaded

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyFrank van der Linden
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
cybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningcybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningVitsRangannavar
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsMehedi Hasan Shohan
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - InfographicHr365.us smith
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfPower Karaoke
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 

Recently uploaded (20)

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Engage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The UglyEngage Usergroup 2024 - The Good The Bad_The Ugly
Engage Usergroup 2024 - The Good The Bad_The Ugly
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
cybersecurity notes for mca students for learning
cybersecurity notes for mca students for learningcybersecurity notes for mca students for learning
cybersecurity notes for mca students for learning
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 
XpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software SolutionsXpertSolvers: Your Partner in Building Innovative Software Solutions
XpertSolvers: Your Partner in Building Innovative Software Solutions
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Asset Management Software - Infographic
Asset Management Software - InfographicAsset Management Software - Infographic
Asset Management Software - Infographic
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
The Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdfThe Evolution of Karaoke From Analog to App.pdf
The Evolution of Karaoke From Analog to App.pdf
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 

Building modern frontends for joomla

  • 1. Building Modern Front Ends for Joomla Online Joomla Day 6-8 November 2019
  • 3. ● Started in 2009 ● Extensions ● Custom Software Development ● Team of over 50+ developers, designers and architects
  • 4. About Us • Founded in 2006 • Opensource focused growth strategy has helped us get a large worldwide client base • We are one of India’s top Joomla based development companies with some of the most complex projects to our name • Product first approach to development, delivering optimisations through code reuse
  • 5. www.techjoomla.com | www.appcarvers.com Team • 50+ team across all divisions consisting of frontend and backend developers, Product developers, Project & Product managers, Analysts and Architects • Majority of the team has an experience of 4-8 years • Senior Architects with 12+ Years of experience
  • 6. www.techjoomla.com | www.appcarvers.com Offerings • UI/UX Development • Web & Portal Applications • API Development • Business Intelligence (BI), Big Data and Data Analytics • Modern Abstracted frontends • Large Scale Joomla based applications and enterprise implementations • Native & hybrid mobile applications • Progressive web applications
  • 7. Key Products Shika e-Learning system for Joomla that supports host of content types - documents, videos, SCORM, quizzes, exercises and feedback. Also supports e-commerce / paid courses. JTicketing Event booking system supporting paid events and multiple ticket types. Can integrate with Adobe Connect for online events. Use it with the native events manager or with JEvents, Easysocial or Jomsocial events. JGive Create campaigns for accepting donations for causes, or set it up in an investment mode like Kickstarter to put up projects and accept micro- investments.
  • 8. com_api REST API toolkit for Joomla 3.x. This extension allows creating RESTful API endpoints for Joomla resources TJ Reports is an extension that allows you to easily build reports for your extensions UCM Content Manager that allows creating multiple “content Types”, add fields. TJ Dashboard is a great way to build Dashboards for your Joomla Applications Open Source Product Stack
  • 9. Open Source Product Stack Advanced Search allows indexing data from any extension into a search database like Algolia, SOLR, Elasticsearch TJ Notifications is a unified communication tool that allows managing email templates for different media - email, SMS, push TJ Queue Is a generic job queue / message queue that has MySQL and Amazon SQS adaptors
  • 11. Multi Tier Architecture - the way forward ● User front ends are not limited to web - can be mobile, TV, wearables and lot more ● Each tier may evolve independently ● Easier to Manage & Simpler to scale ● Typical web 3 tier architecture uses a JavaScript frontend (Angular, React), Application layer (PHP, Python, NodeJS etc) and a database.
  • 12. Multi Tier Architecture with Joomla ● Joomla uses MVC which already has separation of concerns ● However using different CSS frameworks needs good knowledge of the Joomla templating system ● Clients love the smooth experience offered by Single Page Apps ● But what about those who have already invested in learning Joomla ?
  • 13. Multi Tier Architecture with Joomla
  • 14. Joomla as API backend Uses com_api as the API framework Several core plugins already built 3rd party extensions can write plugins to add more endpoints Supports JSON, JSONP and XML Authentication with API Tokens / JWT Auto login plugin to login to Joomla using API Token User Impersonation
  • 15. Available APIs Joomla user with social login (Uses JFB Connect) Articles and Categories Easysocial (Users, Pages, Groups, Events, Newsfeed) Easyblog (Reading, searching and writing blogs) JTicketing Shika TJ Reports via API
  • 16. Angular / React No need to reinvent the UI Large ecosystem with plenty of modules JavaScript - The cool thing everyone wants to get into
  • 17. Case Study 1 - Osianama.com
  • 18. Osianama Asia’s largest Auction House Running on Angular + Joomla for over 2 years now Joomla menus, Zoo, Advanced Search Algolia www.osianama.com
  • 19. User + Articles Articles - List, search, filter, read article User - Username / password login, Social login https://github.com/tekdi/ngtek-joomla/tree/demo
  • 20. ● Around 150,000 records in Zoo ● Around 500,000 relations between records ● 15 API endpoints created Some Numbers
  • 21. Case Study 2 - Marketplace with driving quality and safety monitoring
  • 22. Vehicle Tracking Mobile and web application with API mashups for Vehicle tracking for compliance. Web App using Joomla backend for APIs, Angular JS for Frontend Mobile app using Xamarin
  • 23.
  • 24. ● Admin Panel for agencies to manage jobs ● Mobile App for drivers to accept jobs and as a driving companion. ● App integrates with the Sentiance SDK for driving quality monitoring ● Background services to calculate driving scores ● Close to 30 APIs with full CRUD implementation for most entities Key Areas
  • 25. Thank You ! Please share your feedback https://forms.gle/HyvnGwuxtp21zT8n9