Summary
You should now be familiar with how to create high-quality auth experiences. In this chapter, we designed a great conditional navigation experience that you can use in your own applications, by copying the base elements to your project and implementing your own auth provider. We created a reusable UI service so that you can conveniently show alerts in the flow-control logic of your application.
We covered route guards to prevent users from stumbling onto screens they are not authorized to use, and we reaffirmed the point that the real security of your application should be implemented on the server side. You saw how you can use a factory to dynamically provide different auth providers for different environments.
Finally, we implemented a real auth provider with Firebase. In Chapter 7, Working with REST and GraphQL APIs, we will review LemonMart Server, a full-stack implementation using the minimal MEAN stack with REST and GraphQL APIs. We will complete our authentication...