LoopBack consists of:
- A library of Node.js modules for connecting mobile apps to data sources such as databases and REST APIs.
- A command line tool,
slc lb, for creating and working with LoopBack applications.
- Client SDKs for native and web-based mobile clients.
As illustrated in the diagram below, a LoopBack application has three components:
- Models that represent business data and behavior.
- Data sources and connectors. Data sources are databases or other backend services such as REST APIs, SOAP web services, or storage services. Connectors provide apps access to enterprise data sources such as Oracle, MySQL, and MongoDB.
- Mobile clients using the LoopBack client SDKs.
An app interacts with data sources through the LoopBack model API, available locally within Node.js, remotely over REST, and via native client APIs for iOS, Android, and HTML5. Using the API, apps can query databases, store data, upload files (feature not yet released), send emails, create push notifications, register users, and perform other actions provided by data sources.
Mobile clients can call LoopBack server APIs directly using Strong Remoting, a pluggable transport layer that enables you to provide backend APIs over REST, WebSockets, and other transports.