Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
# Santa Talk Challenge

Extend the intelligent, serverless Santa Talk Xamarin application and get some cool swag! See [this article](https://devblogs.microsoft.com/xamarin/santa-talk-xamarin-challenge/) for more details!
Extend the intelligent, serverless Santa Talk Xamarin application and get some cool swag! See [this article](https://devblogs.microsoft.com/xamarin/santa-talk-xamarin-challenge/?WT.mc_id=mobile-0000-masoucou) for more details!

## The Challenge

The Santa Talk app in this repo allows you to send a note to Santa, and then find out whether he'll deliver a gift to your house.

It's built using Xamarin.Forms, [Microsoft Cognitive Services Text Analytics](https://docs.microsoft.com/azure/cognitive-services/text-analytics/overview?WT.mc_id=santatalkchallenge-github-masoucou), and Azure Functions. Read [this article](https://devblogs.microsoft.com/xamarin/santa-talk-challenge-build-an-intelligent-serverless-xamarin-app?WT.mc_id=santatalkchallenge-github-masoucou), and this [blog post](https://codemilltech.com/santa-talk-an-intelligent-serverless-xamarin-app/), to see how everything fits together.
It's built using Xamarin.Forms, [Microsoft Cognitive Services Text Analytics](https://docs.microsoft.com/azure/cognitive-services/text-analytics/overview?WT.mc_id=mobile-0000-masoucou), and Azure Functions. Read [this article](https://devblogs.microsoft.com/xamarin/santa-talk-challenge-build-an-intelligent-serverless-xamarin-app?WT.mc_id=mobile-0000-masoucou), and this [blog post](https://codemilltech.com/santa-talk-an-intelligent-serverless-xamarin-app/), to see how everything fits together.

Your challenge is to extend the app in some way.

Some quick things that come to mind are:

* Add in the ability to take a photo, and use [Cognitive Services Computer Vision](https://docs.microsoft.com/azure/cognitive-services/computer-vision/home?WT.mc_id=santatalkchallenge-github-masoucou) to have Santa figure out if you've been naughty or nice.
* Save the responses from Santa on device and display them with a [`CarouselView`](https://docs.microsoft.com/xamarin/xamarin-forms/user-interface/carouselview/?WT.mc_id=santatalkchallenge-github-masoucou).
* Redesign the user interface using [`Shell`](https://docs.microsoft.com/xamarin/xamarin-forms/app-fundamentals/shell/?WT.mc_id=santatalkchallenge-github-masoucou).
* Track the user's location when they make a request, and make [annotations on a map](https://docs.microsoft.com/xamarin/xamarin-forms/user-interface/map/?WT.mc_id=santatalkchallenge-github-masoucou) where the naughty and nice developers live.
* Connect to [Azure Logic Apps](https://docs.microsoft.com/azure/logic-apps/?WT.mc_id=santatalkchallenge-github-masoucou) to send a Tweet whenever Santa gets a "letter".
* Add in the ability to take a photo, and use [Cognitive Services Computer Vision](https://docs.microsoft.com/azure/cognitive-services/computer-vision/home?WT.mc_id=mobile-0000-masoucou) to have Santa figure out if you've been naughty or nice.
* Save the responses from Santa on device and display them with a [`CarouselView`](https://docs.microsoft.com/xamarin/xamarin-forms/user-interface/carouselview/?WT.mc_id=mobile-0000-masoucou).
* Redesign the user interface using [`Shell`](https://docs.microsoft.com/xamarin/xamarin-forms/app-fundamentals/shell/?WT.mc_id=mobile-0000-masoucou).
* Track the user's location when they make a request, and make [annotations on a map](https://docs.microsoft.com/xamarin/xamarin-forms/user-interface/map/?WT.mc_id=mobile-0000-masoucou) where the naughty and nice developers live.
* Connect to [Azure Logic Apps](https://docs.microsoft.com/azure/logic-apps/?WT.mc_id=mobile-0000-masoucou) to send a Tweet whenever Santa gets a "letter".

Get creative! There are no right or wrong answers!

Expand All @@ -30,9 +30,9 @@ To get you up and running as quickly as possible, here is a way to get Text Anal

### Creating the Text Analytics Service

1. If you don't already have one, [sign up for a free Azure subscription here](https://azure.microsoft.com/free/?WT.mc_id=santatalkchallenge-github-masoucou).
2. Once done, open up the Azure portal: https://portal.azure.com - and sign in.
3. Then open up the [`Azure Cloud Shell`](https://docs.microsoft.com/azure/cloud-shell/overview?WT.mc_id=santatalkchallenge-github-masoucou). You can do that by clicking on the button that looks like the command prompt.
1. If you don't already have one, [sign up for a free Azure subscription here](https://azure.microsoft.com/free/?WT.mc_id=mobile-0000-masoucou).
2. Once done, open up the Azure portal: https://portal.azure.com/?WT.mc_id=mobile-0000-masoucou - and sign in.
3. Then open up the [`Azure Cloud Shell`](https://docs.microsoft.com/azure/cloud-shell/overview?WT.mc_id=mobile-0000-masoucou). You can do that by clicking on the button that looks like the command prompt.
![Azure portal cloud shell screen shot](https://res.cloudinary.com/code-mill-technologies-inc/image/upload/v1576715254/command-prompt_dxgndc.png)
4. Once the `Cloud Shell` opens, you'll want to do two things. Create a `Resource Group` and then the `Text Analytics` service. So go ahead and think of names for both right now ... you'll need them for the next step.
5. Enter the following command in the `Cloud Shell`
Expand Down Expand Up @@ -62,7 +62,7 @@ Then you'll be able to browse the `Text Analytics` service you just created. Mak

You'll also want to get the Azure Functions runtime locally. So you can run everything from your machine without having to deploy it to Azure. (Although if you want to deploy to Azure - by all means do so!)

Follow the [documentation](https://docs.microsoft.com/azure/cognitive-services/welcome?WT.mc_id=santatalkchallenge-github-masoucou) to get everything installed for the 2.x version of Functions.
Follow the [documentation](https://docs.microsoft.com/azure/cognitive-services/welcome?WT.mc_id=mobile-0000-masoucou) to get everything installed for the 2.x version of Functions.

What I like to do is run my Xamarin app from Visual Studio, then run my Functions app from VS Code.

Expand All @@ -86,7 +86,7 @@ At the same level as the *csproj file for the Functions project add a file named

Make sure you replace the `APIKey` and `APIEndpoint` with the values you found from your Text Analytics service in the Azure portal.

And if you're really digging the Serverless Lifestyle - [here are several FREE courses on creating serverless apps with Azure Functions!](https://docs.microsoft.com/learn/paths/create-serverless-applications/?WT.mc_id=santatalkchallenge-github-masoucou)
And if you're really digging the Serverless Lifestyle - [here are several FREE courses on creating serverless apps with Azure Functions!](https://docs.microsoft.com/learn/paths/create-serverless-applications/?WT.mc_id=mobile-0000-masoucou)

## Make Some Changes!

Expand Down