GSoC 2024 Project Report: Mautic Marketplace

By Kgitman · PUBLISHED October 01, 2024 · UPDATED October 01, 2024

This report provides an overview of my contributions at Mautic. My experience has been both rewarding and enlightening with the Mautic. I had the privilege of getting the opportunity to showcase my skills and contribute to the Mautic marketplace. The report describes about my experience with the community and project.

Project Overview :

  • Project Name: Expand the Mautic Marketplace: Ratings, reviews and UX improvements.
  • Project Repository: mautic-marketplace and marketplace-frontend
  • Contributor: Ketu Patel
  • Mentors: John Linhart, Rahul Shinde, Simran Sethi

The Mautic Marketplace provides users with access to plugins sourced from Packagist, and the Packagist API has many limitations. The Marketplace lacks critical features such as ratings, reviews, and advanced search capabilities, limiting user engagement and discoverability. Moreover, the user interface could benefit from optimization to improve usability and navigation.

This project will expand the features of our Marketplace to make it more user-friendly to the marketer. It will enable the marketer to rate and review the plugins they use, and also to interact more smoothly with those plugins available in the Marketplace.

Contribution (Key Milestone) to Mautic Marketplace 🌟

✅ Migrated the data from Packagist to Supabase.

  • The marketplace uses the Packagist API and it has some limitations, so we successfully migrated our data from Packagist to Supabase to enhance the functionality and performance of our marketplace. This transition was necessary due to the limitations of the Packagist API. The migration was executed using Supabase Edge Functions developed with Deno and typescript, which allowed for efficient data handling and integration.

✅ Replaced the API KEY

  • We used the DB Functions to make the inbuilt REST API more promised. There are Two DB Functions who include the List View and Detail View of the Marketplace. The new API KEY provide Functionalities to search by any parameter, the user can sort the plugins or themes. We also enabled the DB Function that highlight the verified plugins, this option is done in backend side although it will be implemented to front end side by community.

✅ Introducing the rating and review feature

  • Marketers can rate their experiences on a scale, helping us understand their satisfaction levels. Along with ratings, they can leave detailed reviews, offering insights into what they loved or areas for improvement.

✅ Enable Auth0 for authentication

  • To ensure the integrity and reliability of our rating and review system, we have implemented Auth0, a robust authentication platform. This enhancement requires users to authenticate themselves before they can rate or review plugins or themes, effectively preventing spam and ensuring the authenticity of user feedback.

✅ Enable the edit option for rating and review

  • We will also enable the edit option so marketers can easily modify their existing reviews to reflect any new experiences or changes related to the new version of the plugin or the theme. As per changes, marketers can adjust their reviews to provide the most current feedback.

🎓 DELIVERABLES

TASKS STATUS commits
Solving the API limitations DONE MarketPlace
Enabling the rating and review features DONE Rating_Reviews

Weekly Blogs 🖊️

Week 0 - Week 1 - Week 2 - Week 3 - Week 4 - Week 5 - Week 6 - Week 7 - Week 8 - Week 9 - Week 10 - Week 11 - Week 12 - Week 13 - Week 14

Future Goals

Utilize analytics to gather insights on user behavior and preferences, allowing us to make informed decisions for future updates and features. Implementing the testing of edge function so we can ensure it's workability.

Acknowledgement

I would like to express my heartfelt gratitude to my mentors: John Linhart, Rahul Shinde, Simran Sethi, Ruth Cheesley, whose guidance and support have been invaluable throughout my journey. Their wisdom and insights have inspired me to push my boundaries and strive for excellence. Thank you for being my sounding board, providing constructive feedback, and encouraging me during challenging times. Special thanks to Google for this amazing program and giving me the opportunity. The whole mautic community is very welcoming and supportive. Continuing my contributions to the Mautic organization ...