Overview
This API uses a CSV export from an activity in Mural to recommend content on an e-mentoring platform. The API creates a more portable JSON structure to store the information relevant to the recommendation functionality.
Project Context
This API was created as a class project to demonstrate portable information structures. Only portions of code are functional.
Problem
A mentoring program has a proprietary e-mentoring platform to support mentoring relationships and uses a third-party application, Mural, for interactive activities between mentors and mentees.
Opportunity
The program wants to automatically recommend content to mentees and mentors in the eMentroing platform based on their interactions in Mural.
Use Case Example
The program uses an activity called "What's on your radar?" for mentees to share their goals related to the 8 Dimensions of Wellness. They want to recommend blog articles and activities in the e-mentoring platform based on the mentee's responses. This will support the mentoring relationship by personalizing content and reducing the information overload of manual searching.
User Flow
Mentee adds the sticky note “How do I save up for a car?” in the Mural board under the category “Financial”
Export Mural board to CSV. The CSV includes useful properties such as text, area, and tags.
Use python to extract keywords from the text string data and compare them to keywords from related content in the eMentoring platform.
Output recommended content on mentee dashboard with a link to the articles.
New Information Structure
The API data is stored in a new JSON structure. See Transformation of Information Structure for more details.
[
{
"session": {
"id": "10001",
"call_time": "05/31/2023 3:30:00 PM",
"url": "/session/10001",
"tool": "Natural Language Toolkit (NLTK)"
},
"mural": {
"mural_id": "MURAL05202023000001",
"mural_url": "https://app.mural.co/12345",
"sticky_note": [],
"export": {
"export_id": "202300520120000",
"export_format": "json"
}
},
"recommendation": []
}
]