Giter Site home page Giter Site logo

messenger-assistant's Introduction

Messenger-Assistant

The position of the extension on Messenger.com

Messenger Assistant emojis Messenger Assistant reminders

Features

  • Reminders
  • Copy and paste emojis at will ¯\(ツ)
  • A graph that displays the number of characters sent over time

Installation

  1. Run git clone [email protected]:curtischong/Messenger-Assistant.git in your terminal.
  2. Change const YOUR_NAME = "Curtis"; in settings.js to your name. (Please capitalize your name).
  3. Choose which extensions you want by placing the name of the extension in the EXTENSIONS_TO_LOAD array in settings.js. All extensions are selected by default.
  4. Load the unpacked extension into Chrome https://github.com/web-scrobbler/web-scrobbler/wiki/Install-an-unpacked-extension.
  5. go on messenger.com and the side panel should appear! (You may need to reload messenger.com).

Design Decisions

  • Each Messenger-Assistant Extension should have an index, script, and syle.css under its directory name in the extensions directory.
  • The dependencies directory is on the outside so multiple extensions can reuse the same dependencies.

How Create a Messenger Assistant Extension

  1. Put the html, css, and js files for your extension under the extensions directory.
  2. In the manifest.json add the path to your js and css files under content_scripts. Then add the path to your HTML file under web_accessible_resources.
  3. in main.html add <div data-include="<your_extension_name>"></div> in the <div id="extensionsCon">...</div> section.
  4. Put <extensionName>Init() in the initOnPageLoad() function in extensions.js to initialize your extension. Your init function can return variables that will be passed on at every triggered event in extensions.js. Simply put these variables in initVars if you need to reference them later.
  5. Put functions that you want to be called for each event in extensions.js. The current supported events are: initOnPageLoad(), initOnChatLoad(), onRefreshBtnPressed(), and onChatChange().
  6. If your extension needs to make an external network call go into manifest.json and change the website in the content_security_policy section to the url of your website.

Dev Notes

  • If you update the manifest.json you have to manually turn off/on the extension in the extensions page (Extensions Reloader won't work).
  • This repo uses ES6 so if you are traversing DOM elements in jquery use .each((idx, element) => {})'; when looping through children elements.
  • Due to limitations with Chrome extensions, when you create a new file you must delete Messenger Assistant and reload the unpacked version of Messenger Assistant.

messenger-assistant's People

Contributors

curtischong avatar songeunyou avatar

Stargazers

Eric Tipici avatar Akshay Saxena avatar Mayank Kanoria avatar Matt Wang avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.