Increase your traffic, view your stats, speed up your site, and protect yourself from hackers with Jetpack.
PHP JavaScript CSS Other
Latest commit 0493b26 Jan 24, 2017 @gravityrail gravityrail committed on GitHub Merge pull request #6155 from Automattic/fix/avoid-mb-encoding-bugs-i…

Switch to wp_json_encode to gracefully handle encoding issues
Failed to load latest commit information.
.github PR template: add additional info about changelog. Sep 7, 2016
3rd-party General: load the compatibility routines for WPML at the right time (#… Dec 8, 2016
_inc Apps Landing: Refactored scss to fix ie11 spacing issue (#6109) Jan 19, 2017
bin I18n: added task dependency and removed unneeded file. May 25, 2016
images VideoPress: Use remote image for processing thumbnail instead of local. Jan 6, 2017
json-endpoints Fix/php notice in api (#6104) Jan 15, 2017
languages Improved languages cleanup on build. (#5140) Oct 5, 2016
modules Add PHP 7.1 testing (#5821) Jan 20, 2017
sal REST API: Remove falsey values from icon and return only if ico/img e… Jan 11, 2017
scss IDC: Fix visual regression in IDC notice (#5733) Nov 22, 2016
sync Merge pull request #6155 from Automattic/fix/avoid-mb-encoding-bugs-i… Jan 24, 2017
tests Add PHP 7.1 testing (#5821) Jan 20, 2017
tools Removed a carriage return character from module headings builder. (#6108 Jan 16, 2017
views/admin Protect: Add instructions for entering multiple IPs on separate lines ( Jan 11, 2017
.babelrc Introduce ES3 transform literals babel plugin Aug 20, 2016
.codeclimate.yml Add CodeClimate config & badge Jun 21, 2016
.editorconfig Add .editorconfig Nov 4, 2015
.eslintrc Get back to using "space-after-keywords" eslint rule Aug 19, 2016
.gitignore .gitignore: Do not commit Unison temp files Aug 8, 2016
.jshintignore Shortcodes: minify jQuery Cycle script Jan 3, 2017
.jshintrc Swipe Core's .jshintrc file. Mar 7, 2014
.npmrc Grunt to Gulp: Replace grunt build with Gulp May 15, 2016
.nvmrc Updated .nvmrc to reflect current Node version. Nov 8, 2016
.svnignore svnignore: un-ignore upcoming events widget and shortcode Jan 9, 2017
.travis.yml Add PHP 7.1 testing (#5821) Jan 20, 2017
Gruntfile.js Re-include `addtextdomain` functionality via Grunt for the moment (#5526 Nov 8, 2016
LICENSE.txt License: add license file to repository. (#5199) Nov 9, 2016
changelog.txt Changelog: add 4.4.2 release post link. Jan 17, 2017
class.frame-nonce-preview.php Inline Docs: Back to the Future, 4.4.0->4.3.0 Sep 6, 2016
class.jetpack-admin.php remove sync_dashboard usage Jul 25, 2016
class.jetpack-autoupdate.php Add Autoupdate Translations (#5953) Jan 4, 2017
class.jetpack-bbpress-json-api-compat.php Remove REST_API_REQUEST for some cheap post/meta whitelist calls Jul 6, 2016
class.jetpack-cli.php Sync: CLI: Update sync_queue command doc Dec 16, 2016
class.jetpack-client-server.php IDC: Add method to clear all IDC options Nov 8, 2016
class.jetpack-client.php Add in sslverify to the list of args that can be defined when calling… Dec 7, 2016
class.jetpack-connection-banner.php Remove obvious PollDaddy mentions Jan 16, 2017
class.jetpack-constants.php General: Support null in Jetpack_Constants Oct 18, 2016
class.jetpack-data.php Domain Check: add missing space before curly bracket Jun 17, 2016
class.jetpack-debugger.php General: fix e-mail as email according to WordPress terminology Nov 29, 2016
class.jetpack-error.php Jetpack: Big, structural change. Splitting off all classes into their… Jul 9, 2013
class.jetpack-heartbeat.php Update/heartbeat sync (#5389) Nov 9, 2016
class.jetpack-idc.php IDC: Fix double and and capitalization of IDC buttons Nov 9, 2016
class.jetpack-ixr-client.php IXR Client: Prevent direct access. See #3056 Apr 1, 2016
class.jetpack-jitm.php VideoPress: JITM should link to a place where they can upload a video… Jan 13, 2017
class.jetpack-modules-list-table.php VideoPress: Ensure the module is automatically activated when a quali… Nov 15, 2016
class.jetpack-network-sites-list-table.php Network admin: sites list Jun 13, 2016
class.jetpack-network.php Jetpack: Connect via Network Admin May 17, 2016
class.jetpack-options.php Connection Banner: Show 4.4 connection banner to all Jan 12, 2017
class.jetpack-post-images.php Add Global Post Object Juggling Jan 9, 2017
class.jetpack-signature.php REST API: Add Authentication method based on Jetpack Signatures (#5418) Jan 11, 2017
class.jetpack-tracks.php Tracks: prefix all wp-admin Jetpack events with `jetpack_wpa_` Aug 11, 2016
class.jetpack-twitter-cards.php Site Icon: Remove all traces (#3156) Nov 9, 2016
class.jetpack-user-agent.php If an invalid kind is passed in, reset it to default. (#4616) Aug 19, 2016
class.jetpack-xmlrpc-server.php Merge pull request #5293 from Automattic/update/idc-xmlrpc-method Oct 11, 2016
class.jetpack.php REST API: Add support for HTTP_CONTENT_TYPE in authentication Jan 13, 2017
class.json-api-endpoints.php return non public post types if is_post_type_allowed Jan 5, 2017
class.json-api.php API: Update endpoints to use moved SAL implementation Mar 16, 2016
class.photon.php Use array_replace instead of array_merge. (#6126) Jan 20, 2017
composer.json Change all instances of to Mar 21, 2016
functions.compat.php Open Graph: better video tags for Video posts including VideoPress vi… Nov 9, 2016 Documentation: add module name to all hooks. Oct 17, 2015 Add new file Apr 20, 2016
functions.opengraph.php OpenGraph: replace function getimagesize that doesn't work in an envi… Nov 11, 2016
functions.photon.php Photon: Default to HTTPS (#5534) Nov 8, 2016
gulpfile.js Widgets - Authors: add generic stylesheet to cover most cases. Remove… Dec 28, 2016
jetpack.php Bump master version to 4.6-alpha Jan 17, 2017
json-api-config.php REST API: declare the production/development version variables as glo… May 11, 2015
json-endpoints.php Whitelist api_cache field for settings endpoints Dec 28, 2016
locales.php Locales: avoid Fatal Errors when GlotPress is active. (#4081) Jun 9, 2016
package.json Bump master version to 4.6-alpha Jan 17, 2017
phpunit.xml.dist REST API: Add Authentication method based on Jetpack Signatures (#5418) Jan 11, 2017 Tools: lock Yarn version to 0.17.9 to avoid issues. (#5779) Nov 29, 2016
readme.txt Readme: update stable version. Jan 18, 2017
require-lib.php Main Jetpack class: remove unused parameter. Oct 2, 2015 Jetpack REST API (WP-API extensions): Add API reference (#4013) Sep 2, 2016 Merge pull request #5894 from Automattic/fix/testing-mailchimp Dec 16, 2016
uninstall.php moar WP standards fixes Jul 18, 2016
webpack.config.js GUI Tests: setup testing environment Nov 8, 2016
wpml-config.xml Add a `wpml-config.xml` file. Mar 3, 2014
yarn.lock Reverted yarn.lock to 4.4.2 state. Dec 8, 2016


License Code Climate

Jetpack is a WordPress plugin that supercharges your self-hosted WordPress site with the awesome cloud power of

For more information, check out

Get Started

To install the Jetpack plugin on your site, follow the instructions on this page.

Get Help

Do you need help installing Jetpack, or do you have questions about one of the Jetpack modules? You can search through our documentation here. If you don't find the answers you're looking for, you can send us an email or start a new thread in the support forums.

Installation from git repo

The master-stable branch of this repo contains an stable version with every JS and CSS file pre-built.

CD into your Plugins directory

$ git clone
$ cd jetpack
$ git checkout master-stable


Developers of all levels can help — whether you can barely recognize a filter (or don’t know what that means) or you’ve already authored your own plugins, there are ways for you to pitch in. Blast off:

Development workflow

The javascript and CSS components of this plugin's admin interface need to be built in order to get the runtime bundle (_inc/build/admin.js)

Recommended Environment

  • Node 6.x
  • npm 3.8.x
  • yarn 0.16.1

A note on Node versions used for the build tasks

We try to frequently keep the Node version we use up to date. So, eventually you may need to refresh your package dependencies (i.e., the node_modules directories). This is because some dependencies are built specifically for the Node version you used when you installed them (either by running yarn build or yarn).

We recommend usage of nvm for managing different Node versions on the same environment.

Note: If you have previously run the Jetpack build tasks (e.g. yarn build), and didn't come back to it for a long time, you can run this command before building again. Otherwise you may experience errors on the command line while trying to build.

$ yarn distclean

Start Development

  1. Make sure you have git, node, and npm installed and a working WordPress installation.
  2. Clone this repository inside your Plugins directory.

    $ git clone
    $ cd jetpack
  3. Install yarn package.

    npm install -g yarn@0.17.9
  4. Make sure the Jetpack plugin is active and run

    $ yarn build

    This will install npm dependencies and then build the files.

  5. Open /wp-admin/admin.php?page=jetpack in your browser.

Development build

The development build will create a build without minifying or deduping code. It will also install dependencies for you, so you don't need to npm install before it.

$ yarn build

Development build with changes monitoring (watch)

You can ran a watch process which will continuously watch the front-end JS and CSS/Sass for changes and rebuild accordingly. Instead of yarn build you'd use yarn watch.

Before running the watch process you may need to npm install the npm dependencies first if you didn't do it already.

$ yarn
$ yarn watch

Production build

The production build will generate minified files without duplicated code (resulting from dependencies) and also will generate the matching sourcemap files and language files.

$ yarn build-production

Unit-testing the JS Admin Page

You can run Mocha based tests for the Admin Page source code.

Standing on your jetpack directory, run

$ yarn
$ yarn test-client

Monitor our activity on this repository

Throughput Graph


The Jetpack Pit Crew is comprised of @dereksmart, @samhotchkiss, @zinigor, @eliorivero, and @rcoll.

Contributions have been and continue to be made by dozens of other Automatticians, like:

@georgestephanis, @jeffgolenski, @jessefriedman, @richardmuscat, @justinkropp, @aliso, @allendav, @alternatekev, @apeatling, @azaozz, @bazza, @beaulebens, @cfinke, @daniloercoli, @enejb, @eoigal, @ethitter, @gibrown, @hugobaeta, @jasmussen, @jblz, @jkudish, @johnjamesjacoby, @justinshreve, @koke, @kovshenin, @lancewillett, @lezama, @martinremy, @MichaelArestad, @mtias, @mcsf, @mdawaffe, @nickmomrik, @obenland, @oskosk, @pento, @rase-, @roccotripaldi, @skeltoac, @stephdau, @tmoorewp, @Viper007Bond, @xyu and @yoavf.

Our awesome happiness engineers are @jeherve, @richardmtl, @csonnek, @rcowles, @kraftbj, @chaselivingston, @jenhooks, @aheckler, @ntpixels, @macmanx2, @lschuyler, @seejacobscott, @davoraltman, @lamdayap, @rachelsquirrel, @scarstocea, @stefmattana, @jamilabreu, @cena, @v18, @bikedorkjon, @drpottex, @gregwp, @annezazuu, @danjjohnson, and @mbhthompson.

Interested in working on awesome open-source code all day? Join us!