#ICYMI 002 - Learn from the community: React web app and Azure QnA bot to centralize learning resources
Tags: azure, microsoftgraph, powerautomate, cognitiveservices
Published: 2022-03-29 09:17:38

‘Learn from the community’ is a series of articles to highlight real-life project scenarios covered in Show & Tell interviews on our [Microsoft 365 Developer YouTube](https://aka.ms/m365youtube) channel. It’s a great opportunity to get inspired by the end-to-end solutions built with the Microsoft Cloud and get excited for your next project.

![Learn from the community logo](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eekuyl0t5aoso067660r.jpg)
A group of students from the University College London observed the struggle of having many different portals and websites that students are required to use during their study. They introduced us to the Project Resourcium that aims to support students’ education by centralizing resources for them in a single portal.

Project Resourcium was developed to simplify the processes for students by centralizing the learning materials for students, as well as providing support with the Wellbeing section and the QnA Bot to help students during their study.

Resourcium is designed as a React app that provides many features that aim to support students during their study including:

- The two-factor authentication (2FA) is integrated to provide secure access to the app. This feature leverages:
Azure Active Directory to enable single sign on functionality
  - Azure Functions to generate a unique secret for each user
  - Azure Cosmos DB to store a user’s information
  - Microsoft Graph is consumed to get user profile and calendar details in this app.
- The Wellbeing section is designed to facilitate forms for students to complete and describe their blockers that they need help with. This section works as follows:
  - Completed student forms are automatically stored in a centralized SharePoint site by using Microsoft Power Automate flow.
  - Centralized and stored form data is consumed in Power BI to generate a report by using another Power Automate flow and the generated report is then embedded in the SharePoint site.
- The Student Help page provides students with the option to search for learning materials they are interested in. This page consumes both the Microsoft Learn API and LinkedIn Learning API to gather learning resources. This page also provides a QnA Bot to allow students to ask questions when they are not able to find what they are looking for. The QnA Bot is built by using the Azure Bot Service and QnA Maker.

> Resourcium is an open-source project that can be deployed and reused by other institutes. Watch our interview to learn more about this project.

Learn more about the project 🚀👉
{% youtube Z2DcorJKGtQ %}

###Useful Links
####📌 Resourcium
- [GitHub](https://github.com/resourcium/resourcium)
- [Blog post about Resourcium](https://techcommunity.microsoft.com/t5/educator-developer-blog/microsoft-university-college-london-ixn-project-resourcium/ba-p/2246902)
- [Blog post about SSO](https://devblogs.microsoft.com/microsoft365dev/learn-from-the-community-react-web-app-and-azure-qna-bot-to-centralize-learning-resources/o%09https:/techcommunity.microsoft.com/t5/educator-developer-blog/implementing-sso-with-microsoft-accounts-for-single-page-apps/ba-p/2213166)

####📚 Microsoft Learn
- [Microsoft Graph Fundamentals](https://docs.microsoft.com/learn/paths/m365-msgraph-fundamentals/?WT.mc_id=m365-54401-aycabas) 
- [Develop apps with the Microsoft Graph Toolkit](https://docs.microsoft.com/learn/paths/m365-msgraph-toolkit/?WT.mc_id=m365-54401-aycabas) 

####📃 Microsoft Docs 
- [What is single sign-on in Azure Active Directory?](https://docs.microsoft.com/azure/active-directory/manage-apps/what-is-single-sign-on?WT.mc_id=m365-54401-aycabas)
- [Introduction to Azure Functions](https://docs.microsoft.com/azure/azure-functions/functions-overview?WT.mc_id=m365-54401-aycabas)
- [Introduction to Azure Cosmos DB](https://docs.microsoft.com/azure/cosmos-db/introduction?WT.mc_id=m365-54401-aycabas)
- [Get started with Power Automate](https://docs.microsoft.com/power-automate/getting-started?WT.mc_id=m365-54401-aycabas)
- [Set up your SharePoint site with lists and libraries](https://docs.microsoft.com/sharepoint/dev/business-apps/get-started/set-up-sharepoint-site-lists-libraries?WT.mc_id=m365-54401-aycabas)
- [Azure Bot Service Documentation](https://docs.microsoft.com/azure/bot-service/?view=azure-bot-service-4.0&WT.mc_id=m365-54401-aycabas)
- [What is QnA Maker service?](https://docs.microsoft.com/azure/cognitive-services/qnamaker/overview/overview?WT.mc_id=m365-54401-aycabas)

####🔎 Previous articles in Learn from the community series
- [#ICYMI 001 - Learn from the community: Microsoft Teams and Moodle online learning solution](https://dev.to/azure/icymi-001-learn-from-the-community-microsoft-teams-and-moodle-online-learning-solution-2bfi)