Successfully reported this slideshow.
Your SlideShare is downloading. ×

Rapid API Development with LoopBack/StrongLoop

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad

Check these out next

1 of 89 Ad

More Related Content

Slideshows for you (20)

Viewers also liked (20)

Advertisement

Similar to Rapid API Development with LoopBack/StrongLoop (20)

Advertisement

Recently uploaded (20)

Rapid API Development with LoopBack/StrongLoop

  1. 1. Rapid API Development with LoopBack/StrongLoop Raymond Camden
  2. 2. Rabid API Development
  3. 3. Who am I? Developer Advocate for IBM StrongLoop, Bluemix, Cordova/ PhoneGap, Node, and web stuff in general Blogging at raymondcamden.com Tweeting at @raymondcamden
  4. 4. https://unsplash.com/pjrvs
  5. 5. How I did web sites (old days)
  6. 6. How I did web sites (old days) Focused heavily on an app server
  7. 7. How I did web sites (old days) Focused heavily on an app server App server did everything (database access, generating HTML, etc)
  8. 8. How I did web sites (old days) Focused heavily on an app server App server did everything (database access, generating HTML, etc) Client-side was really limited
  9. 9. How I did web sites (old days) Focused heavily on an app server App server did everything (database access, generating HTML, etc) Client-side was really limited Ex:
  10. 10. How I did web sites (old days) Focused heavily on an app server App server did everything (database access, generating HTML, etc) Client-side was really limited Ex: Client: "I need a list of cats"
  11. 11. How I did web sites (old days) Focused heavily on an app server App server did everything (database access, generating HTML, etc) Client-side was really limited Ex: Client: "I need a list of cats" Server: "I'll ask the database for the list."
  12. 12. How I did web sites (old days) Focused heavily on an app server App server did everything (database access, generating HTML, etc) Client-side was really limited Ex: Client: "I need a list of cats" Server: "I'll ask the database for the list." Server: "I'll take that list and generate a lot of HTML to render it"
  13. 13. How I did web sites (old days) Focused heavily on an app server App server did everything (database access, generating HTML, etc) Client-side was really limited Ex: Client: "I need a list of cats" Server: "I'll ask the database for the list." Server: "I'll take that list and generate a lot of HTML to render it" Server: "I'll wrap that display in some site template with dynamic junk"
  14. 14. How I did web sites (old days) Focused heavily on an app server App server did everything (database access, generating HTML, etc) Client-side was really limited Ex: Client: "I need a list of cats" Server: "I'll ask the database for the list." Server: "I'll take that list and generate a lot of HTML to render it" Server: "I'll wrap that display in some site template with dynamic junk" Server: "I'll return a big pile of HTML to you"
  15. 15. How I did web sites (old days) Focused heavily on an app server App server did everything (database access, generating HTML, etc) Client-side was really limited Ex: Client: "I need a list of cats" Server: "I'll ask the database for the list." Server: "I'll take that list and generate a lot of HTML to render it" Server: "I'll wrap that display in some site template with dynamic junk" Server: "I'll return a big pile of HTML to you"
  16. 16. How I do web sites now...
  17. 17. How I do web sites now... The client doesn't suck anymore!
  18. 18. How I do web sites now... The client doesn't suck anymore! Mobile is everywhere - apps, apps, and more apps!
  19. 19. How I do web sites now... The client doesn't suck anymore! Mobile is everywhere - apps, apps, and more apps! My server just responds to API calls
  20. 20. How I do web sites now... The client doesn't suck anymore! Mobile is everywhere - apps, apps, and more apps! My server just responds to API calls Ex:
  21. 21. How I do web sites now... The client doesn't suck anymore! Mobile is everywhere - apps, apps, and more apps! My server just responds to API calls Ex: Client: "Give me a list of cats"
  22. 22. How I do web sites now... The client doesn't suck anymore! Mobile is everywhere - apps, apps, and more apps! My server just responds to API calls Ex: Client: "Give me a list of cats" Server: "Here is a list in raw JSON"
  23. 23. How I do web sites now... The client doesn't suck anymore! Mobile is everywhere - apps, apps, and more apps! My server just responds to API calls Ex: Client: "Give me a list of cats" Server: "Here is a list in raw JSON" Client: "Thanks, you're awesome, I'll render it"
  24. 24. How I do web sites now... The client doesn't suck anymore! Mobile is everywhere - apps, apps, and more apps! My server just responds to API calls Ex: Client: "Give me a list of cats" Server: "Here is a list in raw JSON" Client: "Thanks, you're awesome, I'll render it"
  25. 25. The Server in 2016
  26. 26. The Server in 2016 Smaller
  27. 27. The Server in 2016 Smaller Simpler
  28. 28. The Server in 2016 Smaller Simpler Just an API provider
  29. 29. The Server in 2016 Smaller Simpler Just an API provider Not some big machine I rent
  30. 30. "Typical" Setup (Then) Apache Adobe ColdFusion MySQL Minimal JavaScript on the client
  31. 31. "Typical" Setup (Now) Node.js Express Cloudant/MongoDB/etc JavaScript on the server, client, cloud, breakfast, etc
  32. 32. A confession...
  33. 33. Credit: https://flic.kr/p/9wXA3J
  34. 34. Express
  35. 35. Express No boilerplate web server crap
  36. 36. Express No boilerplate web server crap Focused on rapidly building a web site/app
  37. 37. LoopBack
  38. 38. LoopBack Open source framework designed for APIs
  39. 39. LoopBack Open source framework designed for APIs Rapid creation of Models and RESTAPIs
  40. 40. LoopBack Open source framework designed for APIs Rapid creation of Models and RESTAPIs Simple ORM system for CRUD
  41. 41. LoopBack Open source framework designed for APIs Rapid creation of Models and RESTAPIs Simple ORM system for CRUD Support for JavaScript apps (Angular)
  42. 42. LoopBack Open source framework designed for APIs Rapid creation of Models and RESTAPIs Simple ORM system for CRUD Support for JavaScript apps (Angular) Very detailed/configurable security policies
  43. 43. LoopBack Open source framework designed for APIs Rapid creation of Models and RESTAPIs Simple ORM system for CRUD Support for JavaScript apps (Angular) Very detailed/configurable security policies loopback.io
  44. 44. StrongLoop
  45. 45. StrongLoop Graphical tool for working with LoopBack
  46. 46. StrongLoop Graphical tool for working with LoopBack Deployment
  47. 47. StrongLoop Graphical tool for working with LoopBack Deployment Management
  48. 48. StrongLoop Graphical tool for working with LoopBack Deployment Management Monitoring
  49. 49. StrongLoop Graphical tool for working with LoopBack Deployment Management Monitoring Debugging
  50. 50. StrongLoop Graphical tool for working with LoopBack Deployment Management Monitoring Debugging strongloop.com
  51. 51. Getting Started
  52. 52. Installation Requires npm (Node Package Manager) Install Node.js (nodejs.org) npm install –g strongloop CLI: slc
  53. 53. Creating an Application
  54. 54. Creating an Application slc loopback
  55. 55. Creating an Application slc loopback Follow the prompts
  56. 56. Creating an Application slc loopback Follow the prompts Define models
  57. 57. Creating an Application slc loopback Follow the prompts Define models Run the application
  58. 58. Enter the StrongLoop
  59. 59. Enter the StrongLoop Runs on top of LoopBack
  60. 60. Enter the StrongLoop Runs on top of LoopBack Does a heck of a lot more than I'm showing today
  61. 61. Enter the StrongLoop Runs on top of LoopBack Does a heck of a lot more than I'm showing today To be clear - this is optional
  62. 62. –Bobby Tables “I should just put a cat picture here.”
  63. 63. Then what?
  64. 64. Then what? Setup a datasource
  65. 65. Then what? Setup a datasource Cloudant, DB2, Memory, MongoDB, MySQL, Oracle, PostgreSQL, Redis, SQL Server
  66. 66. Then what? Setup a datasource Cloudant, DB2, Memory, MongoDB, MySQL, Oracle, PostgreSQL, Redis, SQL Server npm install loopback-connector-mongodb --save
  67. 67. Then what? Setup a datasource Cloudant, DB2, Memory, MongoDB, MySQL, Oracle, PostgreSQL, Redis, SQL Server npm install loopback-connector-mongodb --save Setup security
  68. 68. Then what? Setup a datasource Cloudant, DB2, Memory, MongoDB, MySQL, Oracle, PostgreSQL, Redis, SQL Server npm install loopback-connector-mongodb --save Setup security Add custom methods
  69. 69. Then what? Setup a datasource Cloudant, DB2, Memory, MongoDB, MySQL, Oracle, PostgreSQL, Redis, SQL Server npm install loopback-connector-mongodb --save Setup security Add custom methods Unique stuff (/api/Cats?filter[where][friendly]=true vs /friendlyCats)
  70. 70. Then what? Setup a datasource Cloudant, DB2, Memory, MongoDB, MySQL, Oracle, PostgreSQL, Redis, SQL Server npm install loopback-connector-mongodb --save Setup security Add custom methods Unique stuff (/api/Cats?filter[where][friendly]=true vs /friendlyCats) Customize how data is stored ("If friendly, change name to…")
  71. 71. Then what? Setup a datasource Cloudant, DB2, Memory, MongoDB, MySQL, Oracle, PostgreSQL, Redis, SQL Server npm install loopback-connector-mongodb --save Setup security Add custom methods Unique stuff (/api/Cats?filter[where][friendly]=true vs /friendlyCats) Customize how data is stored ("If friendly, change name to…") Build your client
  72. 72. –Bobby Tables “I bet I could find a meme pic for this slide.”
  73. 73. Stuff I didn't cover
  74. 74. Stuff I didn't cover Customize the heck out of it
  75. 75. Stuff I didn't cover Customize the heck out of it File support
  76. 76. Stuff I didn't cover Customize the heck out of it File support Totally custom storage
  77. 77. Stuff I didn't cover Customize the heck out of it File support Totally custom storage API-based model
  78. 78. Stuff I didn't cover Customize the heck out of it File support Totally custom storage API-based model All the performance/deployment/scaling/etc
  79. 79. More stuff I didn't cover
  80. 80. More stuff I didn't cover API Connect
  81. 81. More stuff I didn't cover API Connect Node or Java
  82. 82. More stuff I didn't cover API Connect Node or Java API Creation, Management, Security, etc
  83. 83. More stuff I didn't cover API Connect Node or Java API Creation, Management, Security, etc Available March 15
  84. 84. Wrap up Zero to API in less than 5 minutes REST compliant - if you hate the prototype, you can rebuild https://docs.strongloop.com
  85. 85. Any questions? You can email here: raymondcamden@gmail.com You can follow me here: @raymondcamden (all serious stuff, no cat pics, honest) You can read my stuff here: www.raymondcamden.com (I won't lie - there's a few cat pics here)

×