SlideShare a Scribd company logo
1 of 120
Download to read offline
Namaste!
"
"
Senior Software Engineer
Vidhi Kataria
@VidhiKataria2
@VidhiKataria2
MAKE DEVELOPMENT FASTER
- GeekyAnts
Nativebase
Nativebase Builder
Nativebase
Nativebase Builder
Nativebase
Design system creator
Previously....
Plugins
ORM
Plugin
!
Plugins
ORM
Plugin
Prisma ORM
!
Plugins
ORM
Plugin
Prisma ORM
!
Plugins
ORM
Plugin
Prisma ORM Drizzle ORM
!
Plugins
ORM
Plugin
Prisma ORM Drizzle ORM
!
Plugins
ORM
Plugin
Prisma ORM Drizzle ORM
!
!
Build yet another fullstack
javascript framewor
k️
Complexity
Data Consistency
Scalability
Performance Issue
Authentication and Authorisation
Complexity
Data Consistency
Scalability
Performance Issue
Authentication and Authorisation
Complexity
Complexity
Data Consistency
Scalability
Performance Issue
Authentication and Authorisation
Integration Issues
Complexity
Complexity
Data Consistency
Scalability
Performance Issue
Authentication and Authorisation
Integration Issues
Complexity
Data Consistency
Complexity
Data Consistency
Scalability
Performance Issue
Authentication and Authorisation
Authentication and Authorisation
Integration Issues
Complexity
Data Consistency
Complexity
Data Consistency
Scalability
Performance Issue
Authentication and Authorisation
Authentication and Authorisation
Scalability
Integration Issues
Complexity
Data Consistency
Complexity
Data Consistency
Scalability
Performance Issue
Authentication and Authorisation
Authentication and Authorisation
Scalability
Performance Issue
Integration Issues
Complexity
Data Consistency
Integration Issues
Complexity
Data Consistency
Scalability
Performance Issue
Authentication and Authorisation
Integration Issues
Complexity
Data Consistency
Scalability
Performance Issue
Authentication and Authorisation
Still continuing….
Integration Issues
Complexity
Data Consistency
Scalability
Performance Issue
Authentication and Authorisation
Still continuing….
Keeping up with the latest tech
Integration Issues
Complexity
Data Consistency
Scalability
Performance Issue
Authentication and Authorisation
Still continuing….
Testing and Quality Assurance
Keeping up with the latest tech
Integration Issues
Complexity
Data Consistency
Scalability
Performance Issue
Authentication and Authorisation
Still continuing….
Version Control and Collaboration
Testing and Quality Assurance
Keeping up with the latest tech
Integration Issues
Complexity
Data Consistency
Still continuing….
Version Control and Collaboration
Testing and Quality Assurance
Keeping up with the latest tech
Universal
Fully Typed
Fast to adopt
Quick to handle
Improves your DX
And it is Pluggable
It’s Demo Time
Bootstrapping
Folder Structure
The folder structure of a newly bootstrapped gluestack app will look like this.
glue
package.json
{}
con
fi
g
>
.glue
>
Readme.md
!
.env
node glue add @gluestack-v2/glue-plugin-web web
node glue add @gluestack-v2/glue-plugin-service-gateway gateway
node glue add @gluestack-v2/glue-plugin-functions functions
node glue add @gluestack-v2/glue-plugin-database database
node glue add @gluestack-v2/glue-plugin-database-client dbClient
node glue add @gluestack-v2/glue-plugin-database-client dbClient
node glue add @gluestack-v2/glue-plugin-functions functions
node glue add @gluestack-v2/glue-plugin-service-gateway gateway
node glue add @gluestack-v2/glue-plugin-web web
node glue add @gluestack-v2/glue-plugin-database database
node glue add @gluestack-v2/glue-plugin-database-client dbClient
node glue add @gluestack-v2/glue-plugin-web web
node glue add @gluestack-v2/glue-plugin-service-gateway gateway
node glue add @gluestack-v2/glue-plugin-functions functions
node glue add @gluestack-v2/glue-plugin-database database
Web instance
fi
le structure
UI Codebase
DbQuery SDK
Challenges
Creating a pluggable architecture that
makes sense
Creating a pluggable architecture
• Multiple instances.
Creating a pluggable architecture
• Multiple instances.
• Communication between the Plugins.
Creating a pluggable architecture
• Multiple instances.
• Communication between the Plugins.
• Extensible.
Creating a pluggable architecture
• Multiple instances.
• Communication between the Plugins.
• Extensible.
• Add or Remove.
Creating a pluggable architecture
• Multiple instances.
• Communication between the Plugins.
• Extensible.
• Add or Remove.
• Dependency con
fl
icts.
Creating a pluggable architecture
• Multiple instances.
• Communication between the Plugins.
• Extensible.
• Add or Remove.
• Dependency con
fl
icts.
• Debugging.
Creating a pluggable architecture
Core
gluestack plugins
gluestack architecture
• Multiple instances.
• Communication between the Plugins.
• Extensible.
• Add or Remove.
• Dependency con
fl
icts.
• Debugging.
Creating a pluggable architecture
• Multiple instances.
• Communication between the Plugins.
• Extensible.
• Add or Remove.
• Dependency con
fl
icts.
• Debugging.
Creating a pluggable architecture
pluginName
pluginType
…
buil()
watcher()
class PluginInterface
Core
gluestack plugins
gluestack architecture
custom
Core
gluestack plugins
gluestack architecture
custom plugins
• Multiple instances.
• Communication between the Plugins.
• Extensible.
• Add or Remove.
• Dependency con
fl
icts.
• Debugging.
Creating a pluggable architecture
• Multiple instances.
• Communication between the Plugins.
• Extensible.
• Add or Remove.
• Dependency con
fl
icts.
• Debugging.
Creating a pluggable architecture
CLI App Instance
Plugin 3
node glue
Plugin 2
Plugin 1
CLI Env
….. ….. dbclient
core
SDK
gateway
database
• Multiple instances.
• Communication between the Plugins.
• Extensible.
• Add or Remove.
• Dependency con
fl
icts.
• Debugging.
Creating a pluggable architecture
• Multiple instances.
• Communication between the Plugins.
• Extensible.
• Add or Remove.
• Dependency con
fl
icts.
• Debugging.
Creating a pluggable architecture
Your Instance
Build
Project Runner
Some error
Source map
By default error path
Final error path
Your Instance
Build
Project Runner
Some error
Source map
By default error path
Final error path
Your Instance
Build
Project Runner
Some error
Source map
By default error path
Final error path
Your Instance
Build
Project Runner
Some error
Source map
By default error path
Final error path
• Multiple instances.
• Communication between the Plugins.
• Extensible.
• Add or Remove.
• Dependency con
fl
icts.
• Debugging.
Creating a pluggable architecture
• Multiple instances.
• Communication between the Plugins.
• Extensible.
• Add or Remove.
• Dependency con
fl
icts.
• Debugging.
Creating a pluggable architecture
Deciding the tech stack
Fullstack
Application
Media Store
Database
Frontend
Backend
Fullstack
Application
Media Store
Database
Frontend
Backend
Fullstack
Application
Media Store
Database
Frontend
Backend
storage.service.js other services database.service.js
handler()
microservices
handler()
database.service.js
microservices
storage.service.js other services
handler()
client
server
SDK
client
SDK
handler()
broker call
axios call
clientSDK call
axios call
broker call
Edge Functions
User
Europe
Edge
Function
User
America
Edge
Function
User
Asia
Edge
Function
DB
replica
DB
replica
DB
replica
Fullstack
Application
Media Store
Database
Frontend
Backend
not possible due to
security reasons
Database
Frontend app
Backend app
request query response
with results
response using a rest API
response from server
not possible due to
security reasons
Database
Frontend app
Backend app
request query response
with results
database.service.js
ORM (prisma)
response from
server
request data
from SDK
response from
service
request using
axios call
Database client
SDK
Fullstack
Application
Media Store
Database
Frontend
Backend
Deploy & Run
Experimental
vidhi talk.pdf
vidhi talk.pdf
vidhi talk.pdf
vidhi talk.pdf
vidhi talk.pdf

More Related Content

Similar to vidhi talk.pdf

AWS Startup Webinar | Developing on AWS
AWS Startup Webinar | Developing on AWSAWS Startup Webinar | Developing on AWS
AWS Startup Webinar | Developing on AWS
Amazon Web Services
 

Similar to vidhi talk.pdf (20)

Jenkins vs. AWS CodePipeline
Jenkins vs. AWS CodePipelineJenkins vs. AWS CodePipeline
Jenkins vs. AWS CodePipeline
 
AWS Startup Webinar | Developing on AWS
AWS Startup Webinar | Developing on AWSAWS Startup Webinar | Developing on AWS
AWS Startup Webinar | Developing on AWS
 
Azure from scratch part 4
Azure from scratch part 4Azure from scratch part 4
Azure from scratch part 4
 
DevOpsDays Warsaw 2015: Automating microservices in Syncano – Michał Kobus & ...
DevOpsDays Warsaw 2015: Automating microservices in Syncano – Michał Kobus & ...DevOpsDays Warsaw 2015: Automating microservices in Syncano – Michał Kobus & ...
DevOpsDays Warsaw 2015: Automating microservices in Syncano – Michał Kobus & ...
 
Dropwizard and Groovy
Dropwizard and GroovyDropwizard and Groovy
Dropwizard and Groovy
 
Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015Best of Microsoft Dev Camp 2015
Best of Microsoft Dev Camp 2015
 
Better and Faster: A Journey Toward Clean Code and Enjoyment
Better and Faster: A Journey Toward Clean Code and EnjoymentBetter and Faster: A Journey Toward Clean Code and Enjoyment
Better and Faster: A Journey Toward Clean Code and Enjoyment
 
Drone Continuous Integration
Drone Continuous IntegrationDrone Continuous Integration
Drone Continuous Integration
 
Can i service this from my raspberry pi
Can i service this from my raspberry piCan i service this from my raspberry pi
Can i service this from my raspberry pi
 
Confluence State Of The Union 2009
Confluence State Of The Union 2009Confluence State Of The Union 2009
Confluence State Of The Union 2009
 
Practical WebAssembly with Apex, wasmRS, and nanobus
Practical WebAssembly with Apex, wasmRS, and nanobusPractical WebAssembly with Apex, wasmRS, and nanobus
Practical WebAssembly with Apex, wasmRS, and nanobus
 
Digital Forensics and Incident Response in The Cloud Part 3
Digital Forensics and Incident Response in The Cloud Part 3Digital Forensics and Incident Response in The Cloud Part 3
Digital Forensics and Incident Response in The Cloud Part 3
 
Evolving Mobile Architectures
Evolving Mobile ArchitecturesEvolving Mobile Architectures
Evolving Mobile Architectures
 
Mini-Track: Lessons from Public Cloud
Mini-Track: Lessons from Public CloudMini-Track: Lessons from Public Cloud
Mini-Track: Lessons from Public Cloud
 
Continuous Integration Testing: Fully test your microservices application, ea...
Continuous Integration Testing: Fully test your microservices application, ea...Continuous Integration Testing: Fully test your microservices application, ea...
Continuous Integration Testing: Fully test your microservices application, ea...
 
A web app in pure Clojure
A web app in pure ClojureA web app in pure Clojure
A web app in pure Clojure
 
Serverless in production, an experience report (Going Serverless)
Serverless in production, an experience report (Going Serverless)Serverless in production, an experience report (Going Serverless)
Serverless in production, an experience report (Going Serverless)
 
Azure and web sites hackaton deck
Azure and web sites hackaton deckAzure and web sites hackaton deck
Azure and web sites hackaton deck
 
Serverless in production, an experience report (FullStack 2018)
Serverless in production, an experience report (FullStack 2018)Serverless in production, an experience report (FullStack 2018)
Serverless in production, an experience report (FullStack 2018)
 
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
 

Recently uploaded

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
ssuser89054b
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
Epec Engineered Technologies
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
jaanualu31
 
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
mphochane1998
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
AldoGarca30
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
Kamal Acharya
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Kandungan 087776558899
 

Recently uploaded (20)

XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
 
Basic Electronics for diploma students as per technical education Kerala Syll...
Basic Electronics for diploma students as per technical education Kerala Syll...Basic Electronics for diploma students as per technical education Kerala Syll...
Basic Electronics for diploma students as per technical education Kerala Syll...
 
AIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech studentsAIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech students
 
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills KuwaitKuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
Kuwait City MTP kit ((+919101817206)) Buy Abortion Pills Kuwait
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments""Lesotho Leaps Forward: A Chronicle of Transformative Developments"
"Lesotho Leaps Forward: A Chronicle of Transformative Developments"
 
Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdf
 
8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessor8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessor
 
Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdf
 
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
NO1 Top No1 Amil Baba In Azad Kashmir, Kashmir Black Magic Specialist Expert ...
 
Signal Processing and Linear System Analysis
Signal Processing and Linear System AnalysisSignal Processing and Linear System Analysis
Signal Processing and Linear System Analysis
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 
Electromagnetic relays used for power system .pptx
Electromagnetic relays used for power system .pptxElectromagnetic relays used for power system .pptx
Electromagnetic relays used for power system .pptx
 
PE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and propertiesPE 459 LECTURE 2- natural gas basic concepts and properties
PE 459 LECTURE 2- natural gas basic concepts and properties
 
Augmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptxAugmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptx
 
Computer Networks Basics of Network Devices
Computer Networks  Basics of Network DevicesComputer Networks  Basics of Network Devices
Computer Networks Basics of Network Devices
 

vidhi talk.pdf