{"id":16544,"date":"2016-02-17T12:14:51","date_gmt":"2016-02-17T12:14:51","guid":{"rendered":"https:\/\/www.mautic.org\/idea-proposals-for-google-summer-of-code\/"},"modified":"2024-12-18T11:49:09","modified_gmt":"2024-12-18T11:49:09","slug":"idea-proposals-for-google-summer-of-code","status":"publish","type":"post","link":"https:\/\/mautic.org\/blog\/idea-proposals-for-google-summer-of-code","title":{"rendered":"Idea Proposals for Google Summer of Code"},"content":{"rendered":"<p>We recently <a href=\"\/blog\/developer\/mautic-applies-for-google-summer-of-code\/\">announced<\/a> that Mautic is applying for this year&#8217;s Google Summer of Code. How exciting! This is an incredible opportunity for students and organizations alike to contribute to the global Open Source community.<\/p>\n<p><!--more--><\/p>\n<p>\nPart of the application process is to present a list of ideas that, if accepted into the program, students can write\u00a0proposals for how they would best bring that idea to fruition. The process is brilliant on Google&#8217;s part. Not only do the students have an opportunity to refine their technical, team building, and general communication\u00a0skills; they also are able to improve and demonstrate their\u00a0critical thinking to come up with a solution to a given idea and also\u00a0their professional skill to\u00a0publicly present it.<\/p>\n<p>The team\u00a0looked back on the feedback given from the community and came up with three ideas that seemed to be in high demand and would bring great additions to Mautic&#8217;s feature-set.<\/p>\n<p>All of the following will require knowledge in PHP, HTML, Javascript, and basic SQL with emphasis on specific languages as noted in the ideas. It will help to have experience in Symfony and Doctrine but is not required.<\/p>\n<p><strong>1. Magento Integration<\/strong><\/p>\n<p>Magento is one of the most popular open source eCommerce solutions so it makes perfect sense that Mautic should be able to integrate with it! Leveraging Magento\u2019s API, Mautic should be able to sync customer information as leads, track the lead\u2019s ordering history, and detect abandoned carts.<\/p>\n<p>Mautic should be able to use that information to segment leads based on products purchased, recent activity (i.e. placed an order within last X weeks or have not placed an order in X months), and order statistics (i.e. spent $1000 in last 1 month).<\/p>\n<p>In addition to segmentation, Mautic should also be able to use campaigns to send dynamic emails that include abandoned cart products (with images) along with emails that up-sell, cross-sell, and reorder purchased products.<\/p>\n<p>Finally, Mautic should have eCommerce specific reporting such as correlating revenue with specific campaigns.<\/p>\n<p><strong>2. Custom WYSIWYG Editor and Improved Builders<\/strong><\/p>\n<p>Mautic currently uses a combination of CKEditor in full-page mode for creating custom HTML landing pages and emails. It also has a custom-built drag-and-drop \u201cbuilder\u201d to build themed landing pages and emails. As much as we love CKEditor, it doesn\u2019t meet all of Mautic\u2019s needs.<\/p>\n<p>Thus, we would like to see a simple, powerful, and beautiful UI for building landing pages and emails that doesn\u2019t depend on the end-user knowing web programming languages. But it should still give the power user or developer the option to directly edit the HTML. It needs to support both \u201cfree-style\u201d and file-based themes.<\/p>\n<p>It should include drag-and-drop elements such as image, text, table, lead profile information, forms, and other Mautic tokens. There should also be a simple and beautiful WYSIWYG editor for text and a file manager for images.<\/p>\n<p>Finally, it needs the option to add stylesheets and javascript files to the tag without having to manually manipulate the HTML. A strong design eye and skill in Javascript will be required for this idea.<\/p>\n<p><strong>3. Javascript Tracking with Heat Mapping<\/strong><\/p>\n<p>Mautic currently tracks website activity using a script generated tracking pixel. This method is limited to server values and whatever is appended to the image src as query parameters. Thus, Mautic needs a more powerful and flexible way to handle lead tracking using Javascript. This project should at least bring configurable page tracking (URL, title, etc), event tracking (clicks, downloads, video plays, etc.), and device tracking (device type, screen size, OS, browser, etc). Using the click tracking data, it would be great to include a heat mapping feature to see where end-users are most active on a website. Some backend coding will be needed so knowledge in PHP is required in addition to Javascript.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Mautic is applying for this year&#8217;s Google Summer of Code. Here are some of the ideas we have for students to work on as part of GSOC.<\/p>\n","protected":false},"author":47,"featured_media":16024,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"publish_to_discourse":"","publish_post_category":"","wpdc_auto_publish_overridden":"","wpdc_topic_tags":"","wpdc_pin_topic":"","wpdc_pin_until":"","discourse_post_id":"","discourse_permalink":"","wpdc_publishing_response":"","wpdc_publishing_error":"","footnotes":""},"categories":[1494],"tags":[939,951,952,1082,1084,1098],"class_list":["post-16544","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-for-developers","tag-google","tag-gsoc","tag-gsocapplication","tag-mauticcode","tag-mauticdevelopers","tag-mauticsummer"],"acf":[],"_links":{"self":[{"href":"https:\/\/mautic.org\/wp-json\/wp\/v2\/posts\/16544","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mautic.org\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mautic.org\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mautic.org\/wp-json\/wp\/v2\/users\/47"}],"replies":[{"embeddable":true,"href":"https:\/\/mautic.org\/wp-json\/wp\/v2\/comments?post=16544"}],"version-history":[{"count":1,"href":"https:\/\/mautic.org\/wp-json\/wp\/v2\/posts\/16544\/revisions"}],"predecessor-version":[{"id":17009,"href":"https:\/\/mautic.org\/wp-json\/wp\/v2\/posts\/16544\/revisions\/17009"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/mautic.org\/wp-json\/wp\/v2\/media\/16024"}],"wp:attachment":[{"href":"https:\/\/mautic.org\/wp-json\/wp\/v2\/media?parent=16544"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mautic.org\/wp-json\/wp\/v2\/categories?post=16544"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mautic.org\/wp-json\/wp\/v2\/tags?post=16544"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}