The document discusses building collaborative line of business applications on IBM Bluemix using the CLEAN stack, which includes Cloudant, LoopBack, Express, AngularJS, Ionic/Cordova, and Node.js. It describes using LoopBack to define business objects and generate REST APIs, customizing the APIs, authenticating with Bluemix services, authorizing via roles, deploying to Bluemix, using Cloudant as the database, developing locally, and building web and mobile clients with AngularJS and Ionic/Cordova.
Collaborative Line of Business Applications on IBM Bluemix
1. Collaborative Line of Business
Applications on IBM Bluemix
How to build CLEAN Applications with
Cloudant, LoopBack, Express, Angular and Node
Niklas Heidloff
Developer Advocate
for IBM Bluemix
@nheidloff
Feb 2016
2. Collaborative Line of Business ApplicationsCollaborativeLoBApplications
• LoB requirements often lead to the development of new
applications since standard software is not sufficient
• Collaborative applications allow employees to work together
synergistically to get their jobs done
• Collaborative LoB applications often require the protection of
intellectual property based on roles of employees
• Sample scenarios
– Approval workflows
– Teamrooms
– Travel expenses
3. Requirements of LoB Applications
• Rapid application development
– To enable citizen developers to build LoB applications
– To enable innovation
• Focus on business needs rather than infrastructure
– Leverage cloud application platforms
– Utilize DevOps
• Cost efficient hosting
CollaborativeLoBApplications
4. Requirements of LoB Applications
• Access to applications via web and mobile user experiences
• Integration of existing data, documents and files
• Integration of existing directories and user profiles
• Usage of modern and popular technologies to leverage
communities, libraries and tools
• Usage of standard and most common development skills
– Scripting is easier than languages like C and Java
– Preference is to use one language for everything
CollaborativeLoBApplications
7. Business Objects and REST APIsBusinessObjects
• Declarative definitions of business objects
• Automatic generation of REST APIs
– Including API documentation
Loopback
Swagger
15. Customization of the generated APIsRESTAPIs
• Scenarios
– Add additional APIs
– Hide methods and endpoints
– Execution hooks for CRUD operations
• Turn off auto generation for models
Loopback
Node
44. Mobile ClientsMobileClients
• Via Cordova mobile hybrid apps can be
generated for iOS and Android
• LoopBack generates JavaScript libraries
to access the services from AngularJS
controllers
• The controllers are the same ones as used
for the web client
Ionic
Cordova
AngularJS
53. Feedback is highly appreciated!
@nheidloff
https://github.com/ibm-bluemix/
collaboration
Niklas Heidloff
Developer Advocate
for IBM Bluemix
@nheidloff
Feb 2016