Using LoopBack to Build APIs For APIs

“Building APIs for APIs” sounds a bit like infinite recursion, but actually I’m talking about one of the cooler aspects of LoopBack: the ability to define a server API that maps to another server. Essentially your API acts as a proxy for another API. There are a lot of reasons you may want to do this, including:

  • Supplementing the set of APIs you already provide. Perhaps you’re a sports company that can provide APIs for every sport but golf. If you can find a third-party provider for golf data, you can then add it to your own library and offer a more complete solution to your users.
  • Modifying API results to fit your needs.  Maybe you want to use an API that is a bit inflexible in the data it returns. By creating your own proxy, you can modify the result sets to return only what you need.
  • To improve performance you can add your own caching layer.
  • Perhaps you want to use an API in your mobile app but don’t want to embed sensitive information, like an API key, in your source code. You can use your own server, and this LoopBack feature, to keep the key hidden in your Node.js code.

Read more

New Life for LoopBack Documentation

There’s an old saying: “Give someone a fish, and they eat for a day; but teach them to fish, and they eat for a lifetime.”  Metaphorically, that’s the value proposition of open-source development: It enables you to take control of your own destiny, to “fish for” (collaborate on) features and changes, instead of merely taking what’s handed to you.

LoopBack has always been an open-source project; the bulk of the documentation, however, has not been.  Now, I’m happy to announce that we’re making the LoopBack documentation open source. We’re in the final stages of moving the LoopBack documentation from – where it was hosted in a commercial wiki and wasn’t generally available for public editing – to, where it will be hosted in GitHub and thus will be open for direct contributions.  Anyone will be able to edit the documentation via pull requests, as they already can do with the software. Read more

Generating Swagger (OpenAPI specification) from your LoopBack Application

I’ve been asked about Swagger and LoopBack at a few conferences, and my answer has been: “I know LoopBack supports creating Swagger docs, but I’m not sure of the exact syntax.” Now that I’ve gotten a bit of a break from the conference scene, I thought I’d quickly document how easy this is to do with LoopBack. Before we begin though, what in the heck is Swagger?

Read more

Isomorphic JavaScript Mobile Apps

The method of delivering content to a browser has continued to evolve over the years. In the early days, every page was a full payload. If you clicked a link, you got a new page. If you hit the back button, you were delivered a new full page.

With the advent of AJAX (Asynchronous JavaScript and XML), web pages started to become more interactive without full page loads. Form submissions are the perfect example: a user fills out a form, hits the submit button, a spinner shows that something is happening, and finally the page displays a success/fail message. Previously, a user would click Submit on the form, that would perform an HTTP POST of the form data to the server, which would return a new page showing success or fail. This new AJAX method felt slicker and more “app-like”. This was only the beginning…

Read more