Skip to main content

LoopBack 4 2019 Q2 Overview

· 5 min read
Diana Lau

Originally published on strongloop.com

For the past few months, we have been focusing on the following stories:

We have a monthly blog reviewing what we've done in each milestone. To stay tuned, don't forget to follow us on Twitter @StrongLoop.

Authentication

We have recently released @loopback/authentication 2.0. Now you can secure your endpoints with both passport-based and LoopBack native authentication strategies that implement the AuthenticationStrategy interface. Our shopping app example has also been updated accordingly to include this capability. More details can be found in this authentication updates blog post.

Authorization

Besides creating an authorization component to add authorization in your LoopBack 4 application, you can now do so by using interceptors. This tutorial shows how to do it from end to end.

We have set up the foundation for inclusion of related models. We made improvements in our repository-json-schema package to provide the base for inclusion. We updated our TodoList example to describe navigational properties. The approach we used is a temporary approach to demonstrate how inclusion would work. You can clone the example to check it out.

Architectural Improvements

As one of the major architectural improvements, the concept of interceptor was introduced. Interceptors are reusable functions that provide aspect-oriented logic around method invocations. They can be applied for various uses. See the interceptors docs page for more details.

Besides the interceptor, LoopBack 4 now has a basic life cycle support. It allows registration of life cycle observers and actions, and there is a command line interface and a booter to make this even easier.

In addition, extensibility has been a great advancement for LoopBack 4. We've added decorator functions to allow you to add extensions even more easily.

Migration

If you have existing LoopBack 3 applications, it's a good time to start looking into how to migrate them to LoopBack 4. You can do this incrementally by mounting your LB3 application to LoopBack 4. Read this docs page for steps on how to do that.

Internal Tooling and CI

There has been a lot of enhancement in our tooling. We covered a new major release (v2.0) of @loopback/build in our June milestone blog.

We have also introduced the concept of experimental features to LoopBack development. The goal is to be able to release experimental features quickly for early feedback while maintaining high code quality on our production-ready code. For details, see https://github.com/strongloop/loopback-next/blob/labs/base/LABS.md.

Additionally, we have put tremendous effort into fixing the CI errors on the connectors, so that we can help land PRs from the community more quickly and more confidently. We've also reduced the build time in loopback-next which improves our development efficiency.

Lastly, Node.js 12 support has been added to the LoopBack 3 and LoopBack 4 core. The next step is to add Node.js 12 support to the connectors.

New Look and Feel on LoopBack Web Site

Our web site loopback.io now has a new look! We have moved the LoopBack 4 web site content back to our main web site.

We have rebuilt the "Who's using LoopBack" section to showcase our users. If you would like to be a part of it, see the details in this GitHub issue.

What's Next?

We'd like to hear from you! Our Q3 roadmap started with a pull request. We'll continue to create future roadmaps in the form of a PR, so feel free to chime in!

For the next 3 months, we'd like to focus on the following:

Previous Milestone Blogs

There are too many features added and bug fixes that cannot be captured here. Check out our previously published monthly milestone blog posts in Q2 for more details:

Call for Action

LoopBack's future success depends on you. We appreciate your continuous support and engagement to make LoopBack even better and meaningful for your API creation experience. Please join us and help the project by: