GithubHelp home page GithubHelp logo

add-to-wunderlist-common's Introduction

Add to Wunderlist - shared extension code

========================

This is the repository for the shared code between the Add to Wunderlist browser extensions for Chrome, Safari and Firefox. This project is based on the work of Buffer - props for open sourcing!

How to add an "Add to Wunderlist" button for any site

First, fork this repository. If you're not sure how to, this guide will teach you. But be aware, this repo is only the shared code between the browser extensions - to actually run and develop locally you also have to fork the extension code for Chrome, Safari or Firefox, which includes this repo as a submodule.

Second step is to add an injector in Injector.js, which is split into two parts - an url validation rule and an injector callback function. Look at the existing examples and extend them with the site you want, by first creating a new rule for when to activate the injector, and then adding a callback that actually injects the button the site.

If your injected button needs site specific styling, put this in css/styles.css, following the existing formatting.

Next thing to do, if needed, is to add a custom content scraper. By default, we scrape the site for OpenGraph, TwitterCard and meta tag data to create the task and note to be created. But in some cases you might want to change the way the data is formatted, or simply grab another piece of information from the site.

In Scrapers.js, add another url validation rule and extend the Scrapers object with a custom callback, that should return the data object to be added. This file is full of examples, so look around to see the options for how to best scrape for the information you need.

Last step is to submit a pull request. We look forward to your contribution!

Roadmap

  • Simplify and clean up general structure
  • Add headless browser tests for injectors

License

Extending on Buffer's work with the same licensing, MPL 1.1/GPL 2.0/LGPL 2.1.

add-to-wunderlist-common's People

Contributors

adamrenklint avatar adamschroder avatar mlabod avatar octatone avatar

Stargazers

 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.