How to build a movie review app with Azure Cosmos DB and Azure Functions
In this video, Matthew Soucoup explains how he mashed together three Azure services, namely the Azure Cosmos DB, Azure Functions and Azure AD B2C to create a movie review application using Xamarin Forms.
At 0:54, he states that the movie review app was intended to run successfully on multiple platforms at once, and begins to explain each of three Azure services. At 1:05, Mr. Matthew states that that Azure Cosmos DB is a multi-model globally distributed database.
He adds that multiple databases like a peer DocumenDB SQL, Mongo DB or Cassandra database can be kept as the underlying framework.
Mashing the Azure Services
At 1:44 he states that the regions can be created to ensure fast data downloading to the device from anywhere in the world, and at 2:08 explains that the functional setup is Serverless, meaning that there are servers running without the need to create an infrastructure for the servers, adding that Azure takes care of that at the backend.
At 2.20 Matthew briefs how the Azure Active Directory (AD) B2C (Business to consumer) provides the login functionality for the application. At 2:55, he points out to the screen where the movie review application’s page for viewing the reviews is displayed.
At 3:12, he elaborates that the premium reviews for the movie have been held for the people who logged in using the Azure AD B2C. At 3:40 Mathhew explains that in order to get the Cosmo DB on to the client-side, the SDK (Software Development Kit) was wrapped within the Xamarin app.
He further elaborates that the SDK would allow the automatic calculation of the closest read region when the ‘DocumentClient’ gets loaded. At 5:07 Matthew puts forward that the Azure functions have a bunch of bindings which has the maximum workload to run the movie review mobile application. At 5:53, he talks through how the movie reviews are stored in Cosmos.
Wrapping of the Azure services in a Xamarin app
He adds that with Cosmos, you can find out whether the particular review is premium or not.
At 6:21 he explains that at the database level, it will be clearly mentioned whether the specific review for a movie is premium or not. He adds that a unique movie ID belonging to the premium category means that they can view the specific review if logged in. At 6:37, he briefs that the Azure functions provide permission token which informs the client whether the download is available or not.
At 7:08 Matthew points out on the screen of the mobile application where he shows the sign-in using the twitter account. He adds that the premium reviews and the regular ones are visible since the user is logged in. At 7:51, Mr. Matthew concludes that the code is built and wrapped in Xamarin movie review app using the Cosmos DB, Azure functions and using Azure AD B2C to provide the login functionalities.
He adds that all these are put into a client crossed from 100 percent native Xamarin which is free using the community version of Visual Studio.