Skip to content

Instantly share code, notes, and snippets.

@jamo
Created June 26, 2019 21:45
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jamo/5acea931050f67a5e450bd028e651195 to your computer and use it in GitHub Desktop.
Save jamo/5acea931050f67a5e450bd028e651195 to your computer and use it in GitHub Desktop.
We can make this file beautiful and searchable if this error is corrected: No commas found in this CSV file in line 0.
2017-01-08T00:00:00.000Z;1
2017-01-15T00:00:00.000Z;3
2017-01-22T00:00:00.000Z;3
2017-01-29T00:00:00.000Z;4
2017-02-05T00:00:00.000Z;4
2017-02-12T00:00:00.000Z;6
2017-02-19T00:00:00.000Z;7
2017-02-26T00:00:00.000Z;10
2017-03-05T00:00:00.000Z;10
2017-03-12T00:00:00.000Z;11
2017-03-19T00:00:00.000Z;11
2017-03-26T00:00:00.000Z;14
2017-04-02T00:00:00.000Z;14
2017-04-09T00:00:00.000Z;14
2017-04-16T00:00:00.000Z;14
2017-04-23T00:00:00.000Z;18
2017-04-30T00:00:00.000Z;21
2017-05-07T00:00:00.000Z;29
2017-05-14T00:00:00.000Z;30
2017-05-21T00:00:00.000Z;31
2017-05-28T00:00:00.000Z;32
2017-06-04T00:00:00.000Z;46
2017-06-11T00:00:00.000Z;49
2017-06-18T00:00:00.000Z;49
2017-06-25T00:00:00.000Z;50
2017-07-02T00:00:00.000Z;55
2017-07-09T00:00:00.000Z;59
2017-07-16T00:00:00.000Z;62
2017-07-23T00:00:00.000Z;63
2017-07-30T00:00:00.000Z;67
2017-08-06T00:00:00.000Z;70
2017-08-13T00:00:00.000Z;74
2017-08-20T00:00:00.000Z;75
2017-08-27T00:00:00.000Z;76
2017-09-03T00:00:00.000Z;80
2017-09-10T00:00:00.000Z;86
2017-09-17T00:00:00.000Z;90
2017-09-24T00:00:00.000Z;94
2017-10-01T00:00:00.000Z;101
2017-10-08T00:00:00.000Z;106
2017-10-15T00:00:00.000Z;109
2017-10-22T00:00:00.000Z;112
2017-10-29T00:00:00.000Z;116
2017-11-05T00:00:00.000Z;120
2017-11-12T00:00:00.000Z;125
2017-11-19T00:00:00.000Z;127
2017-11-26T00:00:00.000Z;134
2017-12-03T00:00:00.000Z;138
2017-12-10T00:00:00.000Z;140
2017-12-17T00:00:00.000Z;149
2017-12-24T00:00:00.000Z;153
2017-12-31T00:00:00.000Z;157
2018-01-07T00:00:00.000Z;163
2018-01-14T00:00:00.000Z;171
2018-01-21T00:00:00.000Z;177
2018-01-28T00:00:00.000Z;182
2018-02-04T00:00:00.000Z;187
2018-02-11T00:00:00.000Z;191
2018-02-18T00:00:00.000Z;194
2018-02-25T00:00:00.000Z;197
2018-03-04T00:00:00.000Z;204
2018-03-11T00:00:00.000Z;207
2018-03-18T00:00:00.000Z;217
2018-03-25T00:00:00.000Z;229
2018-04-01T00:00:00.000Z;237
2018-04-08T00:00:00.000Z;246
2018-04-15T00:00:00.000Z;255
2018-04-22T00:00:00.000Z;259
2018-04-29T00:00:00.000Z;269
2018-05-06T00:00:00.000Z;281
2018-05-13T00:00:00.000Z;293
2018-05-20T00:00:00.000Z;295
2018-05-27T00:00:00.000Z;300
2018-06-03T00:00:00.000Z;310
2018-06-10T00:00:00.000Z;315
2018-06-17T00:00:00.000Z;324
2018-06-24T00:00:00.000Z;330
2018-07-01T00:00:00.000Z;339
2018-07-08T00:00:00.000Z;351
2018-07-15T00:00:00.000Z;364
2018-07-22T00:00:00.000Z;373
2018-07-29T00:00:00.000Z;379
2018-08-05T00:00:00.000Z;387
2018-08-12T00:00:00.000Z;400
2018-08-19T00:00:00.000Z;410
2018-08-26T00:00:00.000Z;428
2018-09-02T00:00:00.000Z;435
2018-09-09T00:00:00.000Z;445
2018-09-16T00:00:00.000Z;463
2018-09-23T00:00:00.000Z;468
2018-09-30T00:00:00.000Z;476
2018-10-07T00:00:00.000Z;487
2018-10-14T00:00:00.000Z;499
2018-10-21T00:00:00.000Z;510
2018-10-28T00:00:00.000Z;519
2018-11-04T00:00:00.000Z;531
2018-11-11T00:00:00.000Z;541
2018-11-18T00:00:00.000Z;551
2018-11-25T00:00:00.000Z;559
2018-12-02T00:00:00.000Z;565
2018-12-09T00:00:00.000Z;574
2018-12-16T00:00:00.000Z;584
2018-12-23T00:00:00.000Z;591
2018-12-30T00:00:00.000Z;596
2019-01-06T00:00:00.000Z;612
2019-01-13T00:00:00.000Z;621
2019-01-20T00:00:00.000Z;641
2019-01-27T00:00:00.000Z;656
2019-02-03T00:00:00.000Z;670
2019-02-10T00:00:00.000Z;678
2019-02-17T00:00:00.000Z;689
2019-02-24T00:00:00.000Z;703
2019-03-03T00:00:00.000Z;724
2019-03-10T00:00:00.000Z;744
2019-03-17T00:00:00.000Z;756
2019-03-24T00:00:00.000Z;769
2019-03-31T00:00:00.000Z;780
2019-04-07T00:00:00.000Z;789
2019-04-14T00:00:00.000Z;800
2019-04-21T00:00:00.000Z;816
2019-04-28T00:00:00.000Z;828
2019-05-05T00:00:00.000Z;838
2019-05-12T00:00:00.000Z;852
2019-05-19T00:00:00.000Z;867
2019-05-26T00:00:00.000Z;878
2019-06-02T00:00:00.000Z;890
2019-06-09T00:00:00.000Z;899
2019-06-16T00:00:00.000Z;911
2019-06-23T00:00:00.000Z;925
2019-06-30T00:00:00.000Z;931
This file has been truncated, but you can view the full file.
{"results":[{"hits":[{"name":"gatsby-plugin-react-helmet","downloadsLast30Days":569901,"downloadsRatio":0.001248717698942149,"humanDownloadsLast30Days":"569.9k","popular":false,"version":"3.1.0","versions":{"1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:44.156Z","1.0.0-alpha17":"2017-06-02T18:44:55.378Z","1.0.0-alpha18":"2017-06-02T21:07:40.337Z","1.0.0-alpha19":"2017-06-03T02:02:25.714Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:42.298Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:37:56.788Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:38:59.739Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:33:53.870Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:18.331Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:52:00.134Z","1.0.0-alpha.22":"2017-06-08T04:27:54.741Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:09.084Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:24.988Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:43.597Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:17.645Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:25:53.277Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:07:22.686Z","1.0.0-beta.1":"2017-06-15T20:25:51.510Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:12.495Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:25.463Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:33.223Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:35:52.644Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:13.884Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:33.149Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:46.458Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:00.809Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:52.257Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:39.503Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:43.734Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:39.856Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:19.693Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:26.388Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:03.216Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:21:57.889Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:17.751Z","1.0.0-beta.6":"2017-07-02T06:43:01.932Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:40:51.067Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:34.246Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:32.756Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:07.000Z","1.0.0":"2017-07-06T19:43:27.495Z","1.0.1":"2017-07-06T19:48:54.115Z","1.0.2":"2017-08-11T20:02:57.279Z","1.0.3":"2017-08-19T01:52:22.014Z","1.1.0-alpha.22c8a6f1":"2017-08-24T16:12:22.197Z","2.0.0":"2017-08-25T18:06:57.977Z","1.0.4":"2017-08-25T18:21:50.303Z","1.0.5":"2017-08-30T22:58:39.554Z","1.0.6":"2017-08-31T23:41:32.488Z","1.1.0-alpha.76b32701":"2017-09-15T18:01:08.573Z","1.1.0-alpha.2e1e7782":"2017-09-15T18:12:40.931Z","1.1.0-alpha.93f2e2a2":"2017-09-16T11:50:12.936Z","1.1.0-alpha.5db7a275":"2017-09-16T13:46:06.671Z","1.1.0-alpha.1460dad9":"2017-09-18T12:28:48.079Z","1.0.7":"2017-10-13T18:14:42.501Z","1.0.8":"2017-10-16T20:07:36.824Z","2.0.1":"2017-11-20T19:34:56.791Z","2.0.2":"2017-11-29T00:09:36.076Z","2.0.3":"2017-12-10T00:45:26.505Z","2.1.0-alpha.f20ac0ed":"2018-01-11T18:39:01.546Z","2.1.0-alpha.a0a09c94":"2018-01-11T18:47:56.849Z","2.1.0-alpha.b50f2063":"2018-01-11T18:55:02.027Z","2.1.0-alpha.03b9df85":"2018-01-12T14:36:08.778Z","2.1.0-alpha.e9df8e57":"2018-01-12T14:47:24.328Z","2.1.0-alpha.8c822451":"2018-01-12T15:00:52.429Z","2.1.0-alpha.e5586916":"2018-01-12T15:22:25.558Z","2.1.0-alpha.9da1bca1":"2018-01-12T18:07:30.675Z","2.1.0-alpha.aeb05561":"2018-01-18T01:53:02.366Z","2.1.0-alpha.7b47e00d":"2018-01-18T02:10:03.272Z","2.1.0-alpha.f5c1df61":"2018-01-18T17:30:24.847Z","2.1.0-alpha.926cb6da":"2018-01-21T01:42:16.944Z","2.1.0-alpha.3f307d61":"2018-01-21T02:22:55.837Z","2.0.4":"2018-01-23T19:18:24.249Z","2.1.0-alpha.d1544e1b":"2018-01-25T00:14:23.273Z","2.1.0-alpha.53bbd4cd":"2018-02-10T20:34:40.736Z","2.1.0-alpha.2b695217":"2018-02-10T22:36:44.842Z","2.1.0-alpha.32ef58da":"2018-02-11T03:44:46.230Z","2.1.0-alpha.5182142b":"2018-02-11T04:12:31.969Z","2.0.5":"2018-02-13T01:12:01.459Z","2.1.0-alpha.6ab84875":"2018-02-15T02:06:48.149Z","2.1.0-alpha.9d4de2a6":"2018-02-15T20:32:25.177Z","2.1.0-alpha.9e381f74":"2018-02-15T21:12:34.411Z","2.1.0-alpha.dd504153":"2018-02-15T21:29:41.704Z","2.1.0-alpha.b68b7f5c":"2018-02-15T22:00:46.659Z","2.1.0-alpha.bb258cb5":"2018-02-16T00:29:41.113Z","2.1.0-alpha.e28a1c8e":"2018-02-16T01:11:05.907Z","2.1.0-alpha.067e672c":"2018-02-17T02:45:13.031Z","2.1.0-alpha.d0b8dd9e":"2018-02-17T19:05:09.970Z","2.0.6-0":"2018-02-17T19:31:06.205Z","2.1.0-alpha.e66c6c9c":"2018-02-27T01:24:55.528Z","2.0.6":"2018-02-28T20:40:03.450Z","2.1.0-alpha.2cbec6d6":"2018-03-03T06:46:42.313Z","2.0.6-1":"2018-03-03T07:24:00.850Z","2.1.0-alpha.f98688ee":"2018-03-07T02:25:48.811Z","2.0.7":"2018-03-07T18:06:21.724Z","2.1.0-alpha.9fe50b00":"2018-03-08T03:04:25.272Z","2.0.8":"2018-03-16T01:51:01.014Z","2.1.0-alpha.34eda94b":"2018-03-17T21:22:19.040Z","2.1.0-alpha.12622d64":"2018-03-18T00:00:14.276Z","2.1.0-alpha.84bd71b4":"2018-03-18T00:40:04.245Z","2.1.0-alpha.6ad61a13":"2018-03-21T17:49:38.730Z","2.1.0-alpha.5f47082e":"2018-03-23T22:47:44.147Z","2.0.6-2":"2018-03-23T23:19:04.881Z","2.1.0-alpha.95fcd4af":"2018-03-29T02:22:36.659Z","2.1.0-alpha.20252dc3":"2018-03-29T02:44:22.329Z","2.0.9":"2018-04-01T03:05:03.558Z","2.0.10":"2018-04-02T22:39:35.217Z","2.1.0-alpha.4a09f745":"2018-04-05T22:14:56.998Z","2.1.0-alpha.76793cd8":"2018-04-07T22:12:24.508Z","2.0.11":"2018-04-19T16:33:12.165Z","2.1.0-alpha.5c9569c0":"2018-04-19T16:57:06.281Z","2.1.0-alpha.523a4286":"2018-04-19T23:52:14.019Z","2.1.0-alpha.5421f383":"2018-04-20T06:53:01.636Z","2.1.0-alpha.e9c3027b":"2018-04-20T17:56:42.163Z","2.0.12-0":"2018-04-22T01:54:08.007Z","2.0.12-1":"2018-04-25T16:25:24.266Z","2.0.12-2":"2018-04-26T18:19:41.288Z","2.0.12-3":"2018-05-11T21:43:53.516Z","2.0.12-5":"2018-05-15T19:55:10.480Z","2.0.12-6":"2018-05-31T14:04:32.091Z","2.0.12-7":"2018-05-31T17:16:50.094Z","2.0.12-8":"2018-06-11T15:23:17.203Z","2.0.12-9":"2018-06-11T16:55:10.804Z","3.0.0-alpha.1":"2018-06-16T19:08:54.485Z","3.0.0-alpha.8ac171a1":"2018-06-16T19:25:32.562Z","3.0.0-alpha.e328d33f":"2018-06-16T19:33:02.139Z","3.0.0-alpha.80a21f04":"2018-06-16T19:37:14.542Z","3.0.0-alpha.2":"2018-06-16T23:33:00.514Z","3.0.0-beta.0":"2018-06-17T06:53:58.227Z","3.0.0-beta.1":"2018-06-17T08:12:55.966Z","3.0.0-beta.2":"2018-06-20T20:45:33.456Z","3.0.0-beta.3":"2018-06-27T12:45:28.685Z","3.0.0-beta.4":"2018-07-21T16:00:11.116Z","3.0.0-rc.0":"2018-08-21T00:58:45.035Z","3.0.0-rc.1":"2018-08-29T18:29:02.257Z","3.0.0":"2018-09-17T20:42:13.010Z","3.0.1":"2018-10-29T15:24:07.396Z","3.0.2":"2018-11-12T22:05:22.424Z","3.0.3":"2018-11-29T12:14:00.077Z","3.0.4":"2018-12-01T22:52:42.931Z","3.0.5":"2018-12-21T13:06:32.070Z","3.0.6":"2019-02-01T12:25:14.983Z","3.0.7":"2019-02-25T06:01:27.215Z","3.0.8-alpha.0":"2019-03-04T07:13:51.571Z","3.0.8":"2019-03-05T20:25:41.541Z","3.0.9":"2019-03-11T15:24:39.433Z","3.0.10":"2019-03-16T17:06:43.428Z","3.0.11":"2019-03-25T15:27:11.560Z","3.0.12":"2019-04-04T19:07:46.990Z","3.1.0":"2019-06-20T13:49:09.227Z"},"tags":{"latest":"3.1.0"},"description":"Manage document head data with react-helmet. Provides drop-in server rendering support for Gatsby.","dependencies":{"@babel/runtime":"^7.0.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-react-helmet","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-react-helmet","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-react-helmet","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-react-helmet\n\nProvides drop-in support for server rendering data added with\n[React Helmet](https://github.com/nfl/react-helmet).\n\nReact Helmet is a component which lets you control your document head using\ntheir React component.\n\nWith this plugin, attributes you add in their component, e.g. title, meta\nattributes, etc. will get added to the static HTML pages Gatsby builds.\n\nThis is important not just for site viewers, but also for SEO -- title and description metadata stored in the document head is a key component used by Google in determining placement in search results.\n\n## Install\n\n`npm install --save gatsby-plugin-react-helmet react-helmet`\n\n## How to use\n\nJust add the plugin to the plugins array in your `gatsby-config.js`\n\n```javascript\nplugins: [`gatsby-plugin-react-helmet`]\n```\n\n## Titles don't appear when opening in the background, while using `gatsby-plugin-offline`\n\nIf you're using `gatsby-plugin-offline`, you might notice that when opening a link in the background, the title doesn't appear in the tab bar until switching to that tab. This is an [upstream issue with React Helmet](https://github.com/nfl/react-helmet/issues/315); however, it can be worked around by passing the `defer={false}` prop into your `Helmet` component. For example:\n\n```javascript\n<Helmet title=\"foo bar\" defer={false} />\n```\n\n## Compatibility with React 16.8 useEffect hook\n\nIf you are using this plugin with React hooks, you may notice some errors like `maximum call stack size exceeded`. To ensure everything is running smoothly when using these technologies together, make sure to validate the following:\n\n- You have updated to the latest version of `gatsby-plugin-react-helmet`\n- You are using version 6.0.0-beta or later of `react-helmet`\n- You are importing React Helmet using `import { Helmet } from 'react-helmet'` rather than the old `import Helmet from 'react-helmet'`\n\n## Examples\n\n- [GatsbyJS.org](https://github.com/gatsbyjs/gatsby/blob/master/www/src/components/site-metadata.js)\n- [Jason Lengstorf personal website](https://github.com/jlengstorf/gatsby-theme-jason-blog/blob/master/src/components/SEO/SEO.js)\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","favicon","react-helmet","seo","document","head","title","meta","link","script","base","noscript","style"],"computedKeywords":[],"computedMetadata":{},"created":1496353064156,"modified":1561038553180,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:06.746Z","_searchInternal":{"concatenatedName":"gatsbypluginreacthelmet","alternativeNames":["gatsbypluginreacthelmet","gatsby plugin react helmet","gatsby-plugin-react-helmet"],"downloadsMagnitude":6,"jsDelivrPopularity":1},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-react-helmet/CHANGELOG.md","jsDelivrHits":1706,"objectID":"gatsby-plugin-react-helmet","_highlightResult":{"name":{"value":"gatsby-plugin-react-helmet","matchLevel":"none","matchedWords":[]},"description":{"value":"Manage document head data with react-helmet. Provides drop-in server rendering support for Gatsby.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"favicon","matchLevel":"none","matchedWords":[]},{"value":"react-helmet","matchLevel":"none","matchedWords":[]},{"value":"seo","matchLevel":"none","matchedWords":[]},{"value":"document","matchLevel":"none","matchedWords":[]},{"value":"head","matchLevel":"none","matchedWords":[]},{"value":"title","matchLevel":"none","matchedWords":[]},{"value":"meta","matchLevel":"none","matchedWords":[]},{"value":"link","matchLevel":"none","matchedWords":[]},{"value":"script","matchLevel":"none","matchedWords":[]},{"value":"base","matchLevel":"none","matchedWords":[]},{"value":"noscript","matchLevel":"none","matchedWords":[]},{"value":"style","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginreacthelmet","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin react helmet","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-react-helmet","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-sharp","downloadsLast30Days":531177,"downloadsRatio":0.001163869024920107,"humanDownloadsLast30Days":"531.2k","popular":false,"version":"2.2.1","versions":{"1.0.0-alpha11-alpha.f46304ad":"2017-02-06T19:31:26.367Z","1.0.0-alpha11-alpha.3e341373":"2017-02-06T20:29:49.107Z","1.0.0-alpha11-alpha.c623e1cc":"2017-02-06T23:31:35.701Z","1.0.0-alpha11-alpha.267af45c":"2017-02-07T18:26:13.685Z","1.0.0-alpha11-alpha.2a65312c":"2017-02-07T19:29:48.423Z","1.0.0-alpha11":"2017-02-07T20:38:29.724Z","1.0.0-alpha12-alpha.1dc37e8b":"2017-02-10T18:39:04.258Z","1.0.0-alpha12-alpha.117c94f8":"2017-02-14T00:02:29.165Z","1.0.0-alpha12-alpha.373740a8":"2017-02-14T00:36:20.578Z","1.0.0-alpha12-alpha.bdc68bfd":"2017-02-17T22:20:13.546Z","1.0.0-alpha12-alpha.faff3fa9":"2017-02-17T22:26:14.288Z","1.0.0-alpha12-alpha.a82bd105":"2017-02-18T00:07:25.733Z","1.0.0-alpha12-alpha.d452aed2":"2017-02-20T19:10:10.150Z","1.0.0-alpha12-alpha.40e6a4d1":"2017-02-20T19:29:51.950Z","1.0.0-alpha12-alpha.f4d91ef3":"2017-02-20T20:05:30.947Z","1.0.0-alpha12-alpha.659f61a4":"2017-02-20T23:23:45.463Z","1.0.0-alpha12-alpha.e1a3cfed":"2017-02-20T23:29:24.938Z","1.0.0-alpha12-alpha.70258e9c":"2017-02-22T00:46:31.995Z","1.0.0-alpha12":"2017-02-22T01:12:42.966Z","1.0.0-alpha12-alpha.209952c2":"2017-02-22T18:43:01.533Z","1.0.0-alpha12-alpha.8f812d13":"2017-02-22T19:08:54.282Z","1.0.0-alpha12-alpha.10a12536":"2017-02-22T22:35:32.704Z","1.0.0-alpha12-alpha.d82af48f":"2017-03-06T18:43:05.561Z","1.0.0-alpha12-alpha.9a2a3c59":"2017-03-06T19:06:24.011Z","1.0.0-alpha12-alpha.72e8aced":"2017-03-06T20:02:12.734Z","1.0.0-alpha12-alpha.04c05494":"2017-03-06T20:30:49.235Z","1.0.0-alpha12-alpha.352b3448":"2017-03-06T22:18:22.346Z","1.0.0-alpha12-alpha.f205e4d4":"2017-03-06T22:26:04.780Z","1.0.0-alpha12-alpha.3a216f9f":"2017-03-07T21:32:59.853Z","1.0.0-alpha12-alpha.3f98b323":"2017-03-08T03:20:35.763Z","1.0.0-alpha12-alpha.cfc93fc7":"2017-03-08T03:46:25.716Z","1.0.0-alpha12-alpha.e22dfd31":"2017-03-13T19:58:05.896Z","1.0.0-alpha12-alpha.3e72cc6f":"2017-03-13T20:13:43.575Z","1.0.0-alpha12-alpha.c8cb2100":"2017-03-13T22:29:22.970Z","1.0.0-alpha12-alpha.4ba57c84":"2017-03-14T19:05:12.687Z","1.0.0-alpha12-alpha.a7e9d9c0":"2017-03-14T19:18:24.585Z","1.0.0-alpha12-alpha.75167f51":"2017-03-15T01:04:22.814Z","1.0.0-alpha12-alpha.4af3700e":"2017-03-15T23:20:25.301Z","1.0.0-alpha12-alpha.dfc40de1":"2017-03-17T22:35:25.023Z","1.0.0-alpha12-alpha.f32320b1":"2017-03-20T21:35:07.547Z","1.0.0-alpha12-alpha.547467c5":"2017-03-20T21:48:16.703Z","1.0.0-alpha12-alpha.3d7a5eb6":"2017-03-21T01:49:53.573Z","1.0.0-alpha12-alpha.b3dbfd2b":"2017-03-21T18:21:58.102Z","1.0.0-alpha12-alpha.4575c38e":"2017-03-21T20:12:48.077Z","1.0.0-alpha12-alpha.1b1c742b":"2017-03-21T22:05:26.242Z","1.0.0-alpha12-alpha.545e4a03":"2017-03-21T22:09:14.783Z","1.0.0-alpha12-alpha.4f30010e":"2017-03-21T22:12:22.586Z","1.0.0-alpha12-alpha.e1f27e45":"2017-03-23T18:18:30.185Z","1.0.0-alpha12-alpha.d37d5d32":"2017-03-24T23:55:57.353Z","1.0.0-alpha12-alpha.81355cc0":"2017-03-27T16:11:55.722Z","1.0.0-alpha12-alpha.dbf1a599":"2017-03-27T16:28:38.598Z","1.0.0-alpha12-alpha.10141fd4":"2017-03-27T17:58:57.196Z","1.0.0-alpha12-alpha.6e55cfe7":"2017-03-27T18:40:02.635Z","1.0.0-alpha12-alpha.d7d6ef64":"2017-03-27T22:38:26.071Z","1.0.0-alpha12-alpha.dffeaa1f":"2017-03-28T13:15:14.486Z","1.0.0-alpha12-alpha.c155b956":"2017-03-28T13:39:25.121Z","1.0.0-alpha12-alpha.80e93d69":"2017-03-28T14:40:14.740Z","1.0.0-alpha12-alpha.4e93d2cf":"2017-03-28T19:06:32.429Z","1.0.0-alpha12-alpha.351006cf":"2017-03-28T22:13:20.410Z","1.0.0-alpha12-alpha.0b4b912a":"2017-04-10T22:34:12.156Z","1.0.0-alpha12-alpha.1fdb9004":"2017-04-11T00:38:28.763Z","1.0.0-alpha12-alpha.51e1923f":"2017-04-18T18:41:25.164Z","1.0.0-alpha12-alpha.571b4bbd":"2017-04-19T00:37:16.868Z","1.0.0-alpha12-alpha.c0bba969":"2017-04-19T20:36:50.004Z","1.0.0-alpha12-alpha.89d880ee":"2017-04-21T00:30:43.461Z","1.0.0-alpha12-alpha.b66dd8d3":"2017-04-21T00:37:29.393Z","1.0.0-alpha12-alpha.577b9e82":"2017-04-22T00:34:43.232Z","1.0.0-alpha12-alpha.8370739a":"2017-04-23T03:15:45.500Z","1.0.0-alpha13":"2017-04-24T22:09:20.915Z","1.0.0-alpha13-alpha.c6e3cbb2":"2017-04-26T19:36:54.787Z","1.0.0-alpha13-alpha.91dbde54":"2017-04-26T21:08:49.702Z","1.0.0-alpha13-alpha.ec011f40":"2017-04-27T00:58:05.867Z","1.0.0-alpha13-alpha.537d11c6":"2017-04-27T04:11:27.543Z","1.0.0-alpha13-alpha.0189ea42":"2017-04-28T22:29:29.027Z","1.0.0-alpha13-alpha.215cabc2":"2017-05-01T23:02:07.337Z","1.0.0-alpha13-alpha.526805ab":"2017-05-03T22:17:32.199Z","1.0.0-alpha13-alpha.0f0222b8":"2017-05-04T16:09:19.244Z","1.0.0-alpha13-alpha.7d186994":"2017-05-04T16:29:42.136Z","1.0.0-alpha13-alpha.a3ef328b":"2017-05-04T19:51:58.332Z","1.0.0-alpha13-alpha.84bd4b24":"2017-05-04T20:33:26.663Z","1.0.0-alpha13-alpha.7efda7f0":"2017-05-04T23:03:14.866Z","1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:06.401Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:41.080Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:32:18.531Z","1.0.0-alpha14":"2017-05-06T01:18:17.311Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:04.828Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:08.292Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:11.382Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:44:03.261Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:55:05.197Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:12:04.424Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:34.673Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:34:08.572Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:28.560Z","1.0.0-alpha15":"2017-05-16T09:12:46.624Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:30.923Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:29:55.994Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:39.446Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:22:05.234Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:36.424Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:29.107Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:29:52.051Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:05:56.553Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:27:07.859Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:42:51.282Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:40:04.845Z","1.0.0-alpha16":"2017-05-26T09:30:26.498Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:44.825Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:47:45.139Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:22.294Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:22.998Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:37:52.110Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:16:48.203Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:33.264Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:45.172Z","1.0.0-alpha17":"2017-06-02T18:44:55.632Z","1.0.0-alpha18":"2017-06-02T20:32:28.874Z","1.0.0-alpha19":"2017-06-03T02:02:27.755Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:45.044Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:37:58.709Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:39:04.021Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:33:57.330Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:18.318Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:52:00.477Z","1.0.0-alpha.22":"2017-06-08T04:27:54.914Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:09.170Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:25.206Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:43.899Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:17.714Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:25:55.528Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:07:24.196Z","1.0.0-alpha.23":"2017-06-14T00:30:13.090Z","1.0.0-beta.1":"2017-06-15T20:25:51.587Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:12.727Z","1.0.0-beta.2":"2017-06-16T18:00:28.168Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:25.684Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:33.295Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:35:52.645Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:16.250Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:37.114Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:45.659Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:03.698Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:53.456Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:40.338Z","1.0.0-beta.4":"2017-06-23T23:12:16.907Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:45.563Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:41.266Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:21.446Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:28.363Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:05.403Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:21:58.271Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:20.656Z","1.0.0-beta.6":"2017-07-02T06:43:01.789Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:40:54.120Z","1.0.0-beta.7":"2017-07-04T00:12:33.231Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:36.253Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:35.200Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:09.561Z","1.0.0":"2017-07-06T19:43:29.881Z","1.0.1":"2017-07-06T19:48:56.785Z","1.3.0":"2017-07-19T06:31:55.264Z","1.4.1":"2017-07-26T17:33:51.261Z","1.5.0":"2017-07-27T19:27:40.233Z","1.6.0":"2017-08-04T17:58:39.866Z","1.6.1":"2017-08-11T14:03:15.032Z","1.6.2":"2017-08-19T01:52:26.663Z","1.7.0-alpha.22c8a6f1":"2017-08-24T16:12:26.154Z","2.0.0":"2017-08-25T18:06:58.903Z","1.6.3":"2017-08-25T18:21:51.856Z","1.6.4":"2017-08-30T22:58:39.784Z","1.6.5":"2017-08-31T23:41:33.882Z","1.6.6":"2017-09-01T22:07:30.447Z","1.6.7":"2017-09-07T14:24:27.411Z","1.7.0-alpha.76b32701":"2017-09-15T18:01:13.934Z","1.7.0-alpha.2e1e7782":"2017-09-15T18:12:46.725Z","1.7.0-alpha.93f2e2a2":"2017-09-16T11:50:16.398Z","1.7.0-alpha.5db7a275":"2017-09-16T13:46:09.207Z","1.7.0-alpha.1460dad9":"2017-09-18T12:28:58.587Z","1.6.8":"2017-09-22T21:26:46.035Z","1.6.9":"2017-10-07T04:08:19.127Z","1.6.10":"2017-10-20T16:34:08.395Z","1.6.11":"2017-10-25T20:07:54.064Z","1.6.12":"2017-10-26T06:26:19.194Z","1.6.13":"2017-10-26T21:46:25.169Z","1.6.14":"2017-11-01T16:46:59.292Z","1.6.15":"2017-11-01T18:01:45.810Z","1.6.17":"2017-11-01T20:29:31.690Z","1.6.18":"2017-11-02T18:06:47.016Z","1.6.19":"2017-11-03T18:13:47.375Z","1.6.20":"2017-11-07T08:15:49.764Z","1.6.21":"2017-11-14T17:49:43.591Z","1.6.22":"2017-11-29T00:09:39.126Z","1.6.23":"2017-12-10T00:45:30.892Z","1.6.24":"2017-12-14T19:57:58.586Z","1.7.0-alpha.f20ac0ed":"2018-01-11T18:39:09.842Z","1.7.0-alpha.a0a09c94":"2018-01-11T18:48:02.892Z","1.7.0-alpha.b50f2063":"2018-01-11T18:55:07.575Z","1.7.0-alpha.03b9df85":"2018-01-12T14:36:15.766Z","1.7.0-alpha.e9df8e57":"2018-01-12T14:47:30.951Z","1.7.0-alpha.8c822451":"2018-01-12T15:00:57.919Z","1.7.0-alpha.e5586916":"2018-01-12T15:22:31.404Z","1.7.0-alpha.9da1bca1":"2018-01-12T18:07:36.744Z","1.6.25":"2018-01-16T20:09:21.656Z","1.7.0-alpha.aeb05561":"2018-01-18T01:53:07.655Z","1.7.0-alpha.7b47e00d":"2018-01-18T02:10:08.306Z","1.7.0-alpha.f5c1df61":"2018-01-18T17:30:32.994Z","1.7.0-alpha.926cb6da":"2018-01-21T01:42:22.854Z","1.7.0-alpha.3f307d61":"2018-01-21T02:23:02.880Z","1.6.26":"2018-01-23T19:19:04.776Z","1.7.0-alpha.d1544e1b":"2018-01-25T00:14:29.131Z","1.6.27":"2018-01-25T22:22:58.989Z","1.7.0-alpha.53bbd4cd":"2018-02-10T20:34:51.060Z","1.7.0-alpha.2b695217":"2018-02-10T22:36:51.166Z","1.7.0-alpha.32ef58da":"2018-02-11T03:44:50.957Z","1.7.0-alpha.5182142b":"2018-02-11T04:12:42.137Z","1.6.28":"2018-02-13T01:12:06.078Z","1.7.0-alpha.6ab84875":"2018-02-15T02:06:53.970Z","1.7.0-alpha.9d4de2a6":"2018-02-15T20:32:32.206Z","1.7.0-alpha.9e381f74":"2018-02-15T21:12:40.634Z","1.7.0-alpha.dd504153":"2018-02-15T21:29:49.200Z","1.7.0-alpha.b68b7f5c":"2018-02-15T22:00:53.355Z","1.7.0-alpha.bb258cb5":"2018-02-16T00:29:46.321Z","1.7.0-alpha.e28a1c8e":"2018-02-16T01:11:11.525Z","1.6.29":"2018-02-16T20:44:25.485Z","1.6.30":"2018-02-16T23:22:34.815Z","1.7.0-alpha.067e672c":"2018-02-17T02:45:19.886Z","1.7.0-alpha.d0b8dd9e":"2018-02-17T19:05:17.581Z","1.6.29-0":"2018-02-17T19:31:13.029Z","2.0.0-alpha.2":"2018-02-17T20:00:22.226Z","2.0.0-alpha.3":"2018-02-17T20:02:26.863Z","2.0.0-alpha.4":"2018-02-17T20:07:54.460Z","1.6.31":"2018-02-19T19:39:38.267Z","1.6.32":"2018-02-21T20:41:21.638Z","1.6.33":"2018-02-22T23:37:07.538Z","1.6.34":"2018-02-24T00:10:30.746Z","1.6.35":"2018-02-26T23:28:10.806Z","2.0.0-alpha.e66c6c9c":"2018-02-27T01:25:04.177Z","1.6.36":"2018-02-28T06:37:52.043Z","1.6.37":"2018-02-28T20:40:09.266Z","2.0.0-alpha.2cbec6d6":"2018-03-03T06:46:49.171Z","2.0.0-alpha.5":"2018-03-03T07:24:09.902Z","1.6.38":"2018-03-04T07:23:36.278Z","1.6.39":"2018-03-05T19:55:07.725Z","2.0.0-alpha.f98688ee":"2018-03-07T02:25:54.958Z","2.0.0-alpha.6":"2018-03-07T02:34:42.799Z","1.6.40":"2018-03-07T18:06:27.670Z","2.0.0-alpha.7":"2018-03-07T23:55:10.751Z","2.0.0-alpha.9fe50b00":"2018-03-08T03:04:30.469Z","1.6.41":"2018-03-08T05:23:53.348Z","2.0.0-alpha.34eda94b":"2018-03-17T21:22:24.815Z","2.0.0-alpha.12622d64":"2018-03-18T00:00:22.806Z","2.0.0-alpha.84bd71b4":"2018-03-18T00:40:13.226Z","2.0.0-alpha.6ad61a13":"2018-03-21T17:49:45.954Z","2.0.0-alpha.5f47082e":"2018-03-23T22:47:52.943Z","2.0.0-alpha.8":"2018-03-23T23:19:11.415Z","2.0.0-alpha.95fcd4af":"2018-03-29T02:22:45.884Z","2.0.0-alpha.20252dc3":"2018-03-29T02:44:32.260Z","2.0.0-alpha.4a09f745":"2018-04-05T22:15:02.045Z","2.0.0-alpha.76793cd8":"2018-04-07T22:12:32.706Z","1.6.42":"2018-04-11T01:35:13.873Z","1.6.43":"2018-04-19T16:33:18.224Z","2.0.0-alpha.5c9569c0":"2018-04-19T16:57:16.294Z","2.0.0-alpha.523a4286":"2018-04-19T23:52:23.740Z","2.0.0-alpha.5421f383":"2018-04-20T06:53:10.282Z","2.0.0-alpha.e9c3027b":"2018-04-20T17:56:51.003Z","2.0.0-alpha.9":"2018-04-22T01:54:19.040Z","2.0.0-alpha.10":"2018-04-25T16:25:34.016Z","2.0.0-alpha.11":"2018-04-26T18:19:50.482Z","1.6.44":"2018-05-01T06:24:18.267Z","2.0.0-alpha.12":"2018-05-02T23:03:34.628Z","2.0.0-alpha.13":"2018-05-11T21:44:05.856Z","2.0.0-alpha.15":"2018-05-15T20:15:22.300Z","2.0.0-alpha.16":"2018-05-18T15:35:21.559Z","1.6.45":"2018-05-31T12:38:31.988Z","2.0.0-alpha.17":"2018-05-31T13:11:30.244Z","2.0.0-alpha.18":"2018-05-31T14:05:18.377Z","2.0.0-alpha.19":"2018-05-31T17:17:17.289Z","1.6.46":"2018-05-31T18:46:16.102Z","1.6.47":"2018-06-06T22:18:53.989Z","2.0.0-alpha.20":"2018-06-11T15:23:55.389Z","2.0.0-alpha.21":"2018-06-11T16:55:26.562Z","2.0.0-alpha.22":"2018-06-16T19:09:05.744Z","2.0.0-alpha.8ac171a1":"2018-06-16T19:25:39.760Z","2.0.0-alpha.e328d33f":"2018-06-16T19:33:05.316Z","2.0.0-alpha.80a21f04":"2018-06-16T19:37:17.935Z","2.0.0-alpha.23":"2018-06-16T23:33:01.237Z","1.6.48":"2018-06-17T01:53:15.121Z","2.0.0-beta.0":"2018-06-17T06:54:00.349Z","2.0.0-beta.1":"2018-06-17T08:12:58.429Z","2.0.0-beta.2":"2018-06-20T20:45:35.620Z","2.0.0-beta.3":"2018-07-11T02:58:18.183Z","2.0.0-beta.5":"2018-07-13T02:25:24.805Z","2.0.0-beta.6":"2018-07-20T14:48:17.290Z","2.0.0-beta.7":"2018-07-21T16:00:12.822Z","2.0.0-beta.8":"2018-08-16T13:11:19.187Z","2.0.0-beta.9":"2018-08-16T14:54:08.239Z","2.0.0-rc.0":"2018-08-21T00:58:49.711Z","2.0.0-rc.1":"2018-08-29T17:08:13.832Z","2.0.0-rc.2":"2018-08-29T18:29:08.955Z","2.0.0-rc.3":"2018-08-31T15:11:34.807Z","2.0.0-rc.5":"2018-09-11T10:48:53.736Z","2.0.0-rc.6":"2018-09-11T11:23:10.377Z","2.0.0-rc.7":"2018-09-11T12:12:15.640Z","2.0.5":"2018-09-17T20:42:19.249Z","2.0.6":"2018-10-03T17:58:53.828Z","2.0.7":"2018-10-16T00:45:43.842Z","2.0.8":"2018-10-24T17:05:40.036Z","2.0.9":"2018-10-29T15:24:11.334Z","2.0.10":"2018-10-29T16:19:19.315Z","2.0.11":"2018-11-01T15:35:19.514Z","2.0.12":"2018-11-06T01:40:04.265Z","2.0.13":"2018-11-21T13:14:34.610Z","2.0.14":"2018-11-29T12:14:03.094Z","2.0.15":"2018-12-07T16:14:55.963Z","2.0.16":"2018-12-21T13:06:32.222Z","2.0.17":"2018-12-27T16:26:10.564Z","2.0.18":"2019-01-23T15:14:16.228Z","2.0.19":"2019-01-29T15:20:00.302Z","2.0.20":"2019-02-01T12:25:17.871Z","2.0.21":"2019-02-19T18:49:28.994Z","2.0.22":"2019-02-22T14:59:40.065Z","2.0.23":"2019-02-28T11:32:21.345Z","2.0.24-alpha.0":"2019-03-04T07:13:56.741Z","2.0.24":"2019-03-04T09:43:44.184Z","2.0.25":"2019-03-05T21:30:32.455Z","2.0.26":"2019-03-11T13:49:37.136Z","2.0.27":"2019-03-11T15:25:00.692Z","2.0.28":"2019-03-12T20:23:12.222Z","2.0.29":"2019-03-15T15:57:54.518Z","2.0.30":"2019-03-20T14:43:11.298Z","2.0.31":"2019-03-25T20:39:53.051Z","2.0.32":"2019-03-27T14:04:41.595Z","2.0.33":"2019-04-09T22:45:58.474Z","2.0.34":"2019-04-11T20:43:14.422Z","2.0.35":"2019-04-17T01:40:56.377Z","2.0.36":"2019-05-03T13:05:31.043Z","2.0.37":"2019-05-09T21:19:50.486Z","2.1.0":"2019-05-23T15:33:28.650Z","2.1.1":"2019-05-24T22:12:55.760Z","2.1.2":"2019-05-29T11:52:40.499Z","2.1.3":"2019-05-31T07:41:39.213Z","2.1.4":"2019-06-12T11:10:23.085Z","2.1.5":"2019-06-12T23:02:09.003Z","2.1.6":"2019-06-18T12:41:37.806Z","2.1.7-cloud-image-sharp.6":"2019-06-18T18:23:57.571Z","2.1.7-cloud-image-sharp.7":"2019-06-18T18:39:22.749Z","2.1.7-reporter-npm.9":"2019-06-18T20:12:47.643Z","2.1.7":"2019-06-18T20:53:47.174Z","2.1.8-reporter-npm.8":"2019-06-19T08:22:07.687Z","2.1.8":"2019-06-19T09:38:24.975Z","2.1.9":"2019-06-19T10:16:15.050Z","2.2.0":"2019-06-20T13:49:13.971Z","2.2.1":"2019-06-21T08:59:13.528Z"},"tags":{"latest":"2.2.1","cloud-image-sharp":"2.1.7-cloud-image-sharp.7","reporter-npm":"2.1.8-reporter-npm.8"},"description":"Wrapper of the Sharp image manipulation library for Gatsby plugins","dependencies":{"@babel/runtime":"^7.0.0","async":"^2.1.2","bluebird":"^3.5.0","fs-extra":"^7.0.0","imagemin":"^6.0.0","imagemin-mozjpeg":"^8.0.0","imagemin-pngquant":"^6.0.0","imagemin-webp":"^5.0.0","lodash":"^4.17.10","mini-svg-data-uri":"^1.0.0","potrace":"^2.1.1","probe-image-size":"^4.0.0","progress":"^2.0.3","semver":"^5.6.0","sharp":"^0.22.1","svgo":"^1.2.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-sharp","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-sharp","head":"c9ea948f068c3ba0be11adae4570900445be0922","branch":"c9ea948f068c3ba0be11adae4570900445be0922"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-sharp","head":"c9ea948f068c3ba0be11adae4570900445be0922"},"gitHead":"c9ea948f068c3ba0be11adae4570900445be0922","readme":"# gatsby-plugin-sharp\n\nExposes several image processing functions built on the\n[Sharp image processing library](https://github.com/lovell/sharp). This is a\nlow-level helper plugin generally used by other Gatsby plugins. You generally\nshouldn't be using this directly but might find it helpful if doing very custom\nimage processing.\n\nIt aims to provide excellent out-of-the box settings for processing common web\nimage formats.\n\nFor JPEGs it generates progressive images with a default quality level of 50.\n\nFor PNGs it uses [pngquant](https://github.com/pornel/pngquant) to compress\nimages. By default it uses a quality setting of [50-75]. The `pngCompressionSpeed`\nvalue is a speed/quality trade-off from 1 (brute-force) to 10 (fastest). Speed\n10 has 5% lower quality, but is 8 times faster than the default (4). In most\ncases you should stick with the default, but if you have very large numbers\nof PNGs then it can significantly reduce build times.\n\n## Install\n\n`npm install --save gatsby-plugin-sharp`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nplugins: [\n {\n resolve: `gatsby-plugin-sharp`,\n options: {\n useMozJpeg: false,\n stripMetadata: true,\n defaultQuality: 75,\n },\n },\n]\n```\n\n## Methods\n\n### resize\n\n#### Parameters\n\n- `width` (int, default: 400)\n- `height` (int)\n- `quality` (int, default: 50)\n- `jpegProgressive` (bool, default: true)\n- `pngCompressionLevel` (int, default: 9)\n- `base64`(bool, default: false)\n\n#### Returns\n\n- `src` (string)\n- `width` (int)\n- `height` (int)\n- `aspectRatio` (float)\n\n### fixed\n\nAutomatically create sizes for different resolutions — we do 1x, 1.5x, and 2x.\n\n#### Parameters\n\n- `width` (int, default: 400)\n- `height` (int)\n- `quality` (int, default: 50)\n\n#### Returns\n\n- `base64` (string)\n- `aspectRatio` (float)\n- `width` (float)\n- `height` (float)\n- `src` (string)\n- `srcSet` (string)\n\n### fluid\n\nCreate fluid sizes (in width) for the image. If the max width of the container for the\nrendered markdown file is 800px, the sizes would then be: 200px, 400px, 800px, 1200px,\n1600px – enough to provide close to the optimal image size for every device\nsize / screen resolution.\n\nIf you want more control over which sizes are output you can use the `srcSetBreakpoints`\nparameter. For example, if you want images that are 200, 340, 520, and 890 wide you\ncan add `srcSetBreakpoints: [ 200, 340, 520, 890 ]` as a parameter. You will also get\n`maxWidth` as a breakpoint (which is 800 by default), so you will actually get\n`[ 200, 340, 520, 800, 890 ]` as breakpoints.\n\nOn top of that, `fluid` returns everything else (namely aspectRatio and\na base64 image to use as a placeholder) you need to implement the \"blur up\"\ntechnique popularized by Medium and Facebook (and also available as a Gatsby\nplugin for Markdown content as gatsby-remark-images).\n\nWhen both a `maxWidth` and `maxHeight` are provided, sharp will use `COVER` as a fit strategy by default. This might not be ideal so you can now choose between `COVER`, `CONTAIN` and `FILL` as a fit strategy. To see them in action the [CSS property object-fit](https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit) comes close to its implementation.\n\n#### Note\n\nfit strategies `CONTAIN` and `FILL` will not work when `cropFocus` is assigned to [sharp.strategy][6]. The `cropFocus` option cannot be `ENTROPY` or `ATTENTION`\n\n#### Parameters\n\n- `maxWidth` (int, default: 800)\n- `maxHeight` (int)\n- `quality` (int, default: 50)\n- `srcSetBreakpoints` (array of int, default: [])\n- `fit` (string, default: '[sharp.fit.cover][6]')\n- `background` (string, default: 'rgba(0,0,0,1)')\n- [deprecated] `sizeByPixelDensity` (bool, default: false)\n - Pixel density is only used in vector images, which Gatsby’s implementation of Sharp doesn’t support. This option is currently a no-op and will be removed in the next major version of Gatsby.\n\n#### Returns\n\n- `base64` (string)\n- `aspectRatio` (float)\n- `src` (string)\n- `srcSet` (string)\n- `srcSetType` (string)\n- `sizes` (string)\n- `originalImg` (string)\n\n### Shared Options\n\nIn addition to their individual parameters, all methods above share the\nfollowing:\n\n- `grayscale` (bool, default: false)\n- `duotone` (bool|obj, default: false)\n- `toFormat` (string, default: '')\n- `cropFocus` (string, default: '[sharp.strategy.attention][6]')\n- `pngCompressionSpeed` (int, default: 4)\n\n#### toFormat\n\nConvert the source image to one of the following available options: `NO_CHANGE`,\n`JPG`, `PNG`, `WEBP`.\n\n#### cropFocus\n\nChange the cropping focus. Available options: `CENTER`, `NORTH`, `NORTHEAST`,\n`EAST`, `SOUTHEAST`, `SOUTH`, `SOUTHWEST`, `WEST`, `NORTHWEST`, `ENTROPY`,\n`ATTENTION`. See Sharp's [crop][6].\n\n#### rotate\n\nRotate the image (after cropping). See Sharp's [rotate][7].\n\n#### grayscale\n\nUses Sharp's [greyscale][8] to convert the source image to 8-bit greyscale, 256\nshades of grey, e.g.\n\n```javascript\nallImageSharp {\n edges {\n node {\n ... on ImageSharp {\n resize(width: 150, height: 150, grayscale: true) {\n src\n }\n }\n }\n }\n}\n```\n\n#### duotone\n\nApplys a \"duotone\" effect (see [I][1], [II][2], [III][3]) to the source image if\ngiven two hex colors `shadow` and `highlight` defining start and end color of\nthe duotone gradient, e.g.\n\n```javascript\nfixed(\n width: 800,\n duotone: {\n highlight: \"#f00e2e\",\n shadow: \"#192550\"\n }\n) {\n src\n srcSet\n base64\n}\n```\n\nthe source image colors will be converted to match a gradient color chosen based\non each pixel's [relative luminance][4].\\\nLogic is borrowed from [react-duotone][5].\n\nYou can pass a third optional parameter, `opacity`:\n\n```javascript\nfluid(\n width: 800,\n duotone: {\n highlight: \"#f00e2e\",\n shadow: \"#192550\",\n opacity: 50\n }\n) {\n src\n srcSet\n base64\n}\n```\n\nIf set, a semi-transparent version of duotone'd image will be composited over\nthe original image, allowing the original image and its colors to partially\n\"shine through\". _Heads up_: If the original image contains an alpha channel it\nwill be [flattened][15] before creating the composite.\n\nThis works by adding an alpha channel to the duotone'd image - then we let Sharp\ndo its magic via\n[`overlayWith`](http://sharp.dimens.io/en/stable/api-composite/#overlaywith);\nquoting the Sharp documentation:\n\n> If the overlay image contains an alpha channel then composition with\n> <a href=\"https://en.wikipedia.org/wiki/Alpha_compositing\">premultiplication</a>\n> will occur.\n\n#### tracedSVG\n\nGenerates a traced SVG of the image (see [the original GitHub issue][9]) and\nreturns the SVG as \"[optimized URL-encoded][10]\" `data:` URI. It it used in\n[gatsby-image](/packages/gatsby-image/) to provide an\nalternative to the default inline base64 placeholder image.\n\nUses [node-potrace][11] and [SVGO][12] under the hood. Default settings for\nnode-potrace:\n\n```javascript\n {\n color: `lightgray`,\n optTolerance: 0.4,\n turdSize: 100,\n turnPolicy: TURNPOLICY_MAJORITY,\n }\n```\n\nAll [node-potrace `Potrace` parameters][13] are exposed and can be set via the\n`traceSVG` argument:\n\n```javascript\nfixed(\n traceSVG: {\n color: \"#f00e2e\"\n turnPolicy: TURNPOLICY_MINORITY\n blackOnWhite: false\n }\n) {\n src\n srcSet\n tracedSVG\n}\n```\n\n### Setting a default quality\n\nYou can pass a default image quality to `sharp` by setting the `defaultQuality` option.\n\n### Using MozJPEG\n\nYou can opt-in to use [MozJPEG][16] for jpeg-encoding. MozJPEG provides even\nbetter image compression than the default encoder used in `gatsby-plugin-sharp`.\nHowever, when using MozJPEG the build time of your Gatsby project will increase\nsignificantly.\n\nTo enable MozJPEG, you can set the `useMozJpeg` plugin option to `true` in\n`gatsby-config.js`.\n\nFor backwards compatible reasons, if `useMozJpeg` is not defined in the plugin\noptions, the [environment variable](/docs/environment-variables/#environment-variables)\n`GATSBY_JPEG_ENCODER` acts as a fallback if set to `MOZJPEG`:\n\n```shell\nGATSBY_JPEG_ENCODER=MOZJPEG\n```\n\n### EXIF and ICC metadata\n\nBy default, `gatsby-plugin-sharp` strips all EXIF, ICC and other metadata\npresent in your source file. This is the recommended default as it leads to\nsmaller file sizes.\n\nHowever, in situations where you wish to preserve EXIF metadata or ICC profiles\n(example: you are building a photography portfolio and wish to conserve\nthe color profile or the copyright information of the photos you've exported\nfrom Adobe Lightroom or Phase One's Capture One), you can set the `stripMetadata`\nplugin option to `false` in `gatsby-config.js`.\n\nIt is important to note that if `stripMetadata` is set to `false`, **all**\nmetadata information will be preserved from the source image, including but not\nlimited to the latitude/longitude information of where the picture was taken\n(if present). If you wish to strip this information from the source file, you\ncan either leave `stripMetadata` to its default of `true`, or manually\npre-process your images with a tool such as [ExifTool][17].\n\n## Troubleshooting\n\n### Incompatible library version: sharp.node requires version X or later, but Z provides version Y\n\nThis means that there are multiple incompatible versions of the `sharp` package installed in `node_modules`. The complete error typically looks like this:\n\n```\nSomething went wrong installing the \"sharp\" module\n\ndlopen(/Users/misiek/dev/gatsby-starter-blog/node_modules/sharp/build/Release/sharp.node, 1): Library not loaded: @rpath/libglib-2.0.dylib\n Referenced from: /Users/misiek/dev/gatsby-starter-blog/node_modules/sharp/build/Release/sharp.node\n Reason: Incompatible library version: sharp.node requires version 6001.0.0 or later, but libglib-2.0.dylib provides version 5801.0.0\n```\n\nTo fix this, you'll need to update all Gatsby plugins in the current project that depend on the `sharp` package. Here's a list of official plugins that you might need to update in case your projects uses them:\n\n- `gatsby-plugin-sharp`\n- `gatsby-plugin-manifest`\n- `gatsby-remark-images-contentful`\n- `gatsby-source-contentful`\n- `gatsby-transformer-sharp`\n- `gatsby-transformer-sqip`\n\nTo update these packages, run:\n\n```sh\nnpm install gatsby-plugin-sharp gatsby-plugin-manifest gatsby-remark-images-contentful gatsby-source-contentful gatsby-transformer-sharp gatsby-transformer-sqip\n```\n\nIf updating these doesn't fix the issue, your project probably uses other plugins from the community that depend on a different version of `sharp`. Try running `npm list sharp` or `yarn why sharp` to see all packages in the current project that use `sharp` and try updating them as well.\n\n[1]: https://alistapart.com/article/finessing-fecolormatrix\n[2]: http://blog.72lions.com/blog/2015/7/7/duotone-in-js\n[3]: https://ines.io/blog/dynamic-duotone-svg-jade\n[4]: https://en.wikipedia.org/wiki/Relative_luminance\n[5]: https://github.com/nagelflorian/react-duotone\n[6]: http://sharp.dimens.io/en/stable/api-resize/#crop\n[7]: http://sharp.dimens.io/en/stable/api-operation/#rotate\n[8]: http://sharp.dimens.io/en/stable/api-colour/#greyscale\n[9]: https://github.com/gatsbyjs/gatsby/issues/2435\n[10]: https://codepen.io/tigt/post/optimizing-svgs-in-data-uris\n[11]: https://github.com/tooolbox/node-potrace\n[12]: https://github.com/svg/svgo\n[13]: https://github.com/tooolbox/node-potrace#parameters\n[14]: https://github.com/oliver-moran/jimp\n[15]: http://sharp.dimens.io/en/stable/api-operation/#flatten\n[16]: https://github.com/mozilla/mozjpeg\n[17]: https://www.sno.phy.queensu.ca/~phil/exiftool/\n[18]: https://www.npmjs.com/package/color\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","image","sharp"],"computedKeywords":[],"computedMetadata":{},"created":1486409486367,"modified":1561107556059,"lastPublisher":{"name":"wardpeet","email":"ward@coding-tech.com","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:06.840Z","_searchInternal":{"concatenatedName":"gatsbypluginsharp","alternativeNames":["gatsbypluginsharp","gatsby plugin sharp","gatsby-plugin-sharp"],"downloadsMagnitude":6,"jsDelivrPopularity":1},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-sharp/CHANGELOG.md","jsDelivrHits":1931,"objectID":"gatsby-plugin-sharp","_highlightResult":{"name":{"value":"gatsby-plugin-sharp","matchLevel":"none","matchedWords":[]},"description":{"value":"Wrapper of the Sharp image manipulation library for Gatsby plugins","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"image","matchLevel":"none","matchedWords":[]},{"value":"sharp","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginsharp","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin sharp","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-sharp","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-image","downloadsLast30Days":452518,"downloadsRatio":0.000991518238588638,"humanDownloadsLast30Days":"452.5k","popular":false,"version":"2.2.3","versions":{"1.0.1":"2017-09-30T00:56:58.752Z","1.0.2":"2017-10-01T21:51:13.503Z","1.0.3":"2017-10-02T22:15:44.600Z","1.0.4":"2017-10-03T18:19:51.903Z","1.0.5":"2017-10-04T20:43:05.658Z","1.0.6":"2017-10-07T04:08:18.670Z","1.0.7":"2017-10-07T13:00:14.368Z","1.0.8":"2017-10-07T23:29:04.893Z","1.0.9":"2017-10-08T00:29:52.985Z","1.0.10":"2017-10-09T21:08:24.961Z","1.0.11":"2017-10-09T22:52:27.210Z","1.0.12":"2017-10-14T16:46:26.148Z","1.0.13":"2017-10-18T16:10:20.483Z","1.0.14":"2017-10-20T16:34:07.502Z","1.0.15":"2017-10-25T20:07:53.439Z","1.0.16":"2017-10-26T06:26:18.063Z","1.0.18":"2017-11-01T20:29:03.491Z","1.0.19":"2017-11-02T18:06:45.710Z","1.0.20":"2017-11-06T23:14:21.959Z","1.0.21":"2017-11-07T08:15:40.489Z","1.0.23":"2017-11-09T04:54:27.508Z","1.0.24":"2017-11-09T05:35:11.209Z","1.0.25":"2017-11-28T23:11:30.458Z","1.0.26":"2017-11-28T23:37:33.806Z","1.0.27":"2017-11-29T00:09:03.833Z","1.0.28":"2017-12-10T00:45:11.108Z","1.0.29":"2017-12-13T03:07:49.070Z","1.0.30":"2017-12-14T19:57:57.201Z","1.0.31":"2017-12-20T23:25:53.962Z","1.1.0-alpha.f20ac0ed":"2018-01-11T18:32:18.902Z","1.1.0-alpha.a0a09c94":"2018-01-11T18:47:31.656Z","1.1.0-alpha.b50f2063":"2018-01-11T18:54:35.830Z","1.1.0-alpha.03b9df85":"2018-01-12T14:35:41.074Z","1.1.0-alpha.e9df8e57":"2018-01-12T14:46:58.694Z","1.1.0-alpha.8c822451":"2018-01-12T15:00:30.222Z","1.1.0-alpha.e5586916":"2018-01-12T15:21:58.066Z","1.1.0-alpha.9da1bca1":"2018-01-12T18:06:57.446Z","1.0.32":"2018-01-12T18:38:14.760Z","1.0.33":"2018-01-13T01:03:17.212Z","1.1.0-alpha.aeb05561":"2018-01-18T01:52:31.682Z","1.1.0-alpha.7b47e00d":"2018-01-18T02:09:41.259Z","1.1.0-alpha.f5c1df61":"2018-01-18T17:29:50.733Z","1.0.34":"2018-01-19T13:53:54.569Z","1.1.0-alpha.926cb6da":"2018-01-21T01:41:52.449Z","1.1.0-alpha.3f307d61":"2018-01-21T02:22:24.090Z","1.1.0-alpha.d1544e1b":"2018-01-25T00:13:46.847Z","1.0.35":"2018-02-06T04:00:36.072Z","1.1.0-alpha.53bbd4cd":"2018-02-10T20:34:04.936Z","1.1.0-alpha.2b695217":"2018-02-10T22:36:15.394Z","1.1.0-alpha.32ef58da":"2018-02-11T03:44:10.708Z","1.1.0-alpha.5182142b":"2018-02-11T04:11:51.437Z","1.0.36":"2018-02-13T01:11:29.284Z","1.0.37":"2018-02-13T23:57:43.030Z","1.1.0-alpha.6ab84875":"2018-02-15T02:06:10.981Z","1.1.0-alpha.9d4de2a6":"2018-02-15T20:31:53.204Z","1.1.0-alpha.1a8f691e":"2018-02-15T21:00:31.945Z","1.1.0-alpha.9e381f74":"2018-02-15T21:12:08.260Z","1.1.0-alpha.dd504153":"2018-02-15T21:28:59.803Z","1.1.0-alpha.b68b7f5c":"2018-02-15T22:00:09.870Z","1.1.0-alpha.bb258cb5":"2018-02-16T00:29:11.559Z","1.1.0-alpha.e28a1c8e":"2018-02-16T01:10:42.932Z","1.1.0-alpha.067e672c":"2018-02-17T02:44:42.812Z","1.1.0-alpha.d0b8dd9e":"2018-02-17T19:04:43.283Z","1.0.38-0":"2018-02-17T19:30:33.290Z","1.0.38":"2018-02-19T23:28:53.244Z","1.0.39":"2018-02-22T23:37:06.272Z","1.1.0-alpha.e66c6c9c":"2018-02-27T01:24:18.493Z","1.0.40":"2018-02-28T20:39:18.203Z","1.0.41":"2018-03-02T19:54:42.233Z","1.1.0-alpha.2cbec6d6":"2018-03-03T06:46:08.664Z","1.0.42-0":"2018-03-03T07:23:04.477Z","1.1.0-alpha.f98688ee":"2018-03-07T02:25:17.579Z","1.1.0-alpha.9fe50b00":"2018-03-08T03:03:59.923Z","1.0.42":"2018-03-13T06:17:11.905Z","1.1.0-alpha.34eda94b":"2018-03-17T21:21:52.871Z","1.1.0-alpha.12622d64":"2018-03-17T23:59:32.696Z","1.1.0-alpha.84bd71b4":"2018-03-18T00:39:13.340Z","1.1.0-alpha.6ad61a13":"2018-03-21T17:48:51.683Z","1.1.0-alpha.5f47082e":"2018-03-23T22:46:57.508Z","1.0.42-1":"2018-03-23T23:18:28.720Z","1.1.0-alpha.95fcd4af":"2018-03-29T02:21:45.483Z","1.1.0-alpha.20252dc3":"2018-03-29T02:43:26.019Z","1.0.43":"2018-04-04T00:45:30.395Z","1.1.0-alpha.4a09f745":"2018-04-05T22:14:30.631Z","1.1.0-alpha.76793cd8":"2018-04-07T22:11:45.629Z","1.0.45":"2018-04-10T01:46:47.231Z","1.0.46":"2018-04-14T22:19:44.487Z","1.0.47":"2018-04-19T16:32:47.988Z","1.1.0-alpha.5c9569c0":"2018-04-19T16:55:59.382Z","1.1.0-alpha.523a4286":"2018-04-19T23:50:57.553Z","1.1.0-alpha.5421f383":"2018-04-20T06:52:12.847Z","1.1.0-alpha.e9c3027b":"2018-04-20T17:55:28.291Z","1.0.42-2":"2018-04-22T01:53:14.986Z","1.0.42-3":"2018-04-25T16:24:36.267Z","1.0.42-4":"2018-04-26T18:18:44.175Z","1.0.48":"2018-04-27T22:13:15.810Z","1.0.51":"2018-05-04T00:19:27.164Z","1.0.42-5":"2018-05-11T21:42:51.285Z","1.0.42-6":"2018-05-15T18:26:01.348Z","1.0.42-7":"2018-05-15T19:53:03.139Z","1.0.42-8":"2018-05-18T15:34:55.277Z","1.0.42-9":"2018-05-31T13:11:29.922Z","2.0.0-alpha.2":"2018-05-31T14:03:02.114Z","2.0.0-alpha.3":"2018-05-31T17:03:45.796Z","2.0.0-alpha.4":"2018-06-05T02:17:03.753Z","2.0.0-alpha.5":"2018-06-05T22:53:08.439Z","1.0.52":"2018-06-06T22:18:53.732Z","2.0.0-alpha.6":"2018-06-11T15:20:50.964Z","2.0.0-alpha.7":"2018-06-11T16:53:40.040Z","1.0.53":"2018-06-14T09:03:58.902Z","2.0.0-alpha.8":"2018-06-14T12:39:31.272Z","2.0.0-alpha.8ac171a1":"2018-06-16T19:24:48.109Z","2.0.0-alpha.e328d33f":"2018-06-16T19:32:09.182Z","2.0.0-alpha.80a21f04":"2018-06-16T19:36:28.877Z","2.0.0-alpha.9":"2018-06-16T23:32:10.760Z","1.0.54":"2018-06-17T01:53:05.067Z","2.0.0-beta.0":"2018-06-17T06:53:39.563Z","2.0.0-beta.1":"2018-06-17T08:12:36.076Z","2.0.0-beta.2":"2018-06-20T20:45:13.494Z","2.0.0-beta.3":"2018-06-29T08:40:04.356Z","2.0.0-beta.4":"2018-07-02T10:22:16.317Z","2.0.0-beta.5":"2018-07-09T22:12:32.396Z","2.0.0-beta.6":"2018-07-12T14:01:28.279Z","1.0.55":"2018-07-18T14:25:01.545Z","2.0.0-beta.7":"2018-07-21T15:59:56.766Z","2.0.0-beta.8":"2018-08-15T21:11:45.131Z","2.0.0-beta.9":"2018-08-20T19:52:44.762Z","2.0.0-rc.0":"2018-08-21T00:58:03.236Z","2.0.0-rc.1":"2018-08-29T18:28:18.093Z","2.0.0-rc.2":"2018-09-12T15:28:42.250Z","2.0.0-rc.3":"2018-09-17T15:46:04.496Z","2.0.0-rc.4":"2018-09-17T18:31:46.044Z","2.0.0":"2018-09-17T20:13:42.725Z","2.0.5":"2018-09-17T20:41:14.485Z","2.0.6":"2018-09-19T21:46:10.199Z","2.0.7":"2018-09-20T20:06:19.897Z","2.0.8":"2018-09-21T19:40:10.417Z","2.0.9":"2018-09-24T12:38:29.782Z","2.0.10":"2018-09-26T10:38:51.540Z","2.0.11":"2018-09-28T13:27:13.357Z","2.0.12":"2018-09-28T21:39:43.422Z","2.0.13":"2018-10-01T13:54:00.156Z","2.0.14":"2018-10-12T19:36:46.998Z","2.0.15":"2018-10-15T20:29:59.333Z","2.0.16":"2018-10-23T12:19:02.048Z","2.0.17":"2018-10-24T20:09:23.366Z","2.0.18":"2018-10-29T15:23:29.256Z","2.0.19":"2018-10-30T18:26:07.983Z","2.0.20":"2018-11-08T01:36:47.891Z","2.0.21":"2018-11-27T21:57:39.350Z","2.0.22":"2018-11-29T12:12:59.625Z","2.0.23":"2018-12-11T11:25:33.441Z","2.0.24":"2018-12-12T16:36:18.196Z","2.0.25":"2018-12-13T01:43:54.377Z","2.0.26":"2019-01-10T14:01:16.130Z","2.0.27":"2019-01-23T15:24:52.513Z","2.0.28":"2019-01-25T10:19:14.778Z","2.0.29":"2019-01-28T16:58:28.160Z","2.0.30":"2019-02-25T06:01:27.240Z","2.0.31-alpha.0":"2019-03-04T07:13:36.772Z","2.0.31":"2019-03-04T09:43:44.117Z","2.0.32":"2019-03-11T15:23:56.455Z","2.0.33":"2019-03-12T20:23:12.248Z","2.0.34":"2019-03-15T15:57:48.505Z","2.0.35":"2019-03-26T16:33:49.923Z","2.0.36":"2019-04-01T20:00:44.521Z","2.0.37":"2019-04-02T09:33:53.169Z","2.1.0-loading-attribute.1":"2019-04-08T14:49:17.271Z","2.1.0-loading-attribute.2":"2019-04-08T15:12:22.936Z","2.1.0-loading-attribute.3":"2019-04-08T17:01:44.496Z","2.0.38":"2019-04-11T20:43:15.664Z","2.0.39":"2019-04-15T14:37:50.825Z","2.0.40":"2019-04-23T20:57:28.369Z","2.0.41":"2019-04-30T07:05:50.703Z","2.1.0":"2019-05-16T19:29:31.953Z","2.1.1":"2019-05-24T22:12:51.558Z","2.1.2":"2019-05-29T11:52:56.267Z","2.1.3":"2019-06-10T11:08:59.237Z","2.1.4":"2019-06-12T23:02:09.003Z","2.2.0":"2019-06-20T13:48:28.717Z","2.2.1":"2019-06-21T08:59:12.857Z","2.2.2":"2019-06-24T09:44:36.983Z","2.2.3":"2019-06-24T10:31:53.639Z"},"tags":{"latest":"2.2.3","loading-attribute":"2.1.0-loading-attribute.3"},"description":"Lazy-loading React image component with optional support for the blur-up effect.","dependencies":{"@babel/runtime":"^7.0.0","object-fit-images":"^3.2.4","prop-types":"^15.6.1"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4","react-testing-library":"^5.0.0"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-image","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-image","head":"023135d6c30dc93eb46edb563c03e89134b3733e","branch":"023135d6c30dc93eb46edb563c03e89134b3733e"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-image","head":"023135d6c30dc93eb46edb563c03e89134b3733e"},"gitHead":"023135d6c30dc93eb46edb563c03e89134b3733e","readme":"# gatsby-image\n\nSpeedy, optimized images without the work.\n\n`gatsby-image` is a React component specially designed to work seamlessly with\nGatsby's GraphQL queries. It combines\n[Gatsby's native image processing](https://image-processing.gatsbyjs.org/)\ncapabilities with advanced image loading techniques to easily and completely\noptimize image loading for your sites. `gatsby-image` uses\n[gatsby-plugin-sharp](/packages/gatsby-plugin-sharp/)\nto power its image transformations.\n\n_Note: gatsby-image is **not** a drop-in replacement for `<img />`. It's\noptimized for fixed width/height images and images that stretch the full-width\nof a container. Some ways you can use `<img />` won't work with gatsby-image._\n\n**[Demo](https://using-gatsby-image.gatsbyjs.org)**\n\n## Problem\n\nLarge, unoptimized images dramatically slow down your site.\n\nBut creating optimized images for websites has long been a thorny problem.\nIdeally you would:\n\n- Resize large images to the size needed by your design\n- Generate multiple smaller images so smartphones and tablets don't download\n desktop-sized images\n- Strip all unnecessary metadata and optimize JPEG and PNG compression\n- Efficiently lazy load images to speed initial page load and save bandwidth\n- Use the \"blur-up\" technique or a\n \"[traced placeholder](https://github.com/gatsbyjs/gatsby/issues/2435)\" SVG to\n show a preview of the image while it loads\n- Hold the image position so your page doesn't jump while images load\n\nDoing this consistently across a site feels like sisyphean labor. You manually\noptimize your images and then… several images are swapped in at the last minute\nor a design-tweak shaves 100px of width off your images.\n\nMost solutions involve a lot of manual labor and bookkeeping to ensure every\nimage is optimized.\n\nThis isn't ideal. Optimized images should be easy and the default.\n\n## Solution\n\nWith Gatsby, we can make images way _way_ better.\n\n`gatsby-image` is designed to work seamlessly with Gatsby's native image\nprocessing capabilities powered by GraphQL and Sharp. To produce perfect images,\nyou need only:\n\n1. Import `gatsby-image` and use it in place of the built-in `img`\n2. Write a GraphQL query using one of the included GraphQL \"fragments\"\n which specify the fields needed by `gatsby-image`.\n\nThe GraphQL query creates multiple thumbnails with optimized JPEG and PNG\ncompression. The `gatsby-image` component automatically sets up the \"blur-up\"\neffect as well as lazy loading of images further down the screen.\n\n## Install\n\n`npm install --save gatsby-image`\n\nDepending on the gatsby starter you used, you may need to include [gatsby-transformer-sharp](/packages/gatsby-transformer-sharp/) and [gatsby-plugin-sharp](/packages/gatsby-plugin-sharp/) as well, and make sure they are installed and included in your gatsby-config.\n\n```bash\nnpm install --save gatsby-transformer-sharp gatsby-plugin-sharp\n```\n\nThen in your `gatsby-config.js`:\n\n```js\nplugins: [`gatsby-transformer-sharp`, `gatsby-plugin-sharp`]\n```\n\nAlso, make sure you have set up a source plugin, so your images are available in `graphql` queries. For example, if your images live in a project folder on the local filesystem, you would set up `gatsby-source-filesystem` in `gatsby-config.js` like so:\n\n```js\nconst path = require(`path`)\n\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-source-filesystem`,\n options: {\n name: `images`,\n path: path.join(__dirname, `src`, `images`),\n },\n },\n `gatsby-plugin-sharp`,\n `gatsby-transformer-sharp`,\n ],\n}\n```\n\n## How to use\n\nThis is what a component using `gatsby-image` looks like:\n\n```jsx\nimport React from \"react\"\nimport { graphql } from \"gatsby\"\nimport Img from \"gatsby-image\"\n\nexport default ({ data }) => (\n <div>\n <h1>Hello gatsby-image</h1>\n <Img fixed={data.file.childImageSharp.fixed} />\n </div>\n)\n\nexport const query = graphql`\n query {\n file(relativePath: { eq: \"blog/avatars/kyle-mathews.jpeg\" }) {\n childImageSharp {\n # Specify the image processing specifications right in the query.\n # Makes it trivial to update as your page's design changes.\n fixed(width: 125, height: 125) {\n ...GatsbyImageSharpFixed\n }\n }\n }\n }\n`\n```\n\nFor other explanations of how to get started with gatsby-image, see this blog post by community member Kyle Gill [Image Optimization Made Easy with Gatsby.js](https://medium.com/@kyle.robert.gill/ridiculously-easy-image-optimization-with-gatsby-js-59d48e15db6e) or this one by Hunter Chang (which also includes some details about changes to gatsby-image for Gatsby v2): [An Intro To Gatsby Image V2](https://codebushi.com/using-gatsby-image/)\n\n## Polyfilling object-fit/object-position for IE\n\nIf you'd like to include a polyfill for the [`object-fit`](https://developer.mozilla.org/en-US/docs/Web/CSS/object-fit)/[`object-position`](https://developer.mozilla.org/en-US/docs/Web/CSS/object-position) CSS properties (which [aren't supported](https://caniuse.com/#feat=object-fit) by default in Internet Explorer), import from `gatsby-image/withIEPolyfill` instead:\n\n```jsx\n// Other imports...\nimport Img from \"gatsby-image/withIEPolyfill\"\n\nexport default ({ data }) => (\n <div>\n <h1>Hello gatsby-image</h1>\n <Img\n fixed={data.file.childImageSharp.fixed}\n objectFit=\"cover\"\n objectPosition=\"50% 50%\"\n alt=\"\"\n />\n </div>\n)\n\n// GraphQL query...\n```\n\nImporting from `gatsby-image/withIEPolyfill` tells Gatsby to automatically apply the `object-fit-images` polyfill to your image. To make your `object-fit`/`object-position` values work in IE, be sure to use the `objectFit` and `objectPosition` props (rather than the `imgStyle` prop or a CSS or CSS-in-JS solution) so the polyfill will recognize them.\n\n## Two types of responsive images\n\nThere are two types of responsive images supported by gatsby-image.\n\n1. Images that have a _fixed_ width and height\n2. Images that stretch across a _fluid_ container\n\nIn the first scenario, you want to vary the image's size for different screen\nresolutions -- in other words, create retina images.\n\nFor the second scenario, you want to create multiple sizes of thumbnails for\ndevices with widths stretching from smartphone to wide desktop monitors.\n\nTo decide between the two, ask yourself: \"do I know the exact size this image\nwill be?\" If yes, it's the first type. If no and its width and/or height need to\nvary depending on the size of the screen, then it's the second type.\n\nIn Gatsby's GraphQL implementation, you query for the first type by querying a\nchild object of an image called `fixed` — which you can see in the sample\ncomponent above. For the second type, you do a similar query but for a child\nobject called `fluid`.\n\n## Fragments\n\nGraphQL includes a concept called \"query fragments\". Which, as the name\nsuggests, are a part of a query that can be used in multiple queries. To ease\nbuilding with `gatsby-image`, Gatsby image processing plugins which support\n`gatsby-image` ship with fragments which you can easily include in your queries.\n\nNote,\n[due to a limitation of GraphiQL](https://github.com/graphql/graphiql/issues/612),\nyou can not currently use these fragments in the GraphiQL IDE.\n\nPlugins supporting `gatsby-image` currently include\n[gatsby-transformer-sharp](/packages/gatsby-transformer-sharp/),\n[gatsby-source-contentful](/packages/gatsby-source-contentful/), [gatsby-source-datocms](https://github.com/datocms/gatsby-source-datocms) and [gatsby-source-sanity](https://github.com/sanity-io/gatsby-source-sanity).\n\nTheir fragments are:\n\n### gatsby-transformer-sharp\n\n- `GatsbyImageSharpFixed`\n- `GatsbyImageSharpFixed_noBase64`\n- `GatsbyImageSharpFixed_tracedSVG`\n- `GatsbyImageSharpFixed_withWebp`\n- `GatsbyImageSharpFixed_withWebp_noBase64`\n- `GatsbyImageSharpFixed_withWebp_tracedSVG`\n- `GatsbyImageSharpFluid`\n- `GatsbyImageSharpFluid_noBase64`\n- `GatsbyImageSharpFluid_tracedSVG`\n- `GatsbyImageSharpFluid_withWebp`\n- `GatsbyImageSharpFluid_withWebp_noBase64`\n- `GatsbyImageSharpFluid_withWebp_tracedSVG`\n\n### gatsby-source-contentful\n\n- `GatsbyContentfulFixed`\n- `GatsbyContentfulFixed_noBase64`\n- `GatsbyContentfulFixed_tracedSVG`\n- `GatsbyContentfulFixed_withWebp`\n- `GatsbyContentfulFixed_withWebp_noBase64`\n- `GatsbyContentfulFluid`\n- `GatsbyContentfulFluid_noBase64`\n- `GatsbyContentfulFluid_tracedSVG`\n- `GatsbyContentfulFluid_withWebp`\n- `GatsbyContentfulFluid_withWebp_noBase64`\n\n### gatsby-source-datocms\n\n- `GatsbyDatoCmsFixed`\n- `GatsbyDatoCmsFixed_noBase64`\n- `GatsbyDatoCmsFluid`\n- `GatsbyDatoCmsFluid_noBase64`\n\n### gatsby-source-sanity\n\n- `GatsbySanityImageFixed`\n- `GatsbySanityImageFixed_noBase64`\n- `GatsbySanityImageFluid`\n- `GatsbySanityImageFluid_noBase64`\n\nIf you don't want to use the blur-up effect, choose the fragment with `noBase64`\nat the end. If you want to use the traced placeholder SVGs, choose the fragment\nwith `tracedSVG` at the end.\n\nIf you want to automatically use WebP images when the browser supports the file\nformat, use the `withWebp` fragments. If the browser doesn't support WebP,\n`gatsby-image` will fall back to the default image format.\n\n_Please see the\n[gatsby-plugin-sharp](/packages/gatsby-plugin-sharp/#tracedsvg)\ndocumentation for more information on `tracedSVG` and its configuration\noptions._\n\n## \"Fixed\" queries\n\n### Component\n\nPass in the data returned from the `fixed` object in your query via the\n`fixed` prop. e.g. `<Img fixed={fixed} />`\n\n### Query\n\n```graphql\n{\n imageSharp {\n # Other options include height (set both width and height to crop),\n # grayscale, duotone, rotate, etc.\n fixed(width: 400) {\n # Choose either the fragment including a small base64ed image, a traced placeholder SVG, or one without.\n ...GatsbyImageSharpFixed\n }\n }\n}\n```\n\n## \"Fluid\" queries\n\n### Component\n\nPass in the data returned from the `fluid` object in your query via the `fluid`\nprop. e.g. `<Img fluid={fluid} />`\n\n### Query\n\n```graphql\n{\n imageSharp {\n # i.e. the max width of your container is 700 pixels.\n #\n # Other options include maxHeight (set both maxWidth and maxHeight to crop),\n # grayscale, duotone, rotate, etc.\n fluid(maxWidth: 700) {\n # Choose either the fragment including a small base64ed image, a traced placeholder SVG, or one without.\n ...GatsbyImageSharpFluid_noBase64\n }\n }\n}\n```\n\n### Avoiding stretched images using the fluid type\n\nAs mentioned previously, images using the _fluid_ type are stretched to\nmatch the container's width. In the case where the image's width is smaller than the available viewport, the image will stretch to match the container, potentially leading to unwanted problems and worsened image quality.\n\nTo counter this edge case one could wrap the _Img_ component in order to set a better, for that case, `maxWidth`:\n\n```jsx\nconst NonStretchedImage = props => {\n let normalizedProps = props\n if (props.fluid && props.fluid.presentationWidth) {\n normalizedProps = {\n ...props,\n style: {\n ...(props.style || {}),\n maxWidth: props.fluid.presentationWidth,\n margin: \"0 auto\", // Used to center the image\n },\n }\n }\n\n return <Img {...normalizedProps} />\n}\n```\n\n**Note:** The `GatsbyImageSharpFluid` fragment does not include `presentationWidth`.\nYou will need to add it in your graphql query as is shown in the following snippet:\n\n```graphql\n{\n childImageSharp {\n fluid(maxWidth: 500, quality: 100) {\n ...GatsbyImageSharpFluid\n presentationWidth\n }\n }\n}\n```\n\n## Art-directing multiple images\n\n`gatsby-image` supports showing different images at different breakpoints, which is known as [art direction](https://developer.mozilla.org/en-US/docs/Learn/HTML/Multimedia_and_embedding/Responsive_images#Art_direction). To do this, you can define your own array of `fixed` or `fluid` images, along with a `media` key per image, and pass it to `gatsby-image`'s `fixed` or `fluid` props. The `media` key that is set on an image can be any valid CSS media query.\n\n```jsx\nimport React from \"react\"\nimport { graphql } from \"gatsby\"\nimport Img from \"gatsby-image\"\n\nexport default ({ data }) => {\n // Set up the array of image data and `media` keys.\n // You can have as many entries as you'd like.\n const sources = [\n data.mobileImage.childImageSharp.fluid,\n {\n ...data.desktopImage.childImageSharp.fluid,\n media: `(min-width: 768px)`,\n },\n ]\n\n return (\n <div>\n <h1>Hello art-directed gatsby-image</h1>\n <Img fluid={sources} />\n </div>\n )\n}\n\nexport const query = graphql`\n query {\n mobileImage(relativePath: { eq: \"blog/avatars/kyle-mathews.jpeg\" }) {\n childImageSharp {\n fluid(maxWidth: 1000, quality: 100) {\n ...GatsbyImageSharpFluid\n }\n }\n }\n desktopImage(\n relativePath: { eq: \"blog/avatars/kyle-mathews-desktop.jpeg\" }\n ) {\n childImageSharp {\n fluid(maxWidth: 2000, quality: 100) {\n ...GatsbyImageSharpFluid\n }\n }\n }\n }\n`\n```\n\nWhile you could achieve a similar effect with plain CSS media queries, `gatsby-image` accomplishes this using the `<picture>` tag, which ensures that browsers only download the image they need for a given breakpoint.\n\n## `gatsby-image` props\n\n| Name | Type | Description |\n| ---------------------- | ------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |\n| `fixed` | `object` / `array` | Data returned from the `fixed` query. When prop is an array it has to be combined with `media` keys, allows for art directing `fixed` images. |\n| `fluid` | `object` / `array` | Data returned from the `fluid` query. When prop is an array it has to be combined with `media` keys, allows for art directing `fluid` images. |\n| `fadeIn` | `bool` | Defaults to fading in the image on load |\n| `durationFadeIn` | `number` | fading duration is set up to 500ms by default |\n| `title` | `string` | Passed to the `img` element |\n| `alt` | `string` | Passed to the `img` element. Defaults to an empty string `alt=\"\"` |\n| `crossOrigin` | `string` | Passed to the `img` element |\n| `className` | `string` / `object` | Passed to the wrapper element. Object is needed to support Glamor's css prop |\n| `style` | `object` | Spread into the default styles of the wrapper element |\n| `imgStyle` | `object` | Spread into the default styles of the actual `img` element |\n| `placeholderStyle` | `object` | Spread into the default styles of the placeholder `img` element |\n| `placeholderClassName` | `string` | A class that is passed to the placeholder `img` element |\n| `backgroundColor` | `string` / `bool` | Set a colored background placeholder. If true, uses \"lightgray\" for the color. You can also pass in any valid color string. |\n| `onLoad` | `func` | A callback that is called when the full-size image has loaded. |\n| `onStartLoad` | `func` | A callback that is called when the full-size image starts loading, it gets the parameter { wasCached: boolean } provided. |\n| `onError` | `func` | A callback that is called when the image fails to load. |\n| `Tag` | `string` | Which HTML tag to use for wrapping elements. Defaults to `div`. |\n| `objectFit` | `string` | Passed to the `object-fit-images` polyfill when importing from `gatsby-image/withIEPolyfill`. Defaults to `cover`. |\n| `objectPosition` | `string` | Passed to the `object-fit-images` polyfill when importing from `gatsby-image/withIEPolyfill`. Defaults to `50% 50%`. |\n| `loading` | `string` | Set the browser's native lazy loading attribute. One of `lazy`, `eager` or `auto`. Defaults to `lazy`. |\n| `critical` | `bool` | Opt-out of lazy-loading behavior. Defaults to `false`. Deprecated, use `loading` instead. |\n| `fixedImages` | `array` | An array of objects returned from `fixed` queries. When combined with `media` keys, allows for art directing `fixed` images. |\n| `fluidImages` | `array` | An array of objects returned from `fluid` queries. When combined with `media` keys, allows for art directing `fluid` images. |\n| `draggable` | `bool` | Set the img tag draggable to either `false`, `true` |\n\n## Image processing arguments\n\n[gatsby-plugin-sharp](/packages/gatsby-plugin-sharp) supports many additional arguments for transforming your images like\n`quality`, `sizeByPixelDensity`, `pngCompressionLevel`, `cropFocus`, `greyscale` and many more. See its documentation for more.\n\n## Some other stuff to be aware of\n\n- If you want to set `display: none;` on a component using a `fixed` prop,\n you need to also pass in to the style prop `{ display: 'inherit' }`.\n- Be aware that from a SEO perspective it is advisable not to change the image parameters lightheartedly once the website has been published. Every time you change properties within _fluid_ or _fixed_ (like _quality_ or _maxWidth_), the absolute path of the image changes. These properties generate the hash we use in our absolute path. This happens even if the image didn't change its name. As a result, the image could appear on the image SERP as \"new\" one. (more details [can be found on this issue](https://github.com/gatsbyjs/gatsby/issues/13742))\n- By default, images don't load until JavaScript is loaded. Gatsby's automatic code\n splitting generally makes this fine but if images seem slow coming in on a\n page, check how much JavaScript is being loaded there.\n- Images marked as `critical` will start loading immediately as the DOM is\n parsed, but unless `fadeIn` is set to `false`, the transition from placeholder\n to final image will not occur until after the component is mounted.\n- gatsby-image is now backed by the newer `<picture>` tag. This newer standard allows for\n media types to be chosen by the browser without using JavaScript. It also is\n backward compatible to older browsers (IE 11, etc)\n- Gifs can't be resized the same way as pngs and jpegs, unfortunately—if you try\n to use a gif with `gatsby-image`, it won't work. For now, the best workaround is\n to [import the gif directly](/docs/adding-images-fonts-files).\n- Lazy loading behavior is dependent on `IntersectionObserver` which is not available\n in some fairly common browsers including Safari and IE. A polyfill is recommended.\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-component","react-component"],"computedKeywords":[],"computedMetadata":{},"created":1506733018752,"modified":1561372317507,"lastPublisher":{"name":"pieh","email":"misiek.piechowiak@gmail.com","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T20:19:30.797Z","_searchInternal":{"concatenatedName":"gatsbyimage","alternativeNames":["gatsbyimage","gatsby image","gatsby-image"],"downloadsMagnitude":6,"jsDelivrPopularity":1},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-image/CHANGELOG.md","jsDelivrHits":4199,"objectID":"gatsby-image","_highlightResult":{"name":{"value":"gatsby-image","matchLevel":"none","matchedWords":[]},"description":{"value":"Lazy-loading React image component with optional support for the blur-up effect.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-component","matchLevel":"none","matchedWords":[]},{"value":"react-component","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyimage","matchLevel":"none","matchedWords":[]},{"value":"gatsby image","matchLevel":"none","matchedWords":[]},{"value":"gatsby-image","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-transformer-sharp","downloadsLast30Days":432585,"downloadsRatio":0.0009478427758450845,"humanDownloadsLast30Days":"432.6k","popular":false,"version":"2.2.0","versions":{"1.0.0-alpha12-alpha.51e1923f":"2017-04-18T18:41:29.200Z","1.0.0-alpha12-alpha.571b4bbd":"2017-04-19T00:37:18.353Z","1.0.0-alpha12-alpha.c0bba969":"2017-04-19T20:36:13.933Z","1.0.0-alpha12-alpha.89d880ee":"2017-04-21T00:30:44.977Z","1.0.0-alpha12-alpha.b66dd8d3":"2017-04-21T00:37:32.829Z","1.0.0-alpha12-alpha.577b9e82":"2017-04-22T00:34:45.820Z","1.0.0-alpha12-alpha.8370739a":"2017-04-23T03:15:47.675Z","1.0.0-alpha13":"2017-04-24T22:09:22.810Z","1.0.0-alpha13-alpha.c6e3cbb2":"2017-04-26T19:36:57.908Z","1.0.0-alpha13-alpha.91dbde54":"2017-04-26T21:08:53.018Z","1.0.0-alpha13-alpha.ec011f40":"2017-04-27T00:58:10.073Z","1.0.0-alpha13-alpha.537d11c6":"2017-04-27T04:11:33.602Z","1.0.0-alpha13-alpha.0189ea42":"2017-04-28T22:29:33.995Z","1.0.0-alpha13-alpha.215cabc2":"2017-05-01T23:02:13.519Z","1.0.0-alpha13-alpha.526805ab":"2017-05-03T22:17:37.605Z","1.0.0-alpha13-alpha.0f0222b8":"2017-05-04T16:09:30.018Z","1.0.0-alpha13-alpha.7d186994":"2017-05-04T16:29:53.904Z","1.0.0-alpha13-alpha.a3ef328b":"2017-05-04T19:52:02.972Z","1.0.0-alpha13-alpha.84bd4b24":"2017-05-04T20:33:34.892Z","1.0.0-alpha13-alpha.7efda7f0":"2017-05-04T23:03:18.896Z","1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:28.939Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:52.621Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:32:29.573Z","1.0.0-alpha14":"2017-05-06T01:18:31.087Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:14.494Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:20.091Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:22.337Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:44:20.503Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:55:26.173Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:12:20.109Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:42.684Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:34:32.918Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:48.138Z","1.0.0-alpha15":"2017-05-16T09:13:00.653Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:50.219Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:30:23.503Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:54.747Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:22:18.502Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:54.725Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:46.794Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:30:09.142Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:06:13.132Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:27:25.564Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:43:06.142Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:40:16.352Z","1.0.0-alpha16":"2017-05-26T09:30:34.546Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:59.287Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:47:59.142Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:31.387Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:34.671Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:38:04.370Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:17:01.121Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:44.070Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:55.928Z","1.0.0-alpha17":"2017-06-02T18:45:04.670Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:37:03.074Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:38:10.549Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:39:22.386Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:34:19.260Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:39.656Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:52:21.790Z","1.0.0-alpha.22":"2017-06-08T04:28:15.763Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:23.501Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:39.842Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:15:04.263Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:39.140Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:26:20.151Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:08:41.589Z","1.0.0-alpha.23":"2017-06-14T00:30:16.875Z","1.0.0-beta.1":"2017-06-15T20:26:09.034Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:38.294Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:42.746Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:54.197Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:36:15.316Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:32.776Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:55.277Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:02:01.309Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:18.669Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:07:04.759Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:52.274Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:56.104Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:54.553Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:33.804Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:39.272Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:21.901Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:22:11.751Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:37.862Z","1.0.0-beta.6":"2017-07-02T06:43:23.482Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:41:16.437Z","1.0.0-beta.7":"2017-07-04T00:12:34.515Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:54.080Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:53.377Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:27.692Z","1.0.0":"2017-07-06T19:43:53.617Z","1.0.1":"2017-07-06T19:49:15.220Z","1.4.0":"2017-07-25T23:27:34.543Z","1.5.0":"2017-07-27T19:27:50.619Z","1.6.0":"2017-08-04T17:58:39.794Z","1.6.1":"2017-08-19T01:52:59.561Z","1.7.0-alpha.22c8a6f1":"2017-08-24T16:12:46.218Z","1.6.2":"2017-08-25T18:22:10.578Z","1.6.3":"2017-08-30T22:59:03.641Z","1.6.4":"2017-08-31T23:42:36.946Z","1.6.5":"2017-09-01T23:27:16.780Z","1.7.0-alpha.76b32701":"2017-09-15T18:02:37.952Z","1.7.0-alpha.93f2e2a2":"2017-09-16T11:51:44.678Z","1.7.0-alpha.5db7a275":"2017-09-16T13:47:25.575Z","1.7.0-alpha.1460dad9":"2017-09-18T12:30:10.942Z","1.6.6":"2017-09-19T22:56:03.241Z","1.6.7":"2017-09-30T00:56:58.394Z","1.6.8":"2017-10-02T22:16:11.904Z","1.6.10":"2017-10-07T04:08:29.359Z","1.6.11":"2017-10-20T16:34:07.693Z","1.6.12":"2017-10-20T20:00:53.099Z","1.6.13":"2017-10-25T20:07:53.720Z","1.6.14":"2017-11-14T17:49:42.627Z","1.6.15":"2017-11-29T00:10:36.567Z","1.6.16":"2017-12-10T00:45:58.290Z","1.7.0-alpha.f20ac0ed":"2018-01-11T18:39:53.617Z","1.7.0-alpha.a0a09c94":"2018-01-11T18:48:54.230Z","1.7.0-alpha.b50f2063":"2018-01-11T18:55:46.973Z","1.7.0-alpha.03b9df85":"2018-01-12T14:37:06.466Z","1.7.0-alpha.e9df8e57":"2018-01-12T14:48:17.709Z","1.7.0-alpha.8c822451":"2018-01-12T15:01:34.599Z","1.7.0-alpha.e5586916":"2018-01-12T15:23:13.885Z","1.7.0-alpha.9da1bca1":"2018-01-12T18:08:35.901Z","1.7.0-alpha.aeb05561":"2018-01-18T01:53:49.065Z","1.7.0-alpha.7b47e00d":"2018-01-18T02:10:40.544Z","1.7.0-alpha.f5c1df61":"2018-01-18T17:31:23.762Z","1.7.0-alpha.926cb6da":"2018-01-21T01:43:10.968Z","1.7.0-alpha.3f307d61":"2018-01-21T02:23:50.052Z","1.7.0-alpha.d1544e1b":"2018-01-25T00:15:15.270Z","1.6.17":"2018-01-26T02:37:43.986Z","1.6.18":"2018-02-06T04:00:41.641Z","2.1.0-alpha.53bbd4cd":"2018-02-10T20:35:41.246Z","2.1.0-alpha.2b695217":"2018-02-10T22:37:31.714Z","2.1.0-alpha.32ef58da":"2018-02-11T03:45:32.685Z","2.1.0-alpha.5182142b":"2018-02-11T04:13:36.754Z","1.6.19":"2018-02-13T01:12:48.650Z","2.1.0-alpha.6ab84875":"2018-02-15T02:07:40.601Z","2.1.0-alpha.9d4de2a6":"2018-02-15T20:33:26.843Z","2.1.0-alpha.dd504153":"2018-02-15T21:30:48.357Z","2.1.0-alpha.b68b7f5c":"2018-02-15T22:01:50.125Z","2.1.0-alpha.bb258cb5":"2018-02-16T00:30:26.871Z","2.1.0-alpha.e28a1c8e":"2018-02-16T01:11:54.601Z","2.1.0-alpha.067e672c":"2018-02-17T02:46:08.321Z","2.1.0-alpha.d0b8dd9e":"2018-02-17T19:06:24.947Z","2.0.1-0":"2018-02-17T19:31:52.293Z","1.6.20":"2018-02-19T19:39:37.578Z","1.6.21":"2018-02-22T23:37:20.802Z","2.1.0-alpha.e66c6c9c":"2018-02-27T01:26:19.688Z","1.6.22":"2018-02-28T20:41:04.556Z","2.1.0-alpha.2cbec6d6":"2018-03-03T06:47:34.174Z","2.0.1-1":"2018-03-03T07:25:19.590Z","2.1.0-alpha.f98688ee":"2018-03-07T02:26:36.880Z","2.1.0-alpha.9fe50b00":"2018-03-08T03:05:08.921Z","2.1.0-alpha.34eda94b":"2018-03-17T21:23:06.681Z","2.1.0-alpha.12622d64":"2018-03-18T00:01:20.451Z","2.1.0-alpha.84bd71b4":"2018-03-18T00:41:21.259Z","2.1.0-alpha.6ad61a13":"2018-03-21T17:50:54.909Z","2.1.0-alpha.5f47082e":"2018-03-23T22:48:56.681Z","2.0.1-2":"2018-03-23T23:20:12.248Z","2.1.0-alpha.95fcd4af":"2018-03-29T02:24:08.413Z","2.1.0-alpha.20252dc3":"2018-03-29T02:45:58.875Z","2.1.0-alpha.4a09f745":"2018-04-05T22:15:38.073Z","2.1.0-alpha.76793cd8":"2018-04-07T22:13:28.287Z","1.6.23":"2018-04-19T16:34:53.316Z","2.1.0-alpha.5c9569c0":"2018-04-19T16:58:35.109Z","2.1.0-alpha.523a4286":"2018-04-19T23:53:54.267Z","2.1.0-alpha.5421f383":"2018-04-20T06:54:33.774Z","2.1.0-alpha.e9c3027b":"2018-04-20T17:58:42.198Z","2.0.1-3":"2018-04-22T01:55:51.005Z","2.0.1-4":"2018-04-25T16:26:57.004Z","2.0.1-5":"2018-04-26T18:21:10.904Z","1.6.24":"2018-05-01T06:24:18.263Z","2.0.1-8":"2018-05-15T20:18:41.925Z","2.0.1-9":"2018-05-18T15:37:22.149Z","1.6.25":"2018-05-31T12:38:46.048Z","2.0.1-10":"2018-05-31T13:11:48.543Z","2.0.1-11":"2018-05-31T14:28:13.672Z","2.0.1-12":"2018-05-31T17:24:08.369Z","1.6.26":"2018-05-31T18:46:29.156Z","2.0.1-13":"2018-06-05T02:17:03.730Z","2.0.1-14":"2018-06-11T09:59:01.551Z","2.0.1-15":"2018-06-11T15:27:30.679Z","2.0.1-16":"2018-06-11T16:57:51.240Z","2.2.0-alpha.80a21f04":"2018-06-16T19:38:25.931Z","2.1.1-alpha.2":"2018-06-16T23:34:26.780Z","1.6.27":"2018-06-17T01:53:44.104Z","2.1.1-beta.0":"2018-06-17T06:54:30.919Z","2.1.1-beta.1":"2018-06-17T08:13:26.547Z","2.1.1-beta.2":"2018-06-20T20:45:59.015Z","2.1.1-beta.3":"2018-06-26T14:43:18.191Z","2.1.1-beta.4":"2018-07-16T20:33:17.168Z","2.1.1-beta.5":"2018-07-17T18:02:40.360Z","2.1.1-beta.6":"2018-07-21T16:00:37.257Z","2.1.1-beta.7":"2018-08-13T17:44:13.795Z","2.1.1-rc.0":"2018-08-21T00:59:52.885Z","2.1.1-rc.1":"2018-08-29T17:08:22.192Z","2.1.1-rc.2":"2018-08-29T18:30:29.046Z","2.1.1-rc.3":"2018-09-07T22:43:38.153Z","2.1.1":"2018-09-17T20:43:25.788Z","2.1.2":"2018-09-24T12:58:31.624Z","2.1.3":"2018-09-28T13:27:11.658Z","2.1.4":"2018-10-16T00:45:43.614Z","2.1.5":"2018-10-24T17:05:52.728Z","2.1.6":"2018-10-29T15:25:05.261Z","2.1.7":"2018-10-29T19:42:38.011Z","2.1.8":"2018-11-06T01:40:09.051Z","2.1.9":"2018-11-29T12:15:15.439Z","2.1.10":"2018-12-31T10:03:06.984Z","2.1.12":"2019-01-24T12:12:57.520Z","2.1.13":"2019-01-29T15:20:00.200Z","2.1.14":"2019-02-19T18:49:26.039Z","2.1.15":"2019-02-28T15:51:26.703Z","2.1.16-alpha.0":"2019-03-04T07:14:18.652Z","2.1.16":"2019-03-11T15:25:50.099Z","2.1.17":"2019-03-12T20:23:19.370Z","2.1.18":"2019-04-11T20:43:17.607Z","2.1.19":"2019-05-03T13:05:30.851Z","2.1.20":"2019-05-29T11:52:45.662Z","2.1.21":"2019-05-31T07:41:39.135Z","2.2.0":"2019-06-20T13:50:33.092Z"},"tags":{"latest":"2.2.0"},"description":"Gatsby transformer plugin for images using Sharp","dependencies":{"@babel/runtime":"^7.0.0","bluebird":"^3.5.0","fs-extra":"^7.0.0","potrace":"^2.1.1","probe-image-size":"^4.0.0","semver":"^5.6.0","sharp":"^0.22.1"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-transformer-sharp","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-transformer-sharp","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-transformer-sharp","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-transformer-sharp\n\nCreates `ImageSharp` nodes from image types that are supported by the\n[Sharp](https://github.com/lovell/sharp) image processing library and provides\nfields in their GraphQL types for processing your images in a variety of ways\nincluding resizing, cropping, and creating responsive images.\n\n[Live demo](https://image-processing.gatsbyjs.org/)\n([source](https://github.com/gatsbyjs/gatsby/tree/master/examples/image-processing))\n\n## Install\n\n`npm install --save gatsby-transformer-sharp gatsby-plugin-sharp`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nmodule.exports = {\n plugins: [`gatsby-plugin-sharp`, `gatsby-transformer-sharp`],\n}\n```\n\nPlease note that you must have a source plugin (which brings in images) installed in your project. Otherwise no `ImageSharp` nodes can be created for your files. Examples would be [`gatsby-source-filesystem`](https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-source-filesystem) or source plugins for (headless) CMSs like [`gatsby-source-wordpress`](https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-source-wordpress).\n\n## Parsing algorithm\n\nIt recognizes files with the following extensions as images.\n\n- jpeg\n- jpg\n- png\n- webp\n- tif\n- tiff\n\nEach image file is parsed into a node of type `ImageSharp`.\n\n## Troubleshooting\n\n### Incompatible library version: sharp.node requires version X or later, but Z provides version Y\n\nThis means that there are multiple incompatible versions of the `sharp` package installed in `node_modules`. The complete error typically looks like this:\n\n```\nSomething went wrong installing the \"sharp\" module\n\ndlopen(/Users/misiek/dev/gatsby-starter-blog/node_modules/sharp/build/Release/sharp.node, 1): Library not loaded: @rpath/libglib-2.0.dylib\n Referenced from: /Users/misiek/dev/gatsby-starter-blog/node_modules/sharp/build/Release/sharp.node\n Reason: Incompatible library version: sharp.node requires version 6001.0.0 or later, but libglib-2.0.dylib provides version 5801.0.0\n```\n\nTo fix this, you'll need to update all Gatsby plugins in the current project that depend on the `sharp` package. Here's a list of official plugins that you might need to update in case your projects uses them:\n\n- `gatsby-plugin-sharp`\n- `gatsby-plugin-manifest`\n- `gatsby-remark-images-contentful`\n- `gatsby-source-contentful`\n- `gatsby-transformer-sharp`\n- `gatsby-transformer-sqip`\n\nTo update these packages, run:\n\n```sh\nnpm install gatsby-plugin-sharp gatsby-plugin-manifest gatsby-remark-images-contentful gatsby-source-contentful gatsby-transformer-sharp gatsby-transformer-sqip\n```\n\nIf updating these doesn't fix the issue, your project probably uses other plugins from the community that depend on a different version of `sharp`. Try running `npm list sharp` or `yarn why sharp` to see all packages in the current project that use `sharp` and try updating them as well.\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","image","sharp"],"computedKeywords":[],"computedMetadata":{},"created":1492540889200,"modified":1561038637952,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:42.765Z","_searchInternal":{"concatenatedName":"gatsbytransformersharp","alternativeNames":["gatsbytransformersharp","gatsby transformer sharp","gatsby-transformer-sharp"],"downloadsMagnitude":6,"jsDelivrPopularity":1},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-transformer-sharp/CHANGELOG.md","jsDelivrHits":1754,"objectID":"gatsby-transformer-sharp","_highlightResult":{"name":{"value":"gatsby-transformer-sharp","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby transformer plugin for images using Sharp","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"image","matchLevel":"none","matchedWords":[]},{"value":"sharp","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbytransformersharp","matchLevel":"none","matchedWords":[]},{"value":"gatsby transformer sharp","matchLevel":"none","matchedWords":[]},{"value":"gatsby-transformer-sharp","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-manifest","downloadsLast30Days":375536,"downloadsRatio":0.0008228419493735558,"humanDownloadsLast30Days":"375.5k","popular":false,"version":"2.2.0","versions":{"1.0.0-alpha12-alpha.d452aed2":"2017-02-20T19:10:05.011Z","1.0.0-alpha12-alpha.40e6a4d1":"2017-02-20T19:29:48.261Z","1.0.0-alpha12-alpha.f4d91ef3":"2017-02-20T20:05:29.059Z","1.0.0-alpha12-alpha.659f61a4":"2017-02-20T23:23:41.090Z","1.0.0-alpha12-alpha.e1a3cfed":"2017-02-20T23:29:21.037Z","1.0.0-alpha12-alpha.70258e9c":"2017-02-22T00:46:29.136Z","1.0.0-alpha12":"2017-02-22T01:12:41.647Z","1.0.0-alpha12-alpha.209952c2":"2017-02-22T18:43:00.060Z","1.0.0-alpha12-alpha.8f812d13":"2017-02-22T19:08:50.850Z","1.0.0-alpha12-alpha.10a12536":"2017-02-22T22:35:32.403Z","1.0.0-alpha12-alpha.d82af48f":"2017-03-06T18:43:02.019Z","1.0.0-alpha12-alpha.9a2a3c59":"2017-03-06T19:06:19.851Z","1.0.0-alpha12-alpha.72e8aced":"2017-03-06T20:02:11.763Z","1.0.0-alpha12-alpha.04c05494":"2017-03-06T20:30:47.348Z","1.0.0-alpha12-alpha.352b3448":"2017-03-06T22:18:20.278Z","1.0.0-alpha12-alpha.f205e4d4":"2017-03-06T22:26:03.206Z","1.0.0-alpha12-alpha.3a216f9f":"2017-03-07T21:32:55.111Z","1.0.0-alpha12-alpha.3f98b323":"2017-03-08T03:20:34.016Z","1.0.0-alpha12-alpha.cfc93fc7":"2017-03-08T03:46:26.667Z","1.0.0-alpha12-alpha.e22dfd31":"2017-03-13T19:58:05.549Z","1.0.0-alpha12-alpha.3e72cc6f":"2017-03-13T20:13:41.128Z","1.0.0-alpha12-alpha.c8cb2100":"2017-03-13T22:29:21.268Z","1.0.0-alpha12-alpha.4ba57c84":"2017-03-14T19:05:09.053Z","1.0.0-alpha12-alpha.a7e9d9c0":"2017-03-14T19:18:24.481Z","1.0.0-alpha12-alpha.75167f51":"2017-03-15T01:04:22.732Z","1.0.0-alpha12-alpha.4af3700e":"2017-03-15T23:20:23.089Z","1.0.0-alpha12-alpha.dfc40de1":"2017-03-17T22:35:21.620Z","1.0.0-alpha12-alpha.f32320b1":"2017-03-20T21:35:04.965Z","1.0.0-alpha12-alpha.547467c5":"2017-03-20T21:48:15.040Z","1.0.0-alpha12-alpha.3d7a5eb6":"2017-03-21T01:49:50.793Z","1.0.0-alpha12-alpha.b3dbfd2b":"2017-03-21T18:21:57.410Z","1.0.0-alpha12-alpha.4575c38e":"2017-03-21T20:12:44.346Z","1.0.0-alpha12-alpha.1b1c742b":"2017-03-21T22:05:26.024Z","1.0.0-alpha12-alpha.545e4a03":"2017-03-21T22:09:13.282Z","1.0.0-alpha12-alpha.4f30010e":"2017-03-21T22:12:19.287Z","1.0.0-alpha12-alpha.e1f27e45":"2017-03-23T18:18:29.260Z","1.0.0-alpha12-alpha.d37d5d32":"2017-03-24T23:55:54.790Z","1.0.0-alpha12-alpha.81355cc0":"2017-03-27T16:11:51.848Z","1.0.0-alpha12-alpha.dbf1a599":"2017-03-27T16:28:34.858Z","1.0.0-alpha12-alpha.10141fd4":"2017-03-27T17:58:52.831Z","1.0.0-alpha12-alpha.6e55cfe7":"2017-03-27T18:39:57.141Z","1.0.0-alpha12-alpha.d7d6ef64":"2017-03-27T22:38:21.187Z","1.0.0-alpha12-alpha.dffeaa1f":"2017-03-28T13:15:09.651Z","1.0.0-alpha12-alpha.c155b956":"2017-03-28T13:39:22.861Z","1.0.0-alpha12-alpha.80e93d69":"2017-03-28T14:40:11.737Z","1.0.0-alpha12-alpha.4e93d2cf":"2017-03-28T19:06:28.228Z","1.0.0-alpha12-alpha.351006cf":"2017-03-28T22:13:14.879Z","1.0.0-alpha12-alpha.0b4b912a":"2017-04-10T22:34:08.114Z","1.0.0-alpha12-alpha.1fdb9004":"2017-04-11T00:38:27.160Z","1.0.0-alpha12-alpha.51e1923f":"2017-04-18T18:41:23.477Z","1.0.0-alpha12-alpha.571b4bbd":"2017-04-19T00:37:12.568Z","1.0.0-alpha12-alpha.c0bba969":"2017-04-19T20:36:09.096Z","1.0.0-alpha12-alpha.89d880ee":"2017-04-21T00:30:41.515Z","1.0.0-alpha12-alpha.b66dd8d3":"2017-04-21T00:37:28.261Z","1.0.0-alpha12-alpha.577b9e82":"2017-04-22T00:34:38.434Z","1.0.0-alpha12-alpha.8370739a":"2017-04-23T03:15:41.237Z","1.0.0-alpha13":"2017-04-24T22:09:18.306Z","1.0.0-alpha13-alpha.c6e3cbb2":"2017-04-26T19:36:54.731Z","1.0.0-alpha13-alpha.91dbde54":"2017-04-26T21:08:51.109Z","1.0.0-alpha13-alpha.ec011f40":"2017-04-27T00:58:01.998Z","1.0.0-alpha13-alpha.537d11c6":"2017-04-27T04:11:25.710Z","1.0.0-alpha13-alpha.0189ea42":"2017-04-28T22:29:27.494Z","1.0.0-alpha13-alpha.215cabc2":"2017-05-01T23:02:05.083Z","1.0.0-alpha13-alpha.526805ab":"2017-05-03T22:17:29.271Z","1.0.0-alpha13-alpha.0f0222b8":"2017-05-04T16:09:14.908Z","1.0.0-alpha13-alpha.7d186994":"2017-05-04T16:29:38.222Z","1.0.0-alpha13-alpha.a3ef328b":"2017-05-04T19:51:52.851Z","1.0.0-alpha13-alpha.84bd4b24":"2017-05-04T20:33:22.978Z","1.0.0-alpha13-alpha.7efda7f0":"2017-05-04T23:03:10.707Z","1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:03.481Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:39.715Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:32:14.773Z","1.0.0-alpha14":"2017-05-06T01:18:11.912Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:04.476Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:06.871Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:05.414Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:44:02.800Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:55:01.181Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:11:57.955Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:29.773Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:34:03.601Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:24.743Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:25.033Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:29:46.486Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:34.030Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:22:00.141Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:32.300Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:24.319Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:29:47.508Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:05:50.334Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:27:02.899Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:42:47.507Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:40:01.497Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:40.779Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:47:40.953Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:19.758Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:19.102Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:37:47.730Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:16:43.259Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:27.981Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:41.416Z","1.0.0-alpha17":"2017-06-02T18:44:55.387Z","1.0.0-alpha19":"2017-06-03T02:02:25.738Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:40.042Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:37:54.561Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:38:56.748Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:33:51.174Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:15.044Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:51:57.456Z","1.0.0-alpha.22":"2017-06-08T04:27:52.476Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:06.841Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:23.224Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:40.563Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:14.563Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:25:45.868Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:07:57.837Z","1.0.0-alpha.23":"2017-06-14T00:30:10.422Z","1.0.0-beta.1":"2017-06-15T20:25:49.011Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:08.972Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:22.614Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:30.659Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:35:49.169Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:11.310Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:29.444Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:42.931Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:18:57.858Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:50.315Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:37.576Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:41.845Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:37.739Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:16.299Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:24.357Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:00.602Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:21:54.717Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:15.646Z","1.0.0-beta.6":"2017-07-02T06:42:58.765Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:40:47.569Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:31.573Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:30.407Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:03.941Z","1.0.0":"2017-07-06T19:43:25.095Z","1.0.1":"2017-07-06T19:48:51.526Z","1.0.2":"2017-08-11T14:03:10.207Z","1.0.3":"2017-08-11T20:02:56.084Z","1.0.4":"2017-08-19T01:52:17.072Z","1.1.0-alpha.22c8a6f1":"2017-08-24T16:12:19.440Z","2.0.0":"2017-08-25T18:06:55.284Z","1.0.5":"2017-08-25T18:21:47.596Z","1.0.6":"2017-08-30T22:58:33.647Z","1.0.7":"2017-08-31T23:41:24.015Z","1.1.0-alpha.76b32701":"2017-09-15T18:00:55.391Z","1.1.0-alpha.2e1e7782":"2017-09-15T18:12:31.018Z","1.1.0-alpha.93f2e2a2":"2017-09-16T11:50:02.684Z","1.1.0-alpha.5db7a275":"2017-09-16T13:45:57.090Z","1.0.8":"2017-09-18T12:14:16.077Z","1.1.0-alpha.1460dad9":"2017-09-18T12:28:38.515Z","1.0.9":"2017-11-29T00:09:29.849Z","1.0.10":"2017-12-10T00:45:22.118Z","1.0.11":"2017-12-13T23:40:38.016Z","1.0.12":"2017-12-20T23:26:00.028Z","1.1.0-alpha.f20ac0ed":"2018-01-11T18:38:55.507Z","1.1.0-alpha.a0a09c94":"2018-01-11T18:47:51.570Z","1.1.0-alpha.b50f2063":"2018-01-11T18:54:57.699Z","1.1.0-alpha.03b9df85":"2018-01-12T14:36:01.261Z","1.1.0-alpha.e9df8e57":"2018-01-12T14:47:18.430Z","1.1.0-alpha.8c822451":"2018-01-12T15:00:47.133Z","1.1.0-alpha.e5586916":"2018-01-12T15:22:19.401Z","1.1.0-alpha.9da1bca1":"2018-01-12T18:07:20.822Z","1.1.0-alpha.aeb05561":"2018-01-18T01:52:54.507Z","1.1.0-alpha.7b47e00d":"2018-01-18T02:09:57.065Z","1.1.0-alpha.f5c1df61":"2018-01-18T17:30:13.650Z","1.1.0-alpha.926cb6da":"2018-01-21T01:42:09.625Z","1.1.0-alpha.3f307d61":"2018-01-21T02:22:44.534Z","1.0.13":"2018-01-23T19:17:36.846Z","1.1.0-alpha.d1544e1b":"2018-01-25T00:14:12.724Z","1.1.0-alpha.53bbd4cd":"2018-02-10T20:34:25.984Z","2.1.0-alpha.2b695217":"2018-02-10T22:36:35.522Z","2.1.0-alpha.32ef58da":"2018-02-11T03:44:35.692Z","2.1.0-alpha.5182142b":"2018-02-11T04:12:18.008Z","1.0.14":"2018-02-13T01:11:53.898Z","2.1.0-alpha.6ab84875":"2018-02-15T02:06:36.950Z","2.1.0-alpha.9d4de2a6":"2018-02-15T20:32:14.129Z","2.1.0-alpha.9e381f74":"2018-02-15T21:12:24.544Z","2.1.0-alpha.dd504153":"2018-02-15T21:29:27.809Z","2.1.0-alpha.b68b7f5c":"2018-02-15T22:00:32.932Z","2.1.0-alpha.bb258cb5":"2018-02-16T00:29:30.774Z","2.1.0-alpha.e28a1c8e":"2018-02-16T01:10:56.633Z","2.1.0-alpha.067e672c":"2018-02-17T02:45:03.314Z","2.1.0-alpha.d0b8dd9e":"2018-02-17T19:04:58.119Z","2.0.1-0":"2018-02-17T19:30:54.722Z","2.1.0-alpha.e66c6c9c":"2018-02-27T01:24:42.816Z","1.0.15":"2018-02-28T20:39:53.141Z","2.1.0-alpha.2cbec6d6":"2018-03-03T06:46:31.807Z","2.0.1-1":"2018-03-03T07:23:45.306Z","2.1.0-alpha.f98688ee":"2018-03-07T02:25:37.593Z","2.1.0-alpha.9fe50b00":"2018-03-08T03:04:16.940Z","2.1.0-alpha.34eda94b":"2018-03-17T21:22:09.810Z","2.1.0-alpha.12622d64":"2018-03-18T00:00:00.212Z","2.1.0-alpha.84bd71b4":"2018-03-18T00:39:46.418Z","2.1.0-alpha.6ad61a13":"2018-03-21T17:49:22.720Z","2.1.0-alpha.5f47082e":"2018-03-23T22:47:28.665Z","2.0.1-2":"2018-03-23T23:18:54.326Z","2.1.0-alpha.95fcd4af":"2018-03-29T02:22:18.304Z","2.1.0-alpha.20252dc3":"2018-03-29T02:44:01.998Z","1.0.16":"2018-04-05T18:37:15.691Z","2.1.0-alpha.4a09f745":"2018-04-05T22:14:48.108Z","1.0.17":"2018-04-07T19:29:12.926Z","2.1.0-alpha.76793cd8":"2018-04-07T22:12:09.358Z","1.0.18":"2018-04-09T22:44:02.350Z","1.0.19":"2018-04-10T01:46:46.617Z","1.0.20":"2018-04-19T16:33:04.209Z","2.1.0-alpha.5c9569c0":"2018-04-19T16:56:55.128Z","2.1.0-alpha.523a4286":"2018-04-19T23:51:51.933Z","2.1.0-alpha.5421f383":"2018-04-20T06:52:43.345Z","2.1.0-alpha.e9c3027b":"2018-04-20T17:56:12.654Z","2.0.1-3":"2018-04-22T01:53:46.028Z","2.0.1-4":"2018-04-25T16:25:08.361Z","1.0.21":"2018-04-26T18:02:59.863Z","2.0.1-5":"2018-04-26T18:19:23.163Z","2.0.1-6":"2018-05-02T23:03:33.930Z","2.0.1-7":"2018-05-05T18:36:54.739Z","2.0.1-8":"2018-05-05T18:39:38.529Z","2.0.1-9":"2018-05-07T20:41:37.845Z","2.0.1-10":"2018-05-11T21:43:37.509Z","1.0.22":"2018-05-15T18:25:28.961Z","2.0.1-12":"2018-05-15T19:54:11.289Z","2.0.1-13":"2018-05-18T15:35:14.750Z","1.0.23":"2018-05-31T12:38:11.731Z","2.0.1-14":"2018-05-31T13:11:34.035Z","2.0.1-15":"2018-05-31T14:03:48.270Z","2.0.1-16":"2018-05-31T14:32:13.457Z","2.0.1-17":"2018-05-31T17:15:42.877Z","1.0.24":"2018-05-31T18:45:58.556Z","1.0.25":"2018-06-05T02:21:11.740Z","2.0.1-18":"2018-06-11T15:22:35.872Z","2.0.1-19":"2018-06-11T16:54:50.647Z","1.0.26":"2018-06-14T09:03:58.364Z","2.0.1-20":"2018-06-14T12:39:30.794Z","2.0.2-alpha.1":"2018-06-16T19:08:41.814Z","2.1.0-alpha.8ac171a1":"2018-06-16T19:25:19.488Z","2.1.0-alpha.e328d33f":"2018-06-16T19:32:49.276Z","2.1.0-alpha.80a21f04":"2018-06-16T19:36:59.843Z","2.0.2-alpha.2":"2018-06-16T23:32:46.700Z","1.0.27":"2018-06-17T01:53:04.827Z","2.0.2-beta.0":"2018-06-17T06:53:51.278Z","2.0.2-beta.1":"2018-06-17T08:12:50.650Z","2.0.2-beta.2":"2018-06-20T20:45:25.282Z","2.0.2-beta.3":"2018-07-21T16:00:07.127Z","2.0.2-beta.4":"2018-08-07T07:58:58.879Z","2.0.2-beta.5":"2018-08-10T09:27:32.476Z","2.0.2-beta.6":"2018-08-15T08:41:08.584Z","2.0.2-beta.7":"2018-08-20T19:52:52.175Z","2.0.2-rc.0":"2018-08-21T00:58:28.534Z","2.0.2-rc.1":"2018-08-29T18:28:48.053Z","2.0.2":"2018-09-17T20:41:46.485Z","2.0.3":"2018-09-24T12:53:34.285Z","2.0.4":"2018-09-26T10:38:51.317Z","2.0.5":"2018-10-09T14:24:22.985Z","2.0.6":"2018-10-24T17:05:39.832Z","2.0.7":"2018-10-29T15:23:57.243Z","2.0.8":"2018-11-08T01:36:58.052Z","2.0.9":"2018-11-12T14:13:48.400Z","2.0.10":"2018-11-21T21:15:11.736Z","2.0.11":"2018-11-29T12:13:42.993Z","2.0.12":"2018-12-11T23:36:49.037Z","2.0.13":"2018-12-29T15:10:44.543Z","2.0.14":"2019-01-28T13:12:50.020Z","2.0.15":"2019-01-29T15:20:00.114Z","2.0.16":"2019-01-31T18:48:45.712Z","2.0.17":"2019-02-01T12:25:07.070Z","2.0.18":"2019-02-19T13:59:48.131Z","2.0.19":"2019-02-22T15:22:55.051Z","2.0.20":"2019-02-28T11:32:19.241Z","2.0.21-alpha.0":"2019-03-04T07:13:46.190Z","2.0.21":"2019-03-04T09:43:44.067Z","2.0.22":"2019-03-05T21:30:31.976Z","2.0.23":"2019-03-11T15:24:21.582Z","2.0.24":"2019-03-12T20:23:13.253Z","2.0.25":"2019-03-27T14:04:41.813Z","2.0.20-asset-prefix.59":"2019-03-28T16:32:30.761Z","2.0.26":"2019-03-29T13:56:18.113Z","2.0.27":"2019-04-08T11:06:18.169Z","2.0.28":"2019-04-09T14:39:52.665Z","2.0.29":"2019-04-10T16:36:35.872Z","2.0.20-asset-prefix.67":"2019-04-30T20:53:52.592Z","2.0.20-asset-prefix.73":"2019-04-30T21:51:14.212Z","2.0.20-asset-prefix.74":"2019-04-30T21:54:39.791Z","2.1.0":"2019-05-02T19:09:52.645Z","2.1.1":"2019-05-03T13:05:31.096Z","2.2.0":"2019-06-20T13:48:58.409Z"},"tags":{"latest":"2.2.0","asset-prefix":"2.0.20-asset-prefix.74"},"description":"Gatsby plugin which adds a manifest.webmanifest to make sites progressive web apps","dependencies":{"@babel/runtime":"^7.0.0","semver":"^5.6.0","sharp":"^0.22.1"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-manifest","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-manifest","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-manifest","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-manifest\n\nThe web app manifest(part of the [PWA](https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps) specification) enabled by this plugin allows users to add your site to their home screen on most mobile browsers —\n[see here](http://caniuse.com/#feat=web-app-manifest). The manifest provides configuration and icons to the phone.\n\nThis plugin provides several features beyond manifest configuration to make your life easier, they are:\n\n- Auto icon generation - generates multiple icon sizes from a single source\n- [Favicon support](https://www.w3.org/2005/10/howto-favicon)\n- Legacy icon support (iOS)[^1]\n- [Cache busting](https://www.keycdn.com/support/what-is-cache-busting)\n\nEach of these features has extensive configuration available so you're always in control.\n\n## Install\n\n```\n$ npm install --save gatsby-plugin-manifest\n```\n\n## How to use\n\n### Add plugin and manifest settings - **Required**\n\n```js\n// in gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-manifest`,\n options: {\n name: `GatsbyJS`,\n short_name: `GatsbyJS`,\n start_url: `/`,\n background_color: `#f7f0eb`,\n theme_color: `#a2466c`,\n display: `standalone`,\n },\n },\n ],\n}\n```\n\nIf you're using this plugin together with [`gatsby-plugin-offline`](https://www.gatsbyjs.org/packages/gatsby-plugin-offline) (recommended),\nthis plugin should be listed _before_ the offline plugin so that it can cache\nthe created `manifest.webmanifest`.\n\nFor more information on configuring your web app [see here](https://developers.google.com/web/fundamentals/web-app-manifest/).\n\n### Configure icons and their generations - **Required**\n\nThere are three modes in which icon generation can function: automatic, hybrid, and manual(disabled). These modes can affect other configurations defaults.\n\n- Automatic - Generate a pre-configured set of icons from a single source icon.\n\n - Favicon - yes\n - Legacy icon support - yes\n - Cache busting - yes\n\n- Hybrid - Generate a manually configured set of icons from a single source icon.\n\n - Favicon - yes\n - Legacy icon support - yes\n - Cache busting - yes\n\n- Manual - Don't generate or pre-configure any icons.\n\n - Favicon - never\n - Legacy icon support - yes\n - Cache busting - never\n\n**_IMPORTANT:_** For best results, if you're providing an icon for generation it should be...\n\n- ...at least as big as the largest icon being generated (512x512 by default).\n- ...square (if it's not, transparent bars will add to make it square).\n- ...of one of the follow formats: JPEG, PNG, WebP, TIFF, GIF or SVG.\n\n#### Automatic mode configuration\n\nAdd the following line to the plugin options\n\n```js\n icon: `src/images/icon.png`, // This path is relative to the root of the site.\n```\n\nAutomatic mode is the easiest option for most people.\n\n#### Hybrid mode configuration\n\nAdd the following line to the plugin options\n\n```js\n icon: `src/images/icon.png`, // This path is relative to the root of the site.\n icons: [\n {\n src: `/favicons/android-chrome-192x192.png`,\n sizes: `192x192`,\n type: `image/png`,\n },\n {\n src: `/favicons/android-chrome-512x512.png`,\n sizes: `512x512`,\n type: `image/png`,\n },\n ], // Add or remove icon sizes as desired\n```\n\nIf you want to include more or fewer sizes, then the hybrid option is for you. Like automatic mode, you include a high resolution icon from which to generate smaller icons. But unlike automatic mode, you provide the `icons` array config and icons are generated based on the sizes defined in your config. Here's an example `gatsby-config.js`:\n\nThe hybrid option allows the most flexibility while still not requiring you to create all icon sizes manually.\n\n#### Manual mode configuration\n\nAdd the following line to the plugin options\n\n```js\nicons: [\n {\n src: `/favicons/android-chrome-192x192.png`,\n sizes: `192x192`,\n type: `image/png`,\n },\n {\n src: `/favicons/android-chrome-512x512.png`,\n sizes: `512x512`,\n type: `image/png`,\n },\n], // Add or remove icon sizes as desired\n```\n\nIn the manual mode, you are responsible for defining the entire web app manifest and providing the defined icons in the [static](https://www.gatsbyjs.org/docs/static-folder/) folder. Only icons you provide will be available. There is no automatic resizing done for you.\n\n### Feature configuration - **Optional**\n\n#### Iterative icon options\n\nThe `icon_options` object may be used to iteratively add configuration items to the `icons` array. Any options included in this object will be merged with each object of the `icons` array (custom or default). Key value pairs already in the `icons` array will take precedence over duplicate items in the `icon_options` array.\n\n`icon_options` may be used as follows:\n\n```js\n// in gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-manifest`,\n options: {\n name: `GatsbyJS`,\n short_name: `GatsbyJS`,\n start_url: `/`,\n background_color: `#f7f0eb`,\n theme_color: `#a2466c`,\n display: `standalone`,\n icon: `src/images/icon.png`,\n icon_options: {\n // For all the options available, please see:\n // https://developer.mozilla.org/en-US/docs/Web/Manifest\n // https://w3c.github.io/manifest/#purpose-member\n purpose: `maskable`,\n },\n },\n },\n ],\n}\n```\n\n#### Disable legacy icons\n\niOS 11.3 added support for the web app manifest spec. Previous iOS versions won't recognize the icons defined in the webmanifest and the creation of `apple-touch-icon` links in `<head>` is needed. This plugin creates them by default. If you don't want those icons to be generated you can set the `legacy` option to `false` in plugin configuration:\n\n```js\n// in gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-manifest`,\n options: {\n name: `GatsbyJS`,\n short_name: `GatsbyJS`,\n start_url: `/`,\n background_color: `#f7f0eb`,\n theme_color: `#a2466c`,\n display: `standalone`,\n icon: `src/images/icon.png`,\n legacy: false, // this will not add apple-touch-icon links to <head>\n },\n },\n ],\n}\n```\n\n#### Disable favicon\n\nExcludes `<link rel=\"shortcut icon\" href=\"/favicon.png\" />` link tag to html output. You can set `include_favicon` plugin option to `false` to opt-out of this behavior.\n\n```js\n// in gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-manifest`,\n options: {\n name: `GatsbyJS`,\n short_name: `GatsbyJS`,\n start_url: `/`,\n background_color: `#f7f0eb`,\n theme_color: `#a2466c`,\n display: `standalone`,\n icon: `src/images/icon.png`, // This path is relative to the root of the site.\n include_favicon: false, // This will exclude favicon link tag\n },\n },\n ],\n}\n```\n\n#### Disable or configure \"[cache busting](https://www.keycdn.com/support/what-is-cache-busting)\"\n\nCache Busting allows your updated icon to be quickly/easily visible to your sites visitors. HTTP caches could otherwise keep an old icon around for days and weeks. Cache busting can only done in 'automatic' and 'hybrid' modes.\n\nCache busting works by calculating a unique \"digest\" of the provided icon and modifying links or file names of generated images with that unique digest. If you ever update your icon, the digest will change and caches will be busted.\n\n**Options:**\n\n- **\\`query\\`** - This is the default mode. File names are unmodified but a URL query is appended to all links. e.g. `icons/icon-48x48.png?digest=abc123`\n\n- **\\`name\\`** - Changes the cache busting mode to be done by file name. File names and links are modified with the icon digest. e.g. `icons/icon-48x48-abc123.png` (only needed if your CDN does not support URL query based cache busting)\n\n- **\\`none\\`** - Disables cache busting. File names and links remain unmodified.\n\n```js\n// in gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-manifest`,\n options: {\n name: `GatsbyJS`,\n short_name: `GatsbyJS`,\n start_url: `/`,\n background_color: `#f7f0eb`,\n theme_color: `#a2466c`,\n display: `standalone`,\n icon: `src/images/icon.png`,\n cache_busting_mode: `none`, // `query`(default), `name`, or `none`\n },\n },\n ],\n}\n```\n\n#### Remove `theme-color` meta tag\n\nBy default a `<meta content={theme_color} name=\"theme-color\" />` tag is inserted into the html output. This can be problematic if you want to programmatically control that tag (e.g. when implementing light/dark themes in your project). You can set `theme_color_in_head` plugin option to `false` to opt-out of this behavior.\n\n```js\n// in gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-manifest`,\n options: {\n name: `GatsbyJS`,\n short_name: `GatsbyJS`,\n start_url: `/`,\n background_color: `#f7f0eb`,\n theme_color: `#a2466c`,\n display: `standalone`,\n icon: `src/images/icon.png`,\n theme_color_in_head: false, // This will avoid adding theme-color meta tag.\n },\n },\n ],\n}\n```\n\n#### Enable CORS using `crossorigin` attribute\n\nAdd a `crossorigin` attribute to the manifest `<link rel=\"manifest\" crossorigin=\"use-credentials\" href=\"/manifest.webmanifest\" />` link tag.\n\nYou can set `crossOrigin` plugin option to `'use-credentials'` to enable sharing resources via cookies. Any invalid keyword or empty string will fallback to `'anonymous'`.\n\nYou can find more information about `crossorigin` on [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes).\n\n```js\n// in gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-manifest`,\n options: {\n name: `GatsbyJS`,\n short_name: `GatsbyJS`,\n start_url: `/`,\n background_color: `#f7f0eb`,\n theme_color: `#a2466c`,\n display: `standalone`,\n icon: `src/images/icon.png`,\n crossOrigin: `use-credentials`, // `use-credentials` or `anonymous`\n },\n },\n ],\n}\n```\n\n## Appendices\n\nAdditional information that may be interesting or valuable.\n\n### Default icon config\n\nWhen in automatic mode the following json array is injected into the manifest configuration you provide and the icons are generated from it.\n\n```json\n[\n {\n \"src\": \"icons/icon-48x48.png\",\n \"sizes\": \"48x48\",\n \"type\": \"image/png\"\n },\n {\n \"src\": \"icons/icon-72x72.png\",\n \"sizes\": \"72x72\",\n \"type\": \"image/png\"\n },\n {\n \"src\": \"icons/icon-96x96.png\",\n \"sizes\": \"96x96\",\n \"type\": \"image/png\"\n },\n {\n \"src\": \"icons/icon-144x144.png\",\n \"sizes\": \"144x144\",\n \"type\": \"image/png\"\n },\n {\n \"src\": \"icons/icon-192x192.png\",\n \"sizes\": \"192x192\",\n \"type\": \"image/png\"\n },\n {\n \"src\": \"icons/icon-256x256.png\",\n \"sizes\": \"256x256\",\n \"type\": \"image/png\"\n },\n {\n \"src\": \"icons/icon-384x384.png\",\n \"sizes\": \"384x384\",\n \"type\": \"image/png\"\n },\n {\n \"src\": \"icons/icon-512x512.png\",\n \"sizes\": \"512x512\",\n \"type\": \"image/png\"\n }\n]\n```\n\n### Legacy icon support coverage\n\nCurrently this feature only covers older versions of [iOS Safari](https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html).\n\nInternet Explorer is the only other major browser that doesn't support the web app manifest, and it's market share is so small no one has contributed support.\n\n### Additional resources\n\nThis article from the Chrome DevRel team is a good intro to the web app\nmanifest—https://developers.google.com/web/fundamentals/engage-and-retain/web-app-manifest/\n\nFor more information see the w3 spec https://www.w3.org/TR/appmanifest/ or Mozilla docs https://developer.mozilla.org/en-US/docs/Web/Manifest.\n\n## Troubleshooting\n\n### Incompatible library version: sharp.node requires version X or later, but Z provides version Y\n\nThis means that there are multiple incompatible versions of the `sharp` package installed in `node_modules`. The complete error typically looks like this:\n\n```\nSomething went wrong installing the \"sharp\" module\n\ndlopen(/Users/misiek/dev/gatsby-starter-blog/node_modules/sharp/build/Release/sharp.node, 1): Library not loaded: @rpath/libglib-2.0.dylib\n Referenced from: /Users/misiek/dev/gatsby-starter-blog/node_modules/sharp/build/Release/sharp.node\n Reason: Incompatible library version: sharp.node requires version 6001.0.0 or later, but libglib-2.0.dylib provides version 5801.0.0\n```\n\nTo fix this, you'll need to update all Gatsby plugins in the current project that depend on the `sharp` package. Here's a list of official plugins that you might need to update in case your projects uses them:\n\n- `gatsby-plugin-sharp`\n- `gatsby-plugin-manifest`\n- `gatsby-remark-images-contentful`\n- `gatsby-source-contentful`\n- `gatsby-transformer-sharp`\n- `gatsby-transformer-sqip`\n\nTo update these packages, run:\n\n```sh\nnpm install gatsby-plugin-sharp gatsby-plugin-manifest gatsby-remark-images-contentful gatsby-source-contentful gatsby-transformer-sharp gatsby-transformer-sqip\n```\n\nIf updating these doesn't fix the issue, your project probably uses other plugins from the community that depend on a different version of `sharp`. Try running `npm list sharp` or `yarn why sharp` to see all packages in the current project that use `sharp` and try updating them as well.\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","favicon","icons","manifest.webmanifest","progressive-web-app","pwa"],"computedKeywords":[],"computedMetadata":{},"created":1487617805011,"modified":1561038541809,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:06.608Z","_searchInternal":{"concatenatedName":"gatsbypluginmanifest","alternativeNames":["gatsbypluginmanifest","gatsby plugin manifest","gatsby-plugin-manifest"],"downloadsMagnitude":6,"jsDelivrPopularity":1},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-manifest/CHANGELOG.md","jsDelivrHits":1689,"objectID":"gatsby-plugin-manifest","_highlightResult":{"name":{"value":"gatsby-plugin-manifest","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin which adds a manifest.webmanifest to make sites progressive web apps","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"favicon","matchLevel":"none","matchedWords":[]},{"value":"icons","matchLevel":"none","matchedWords":[]},{"value":"manifest.webmanifest","matchLevel":"none","matchedWords":[]},{"value":"progressive-web-app","matchLevel":"none","matchedWords":[]},{"value":"pwa","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginmanifest","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin manifest","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-manifest","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-offline","downloadsLast30Days":360544,"downloadsRatio":0.0007899927777761369,"humanDownloadsLast30Days":"360.5k","popular":false,"version":"2.2.0","versions":{"1.0.0-alpha12-alpha.d452aed2":"2017-02-20T19:10:05.012Z","1.0.0-alpha12-alpha.40e6a4d1":"2017-02-20T19:29:48.281Z","1.0.0-alpha12-alpha.f4d91ef3":"2017-02-20T20:05:29.400Z","1.0.0-alpha12-alpha.659f61a4":"2017-02-20T23:23:44.256Z","1.0.0-alpha12-alpha.e1a3cfed":"2017-02-20T23:29:22.971Z","1.0.0-alpha12-alpha.70258e9c":"2017-02-22T00:46:30.342Z","1.0.0-alpha12":"2017-02-22T01:12:41.580Z","1.0.0-alpha12-alpha.209952c2":"2017-02-22T18:42:59.384Z","1.0.0-alpha12-alpha.8f812d13":"2017-02-22T19:08:52.587Z","1.0.0-alpha12-alpha.10a12536":"2017-02-22T22:35:32.762Z","1.0.0-alpha12-alpha.d82af48f":"2017-03-06T18:43:02.354Z","1.0.0-alpha12-alpha.9a2a3c59":"2017-03-06T19:06:23.725Z","1.0.0-alpha12-alpha.72e8aced":"2017-03-06T20:02:10.813Z","1.0.0-alpha12-alpha.04c05494":"2017-03-06T20:30:47.944Z","1.0.0-alpha12-alpha.352b3448":"2017-03-06T22:18:21.851Z","1.0.0-alpha12-alpha.f205e4d4":"2017-03-06T22:26:02.845Z","1.0.0-alpha12-alpha.3a216f9f":"2017-03-07T21:32:56.367Z","1.0.0-alpha12-alpha.3f98b323":"2017-03-08T03:20:35.666Z","1.0.0-alpha12-alpha.cfc93fc7":"2017-03-08T03:46:26.751Z","1.0.0-alpha12-alpha.e22dfd31":"2017-03-13T19:58:05.780Z","1.0.0-alpha12-alpha.3e72cc6f":"2017-03-13T20:13:41.358Z","1.0.0-alpha12-alpha.c8cb2100":"2017-03-13T22:29:19.431Z","1.0.0-alpha12-alpha.4ba57c84":"2017-03-14T19:05:12.550Z","1.0.0-alpha12-alpha.a7e9d9c0":"2017-03-14T19:18:22.903Z","1.0.0-alpha12-alpha.75167f51":"2017-03-15T01:04:22.668Z","1.0.0-alpha12-alpha.4af3700e":"2017-03-15T23:20:22.691Z","1.0.0-alpha12-alpha.dfc40de1":"2017-03-17T22:35:21.476Z","1.0.0-alpha12-alpha.f32320b1":"2017-03-20T21:35:08.089Z","1.0.0-alpha12-alpha.547467c5":"2017-03-20T21:48:15.038Z","1.0.0-alpha12-alpha.3d7a5eb6":"2017-03-21T01:49:54.949Z","1.0.0-alpha12-alpha.b3dbfd2b":"2017-03-21T18:21:58.050Z","1.0.0-alpha12-alpha.4575c38e":"2017-03-21T20:12:47.935Z","1.0.0-alpha12-alpha.1b1c742b":"2017-03-21T22:05:26.514Z","1.0.0-alpha12-alpha.545e4a03":"2017-03-21T22:09:12.068Z","1.0.0-alpha12-alpha.4f30010e":"2017-03-21T22:12:20.682Z","1.0.0-alpha12-alpha.e1f27e45":"2017-03-23T18:18:31.101Z","1.0.0-alpha12-alpha.d37d5d32":"2017-03-24T23:55:54.816Z","1.0.0-alpha12-alpha.81355cc0":"2017-03-27T16:11:51.900Z","1.0.0-alpha12-alpha.dbf1a599":"2017-03-27T16:28:36.113Z","1.0.0-alpha12-alpha.10141fd4":"2017-03-27T17:58:51.539Z","1.0.0-alpha12-alpha.6e55cfe7":"2017-03-27T18:39:57.109Z","1.0.0-alpha12-alpha.d7d6ef64":"2017-03-27T22:38:20.208Z","1.0.0-alpha12-alpha.dffeaa1f":"2017-03-28T13:15:09.668Z","1.0.0-alpha12-alpha.c155b956":"2017-03-28T13:39:23.042Z","1.0.0-alpha12-alpha.80e93d69":"2017-03-28T14:40:10.375Z","1.0.0-alpha12-alpha.4e93d2cf":"2017-03-28T19:06:28.227Z","1.0.0-alpha12-alpha.351006cf":"2017-03-28T22:13:16.728Z","1.0.0-alpha12-alpha.0b4b912a":"2017-04-10T22:34:08.250Z","1.0.0-alpha12-alpha.1fdb9004":"2017-04-11T00:38:25.771Z","1.0.0-alpha12-alpha.51e1923f":"2017-04-18T18:41:25.608Z","1.0.0-alpha12-alpha.571b4bbd":"2017-04-19T00:37:13.639Z","1.0.0-alpha12-alpha.c0bba969":"2017-04-19T20:36:08.457Z","1.0.0-alpha12-alpha.89d880ee":"2017-04-21T00:30:41.781Z","1.0.0-alpha12-alpha.b66dd8d3":"2017-04-21T00:37:29.435Z","1.0.0-alpha12-alpha.577b9e82":"2017-04-22T00:34:40.352Z","1.0.0-alpha12-alpha.8370739a":"2017-04-23T03:15:42.596Z","1.0.0-alpha13":"2017-04-24T22:09:18.229Z","1.0.0-alpha13-alpha.c6e3cbb2":"2017-04-26T19:36:54.862Z","1.0.0-alpha13-alpha.91dbde54":"2017-04-26T21:08:51.187Z","1.0.0-alpha13-alpha.ec011f40":"2017-04-27T00:58:01.924Z","1.0.0-alpha13-alpha.537d11c6":"2017-04-27T04:11:22.743Z","1.0.0-alpha13-alpha.0189ea42":"2017-04-28T22:29:27.572Z","1.0.0-alpha13-alpha.215cabc2":"2017-05-01T23:02:03.697Z","1.0.0-alpha13-alpha.526805ab":"2017-05-03T22:17:27.232Z","1.0.0-alpha13-alpha.0f0222b8":"2017-05-04T16:09:15.765Z","1.0.0-alpha13-alpha.7d186994":"2017-05-04T16:29:40.466Z","1.0.0-alpha13-alpha.a3ef328b":"2017-05-04T19:51:55.767Z","1.0.0-alpha13-alpha.84bd4b24":"2017-05-04T20:33:24.290Z","1.0.0-alpha13-alpha.7efda7f0":"2017-05-04T23:03:14.013Z","1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:07.987Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:39.899Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:32:12.310Z","1.0.0-alpha14":"2017-05-06T01:18:11.960Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:02.721Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:07.053Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:08.384Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:43:59.907Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:55:02.090Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:11:59.571Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:32.862Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:34:00.790Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:24.904Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:25.186Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:29:46.625Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:35.221Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:22:00.310Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:32.459Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:24.379Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:29:47.252Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:05:51.108Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:27:03.091Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:42:47.934Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:40:01.579Z","1.0.0-alpha16":"2017-05-26T09:30:26.046Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:40.886Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:47:40.962Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:19.924Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:20.803Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:37:49.707Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:16:45.449Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:30.907Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:42.942Z","1.0.0-alpha17":"2017-06-02T18:44:55.478Z","1.0.0-alpha19":"2017-06-03T02:02:25.727Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:42.217Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:37:57.564Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:38:59.636Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:33:53.703Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:15.044Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:51:57.644Z","1.0.0-alpha.22":"2017-06-08T04:27:52.606Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:06.989Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:22.981Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:40.810Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:14.943Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:25:48.787Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:07:19.448Z","1.0.0-alpha.23":"2017-06-14T00:30:13.032Z","1.0.0-beta.1":"2017-06-15T20:25:48.986Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:09.097Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:22.840Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:30.667Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:35:49.340Z","1.0.0-beta.3":"2017-06-21T18:04:51.699Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:11.479Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:30.159Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:42.957Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:18:57.941Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:51.097Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:37.659Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:41.914Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:37.874Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:17.873Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:24.372Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:00.731Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:21:55.652Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:17.848Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:40:49.659Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:33.430Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:32.407Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:06.646Z","1.0.0":"2017-07-06T19:43:27.664Z","1.0.1":"2017-07-06T19:48:54.019Z","1.0.2":"2017-08-11T14:03:09.990Z","1.0.3":"2017-08-11T20:02:56.406Z","1.0.4":"2017-08-19T01:52:21.719Z","1.1.0-alpha.22c8a6f1":"2017-08-24T16:12:22.228Z","2.0.0":"2017-08-25T18:06:56.380Z","1.0.5":"2017-08-25T18:21:49.539Z","1.0.6":"2017-08-25T23:49:02.890Z","2.0.0-alpha.1":"2017-08-28T19:39:10.752Z","1.0.7":"2017-08-28T20:42:04.433Z","1.0.8":"2017-08-30T22:58:36.467Z","1.0.9":"2017-08-31T23:41:27.142Z","2.0.0-alpha.2":"2017-09-03T19:01:25.470Z","1.1.0-alpha.76b32701":"2017-09-15T18:00:57.446Z","1.1.0-alpha.2e1e7782":"2017-09-15T18:12:35.364Z","1.1.0-alpha.93f2e2a2":"2017-09-16T11:50:02.865Z","1.1.0-alpha.5db7a275":"2017-09-16T13:45:57.292Z","1.1.0-alpha.1460dad9":"2017-09-18T12:28:46.512Z","1.0.10":"2017-10-15T20:47:59.200Z","1.0.11":"2017-11-29T00:09:29.986Z","1.0.12":"2017-12-10T00:45:26.024Z","2.0.0-alpha.f20ac0ed":"2018-01-11T18:39:01.494Z","2.0.0-alpha.a0a09c94":"2018-01-11T18:47:55.031Z","2.0.0-alpha.b50f2063":"2018-01-11T18:55:00.577Z","2.0.0-alpha.03b9df85":"2018-01-12T14:36:05.561Z","2.0.0-alpha.e9df8e57":"2018-01-12T14:47:22.485Z","2.0.0-alpha.8c822451":"2018-01-12T15:00:50.475Z","2.0.0-alpha.e5586916":"2018-01-12T15:22:23.564Z","2.0.0-alpha.9da1bca1":"2018-01-12T18:07:25.602Z","2.0.0-alpha.aeb05561":"2018-01-18T01:52:59.209Z","2.0.0-alpha.7b47e00d":"2018-01-18T02:10:01.573Z","2.0.0-alpha.f5c1df61":"2018-01-18T17:30:19.987Z","2.0.0-alpha.926cb6da":"2018-01-21T01:42:14.241Z","2.0.0-alpha.3f307d61":"2018-01-21T02:22:50.886Z","1.0.13":"2018-01-23T19:17:55.361Z","2.0.0-alpha.d1544e1b":"2018-01-25T00:14:19.223Z","2.0.0-alpha.53bbd4cd":"2018-02-10T20:34:33.675Z","2.0.0-alpha.2b695217":"2018-02-10T22:36:43.097Z","2.0.0-alpha.32ef58da":"2018-02-11T03:44:42.750Z","2.0.0-alpha.5182142b":"2018-02-11T04:12:27.931Z","1.0.14":"2018-02-13T01:11:59.528Z","2.0.0-alpha.6ab84875":"2018-02-15T02:06:43.425Z","2.0.0-alpha.9d4de2a6":"2018-02-15T20:32:25.018Z","2.0.0-alpha.9e381f74":"2018-02-15T21:12:33.087Z","2.0.0-alpha.dd504153":"2018-02-15T21:29:40.609Z","2.0.0-alpha.b68b7f5c":"2018-02-15T22:00:44.462Z","2.0.0-alpha.bb258cb5":"2018-02-16T00:29:40.582Z","2.0.0-alpha.e28a1c8e":"2018-02-16T01:11:04.426Z","2.0.0-alpha.067e672c":"2018-02-17T02:45:11.071Z","2.0.0-alpha.d0b8dd9e":"2018-02-17T19:05:08.646Z","2.0.0-alpha.e66c6c9c":"2018-02-27T01:24:52.296Z","1.0.15":"2018-02-28T20:39:59.990Z","2.0.0-alpha.2cbec6d6":"2018-03-03T06:46:38.437Z","2.0.0-alpha.3":"2018-03-03T07:23:55.313Z","2.0.0-alpha.f98688ee":"2018-03-07T02:25:43.800Z","2.0.0-alpha.9fe50b00":"2018-03-08T03:04:21.385Z","2.0.0-alpha.34eda94b":"2018-03-17T21:22:16.000Z","2.0.0-alpha.12622d64":"2018-03-18T00:00:08.254Z","2.0.0-alpha.84bd71b4":"2018-03-18T00:39:55.828Z","2.0.0-alpha.6ad61a13":"2018-03-21T17:49:31.989Z","2.0.0-alpha.5f47082e":"2018-03-23T22:47:41.246Z","2.0.0-alpha.4":"2018-03-23T23:19:00.821Z","2.0.0-alpha.95fcd4af":"2018-03-29T02:22:30.445Z","2.0.0-alpha.20252dc3":"2018-03-29T02:44:15.767Z","2.0.0-alpha.4a09f745":"2018-04-05T22:14:53.093Z","2.0.0-alpha.76793cd8":"2018-04-07T22:12:18.859Z","2.0.0-alpha.5c9569c0":"2018-04-19T16:57:02.142Z","2.0.0-alpha.523a4286":"2018-04-19T23:52:05.968Z","2.0.0-alpha.5421f383":"2018-04-20T06:52:54.674Z","2.0.0-alpha.e9c3027b":"2018-04-20T17:56:26.800Z","2.0.0-alpha.5":"2018-04-22T01:54:02.111Z","2.0.0-alpha.6":"2018-04-25T16:25:15.697Z","2.0.0-alpha.7":"2018-04-26T18:19:36.599Z","2.0.0-alpha.8":"2018-05-05T19:28:44.552Z","1.0.16":"2018-05-07T16:13:35.096Z","2.0.0-alpha.9":"2018-05-11T21:43:48.958Z","2.0.0-alpha.11":"2018-05-15T19:54:37.077Z","2.0.0-alpha.12":"2018-05-18T15:35:48.579Z","2.0.0-alpha.13":"2018-05-25T14:30:46.613Z","1.0.17":"2018-05-31T12:38:29.582Z","2.0.0-alpha.14":"2018-05-31T14:04:07.982Z","2.0.0-alpha.15":"2018-05-31T17:16:30.002Z","1.0.18":"2018-05-31T18:46:06.979Z","2.0.0-alpha.16":"2018-06-11T15:23:10.787Z","2.0.0-alpha.17":"2018-06-11T16:55:04.100Z","2.0.0-alpha.18":"2018-06-16T19:08:48.004Z","2.0.0-alpha.8ac171a1":"2018-06-16T19:25:25.945Z","2.0.0-alpha.e328d33f":"2018-06-16T19:32:56.862Z","2.0.0-alpha.80a21f04":"2018-06-16T19:37:09.495Z","2.0.0-alpha.19":"2018-06-16T23:32:53.644Z","2.0.0-beta.0":"2018-06-17T06:53:55.700Z","2.0.0-beta.1":"2018-06-17T08:12:53.664Z","2.0.0-beta.2":"2018-06-20T20:45:29.782Z","2.0.0-beta.3":"2018-07-06T17:09:00.500Z","2.0.0-beta.4":"2018-07-21T16:00:09.157Z","2.0.0-beta.5":"2018-07-24T21:32:22.311Z","2.0.0-beta.6":"2018-08-02T14:10:50.936Z","2.0.0-beta.7":"2018-08-07T09:39:58.404Z","2.0.0-beta.8":"2018-08-07T09:47:12.100Z","2.0.0-beta.9":"2018-08-07T09:51:19.909Z","2.0.0-beta.10":"2018-08-21T00:38:50.900Z","2.0.0-rc.0":"2018-08-21T00:58:37.566Z","2.0.0-rc.1":"2018-08-29T18:28:54.921Z","2.0.0-rc.2":"2018-08-31T19:14:58.379Z","2.0.0-rc.3":"2018-09-05T13:12:24.630Z","2.0.0-rc.4":"2018-09-05T21:47:24.128Z","2.0.0-rc.5":"2018-09-07T22:43:31.939Z","2.0.0-rc.6":"2018-09-08T22:08:07.506Z","2.0.0-rc.7":"2018-09-12T15:28:08.694Z","2.0.0-rc.8":"2018-09-14T20:48:25.816Z","2.0.0-rc.9":"2018-09-17T15:46:10.341Z","2.0.5":"2018-09-17T20:41:58.869Z","2.0.6":"2018-10-09T19:57:45.699Z","2.0.7":"2018-10-16T15:14:48.661Z","2.0.8":"2018-10-23T12:19:01.666Z","2.0.9":"2018-10-24T17:05:40.858Z","2.0.10":"2018-10-29T15:23:59.381Z","2.0.11":"2018-11-01T15:35:19.350Z","2.0.12":"2018-11-05T21:54:41.449Z","2.0.13":"2018-11-08T01:37:01.257Z","2.0.14":"2018-11-13T12:32:13.402Z","2.0.15":"2018-11-14T20:23:45.928Z","2.0.16":"2018-11-20T22:15:27.016Z","2.0.17":"2018-11-21T21:15:11.803Z","2.0.18":"2018-11-29T12:13:51.007Z","2.0.19":"2018-12-07T16:14:55.693Z","2.0.20":"2018-12-17T13:43:42.768Z","2.0.21":"2019-01-06T05:00:21.436Z","2.0.22":"2019-01-28T16:58:36.175Z","2.0.23":"2019-02-07T12:46:45.911Z","2.0.24":"2019-02-19T13:59:47.915Z","2.0.25-alpha.0":"2019-03-04T07:13:50.314Z","2.0.25":"2019-03-11T15:24:28.085Z","2.0.25-asset-prefix.148":"2019-03-28T16:32:34.567Z","2.0.25-asset-prefix.156":"2019-04-30T20:54:01.004Z","2.1.0":"2019-05-02T19:09:52.354Z","2.1.1":"2019-05-17T20:31:09.792Z","2.1.1-per-page-manifest.179":"2019-05-23T03:32:26.527Z","2.1.2-per-page-manifest.136":"2019-05-29T03:16:02.896Z","2.1.2":"2019-06-12T23:02:08.848Z","2.1.3":"2019-06-13T01:29:54.484Z","2.2.0":"2019-06-20T13:49:04.285Z"},"tags":{"latest":"2.2.0","asset-prefix":"2.0.25-asset-prefix.156","per-page-manifest":"2.1.2-per-page-manifest.136"},"description":"Gatsby plugin which sets up a site to be able to run offline","dependencies":{"@babel/runtime":"^7.0.0","cheerio":"^1.0.0-rc.2","idb-keyval":"^3.1.0","lodash":"^4.17.10","workbox-build":"^3.6.3"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cpx":"^1.5.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-offline","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-offline","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-offline","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-offline\n\nAdds drop-in support for making a Gatsby site work offline and more resistant to\nbad network connections. It creates a service worker for the site and loads the\nservice worker into the client.\n\nIf you're using this plugin with `gatsby-plugin-manifest` (recommended) this\nplugin should be listed _after_ that plugin so the manifest file can be included\nin the service worker.\n\n## Install\n\n`npm install --save gatsby-plugin-offline`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nplugins: [`gatsby-plugin-offline`]\n```\n\n## Overriding options\n\nWhen adding this plugin to your `gatsby-config.js`, you can pass in options to\noverride the default [Workbox](https://developers.google.com/web/tools/workbox/modules/workbox-build) config.\n\nThe default config is as follows. Warning: you can break the offline support by\nchanging these options, so tread carefully.\n\n```javascript\nconst options = {\n importWorkboxFrom: `local`,\n globDirectory: rootDir,\n globPatterns,\n modifyUrlPrefix: {\n // If `pathPrefix` is configured by user, we should replace\n // the default prefix with `pathPrefix`.\n \"/\": `${pathPrefix}/`,\n },\n cacheId: `gatsby-plugin-offline`,\n // Don't cache-bust JS or CSS files, and anything in the static directory,\n // since these files have unique URLs and their contents will never change\n dontCacheBustUrlsMatching: /(\\.js$|\\.css$|static\\/)/,\n runtimeCaching: [\n {\n // Use cacheFirst since these don't need to be revalidated (same RegExp\n // and same reason as above)\n urlPattern: /(\\.js$|\\.css$|static\\/)/,\n handler: `cacheFirst`,\n },\n {\n // Add runtime caching of various other page resources\n urlPattern: /^https?:.*\\.(png|jpg|jpeg|webp|svg|gif|tiff|js|woff|woff2|json|css)$/,\n handler: `staleWhileRevalidate`,\n },\n {\n // Google Fonts CSS (doesn't end in .css so we need to specify it)\n urlPattern: /^https?:\\/\\/fonts\\.googleapis\\.com\\/css/,\n handler: `staleWhileRevalidate`,\n },\n ],\n skipWaiting: true,\n clientsClaim: true,\n}\n```\n\n## Remove\n\nIf you want to remove `gatsby-plugin-offline` from your site at a later point,\nsubstitute it with [`gatsby-plugin-remove-serviceworker`](https://www.npmjs.com/package/gatsby-plugin-remove-serviceworker)\nto safely remove the service worker. First, install the new package:\n\n```bash\nnpm install gatsby-plugin-remove-serviceworker\nnpm uninstall gatsby-plugin-offline\n```\n\nThen, update your `gatsby-config.js`:\n\n```diff:title=gatsby-config.js\n plugins: [\n- `gatsby-plugin-offline`,\n+ `gatsby-plugin-remove-serviceworker`,\n ]\n```\n\nThis will ensure that the worker is properly unregistered, instead of leaving an\noutdated version registered in users' browsers.\n\n## Notes\n\n### Empty View Source and SEO\n\nGatsby offers great SEO capabilities and that is no different with `gatsby-plugin-offline`. However, you shouldn't think that Gatsby doesn't serve HTML tags anymore when looking at your source code in the browser (with `Right click` => `View source`). `View source` doesn't represent the actual HTML data since `gatsby-plugin-offline` registers and loads a service worker that will cache and handle this differently. Your site is loaded from the service worker, not from its actual source (check your `Network` tab in the DevTools for that).\n\nTo see the HTML data that crawlers will receive, run this in your terminal:\n\n```bash\ncurl https://www.yourdomain.tld\n```\n\nAlternatively you can have a look at the `/public/index.html` file in your project folder.\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","offline","precache","service-worker"],"computedKeywords":[],"computedMetadata":{},"created":1487617805012,"modified":1561038547278,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:06.681Z","_searchInternal":{"concatenatedName":"gatsbypluginoffline","alternativeNames":["gatsbypluginoffline","gatsby plugin offline","gatsby-plugin-offline"],"downloadsMagnitude":6,"jsDelivrPopularity":1},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-offline/CHANGELOG.md","jsDelivrHits":1739,"objectID":"gatsby-plugin-offline","_highlightResult":{"name":{"value":"gatsby-plugin-offline","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin which sets up a site to be able to run offline","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"offline","matchLevel":"none","matchedWords":[]},{"value":"precache","matchLevel":"none","matchedWords":[]},{"value":"service-worker","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginoffline","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin offline","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-offline","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-page-creator","downloadsLast30Days":666029,"downloadsRatio":0.001459345044680990,"humanDownloadsLast30Days":"666k","popular":false,"version":"2.1.1","versions":{"1.0.1":"2018-06-14T09:04:16.429Z","1.0.2-0":"2018-06-14T12:39:36.343Z","2.0.0-alpha.2":"2018-06-16T23:32:53.952Z","2.0.0-alpha.3":"2018-06-17T02:55:58.697Z","2.0.0-alpha.4":"2018-06-17T05:04:03.259Z","2.0.0-beta.0":"2018-06-17T06:53:55.760Z","2.0.0-beta.1":"2018-06-17T08:12:55.262Z","2.0.0-beta.2":"2018-06-20T20:45:30.427Z","2.0.0-beta.3":"2018-07-11T02:58:17.432Z","2.0.0-beta.4":"2018-07-11T13:00:15.754Z","2.0.0-beta.5":"2018-07-21T16:00:09.200Z","2.0.0-rc.0":"2018-08-21T00:58:40.989Z","2.0.0-rc.1":"2018-08-29T18:28:55.076Z","2.0.0-rc.3":"2018-09-11T10:48:48.237Z","2.0.0-rc.4":"2018-09-11T11:23:07.808Z","2.0.0-rc.5":"2018-09-11T12:12:12.970Z","2.0.0":"2018-09-17T20:42:10.144Z","2.0.1":"2018-10-01T12:56:03.109Z","2.0.2":"2018-10-29T15:24:03.377Z","2.0.3":"2018-11-06T01:40:04.062Z","2.0.4":"2018-11-08T01:37:02.689Z","2.0.5":"2018-11-29T12:13:51.315Z","2.0.6":"2019-02-01T12:25:11.423Z","2.0.7":"2019-02-19T13:59:47.490Z","2.0.8":"2019-02-22T13:42:22.722Z","2.0.9-alpha.0":"2019-03-04T07:13:50.453Z","2.0.9":"2019-03-05T20:25:41.658Z","2.0.10":"2019-03-11T15:24:30.842Z","2.0.11":"2019-03-22T13:36:09.222Z","2.0.12":"2019-03-26T16:33:49.837Z","2.0.13":"2019-05-14T20:03:30.498Z","2.1.0":"2019-06-20T13:49:05.037Z","2.1.1":"2019-06-24T09:44:44.466Z"},"tags":{"latest":"2.1.1"},"description":"Gatsby plugin that automatically creates pages from React components in specified directories","dependencies":{"@babel/runtime":"^7.0.0","bluebird":"^3.5.0","fs-exists-cached":"^1.0.0","gatsby-page-utils":"^0.0.2","glob":"^7.1.1","lodash":"^4.17.10","micromatch":"^3.1.10"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.0.5"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-page-creator","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-page-creator","head":"e140aefee2a8a2ac893e151ceaa9fb238465f517","branch":"e140aefee2a8a2ac893e151ceaa9fb238465f517"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-page-creator","head":"e140aefee2a8a2ac893e151ceaa9fb238465f517"},"gitHead":"e140aefee2a8a2ac893e151ceaa9fb238465f517","readme":"# gatsby-plugin-page-creator\n\nGatsby plugin that automatically creates pages from React components in specified directories. Gatsby\nincludes this plugin automatically in all sites for creating pages from components in `src/pages`.\n\nWith this plugin, _any_ file that lives in the `src/pages` folder (or subfolders) will be expected to export a React Component to generate a Page. The following files are automatically excluded:\n\n- `template-*`\n- `__tests__/*`\n- `*.test.jsx?`\n- `*.spec.jsx?`\n- `*.d.tsx?`\n- `*.json`\n- `*.yaml`\n- `_*`\n- `.*`\n\nTo exclude custom patterns, see [Ignoring Specific Files](#ignoring-specific-files)\n\n## Install\n\n`npm install --save gatsby-plugin-page-creator`\n\n## How to use\n\n```javascript\n// gatsby-config.js\n\nmodule.exports = {\n plugins: [\n // You can have multiple instances of this plugin\n // to create pages from React components in different directories.\n //\n // The following sets up the pattern of having multiple\n // \"pages\" directories in your project\n {\n resolve: `gatsby-plugin-page-creator`,\n options: {\n path: `${__dirname}/src/account/pages`,\n },\n },\n {\n resolve: `gatsby-plugin-page-creator`,\n options: {\n path: `${__dirname}/src/settings/pages`,\n },\n },\n ],\n}\n```\n\n### Ignoring Specific Files\n\n#### Shorthand\n\n```javascript\n// The following example will disable the `/blog` index page\n\n// gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-page-creator`,\n options: {\n path: `${__dirname}/src/indexes/pages`,\n ignore: [`blog.(js|ts)?(x)`],\n // See pattern syntax recognized by micromatch\n // https://www.npmjs.com/package/micromatch#matching-features\n },\n },\n ],\n}\n```\n\n**NOTE**: The above code snippet will only stop the creation of the `/blog` page, which is defined as a React component.\nThis plugin does not affect programmatically generated pages from the [createPagesAPI](https://www.gatsbyjs.org/docs/node-apis/#createPages).\n\n#### Ignore Options\n\n```javascript\n// The following example will ignore pages using case-insensitive matching\n\n// gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-page-creator`,\n options: {\n path: `${__dirname}/src/examples/pages`,\n ignore: {\n // Example: Ignore `file.example.js`, `dir/s/file.example.tsx`\n patterns: [`**/*.example.(js|ts)?(x)`],\n // Example: Match both `file.example.js` and `file.EXAMPLE.js`\n options: { nocase: true },\n // See all available micromatch options\n // https://www.npmjs.com/package/micromatch#optionsnocase\n },\n },\n },\n ],\n}\n```\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1528967056376,"modified":1561369487044,"lastPublisher":{"name":"wardpeet","email":"ward@coding-tech.com","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T20:19:04.948Z","_searchInternal":{"concatenatedName":"gatsbypluginpagecreator","alternativeNames":["gatsbypluginpagecreator","gatsby plugin page creator","gatsby-plugin-page-creator"],"downloadsMagnitude":6,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-page-creator/CHANGELOG.md","jsDelivrHits":6,"objectID":"gatsby-plugin-page-creator","_highlightResult":{"name":{"value":"gatsby-plugin-page-creator","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin that automatically creates pages from React components in specified directories","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginpagecreator","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin page creator","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-page-creator","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-source-filesystem","downloadsLast30Days":626722,"downloadsRatio":0.001327206146909902,"humanDownloadsLast30Days":"626.7k","popular":false,"version":"2.1.1","versions":{"1.0.0-alpha11-alpha.509175e4":"2016-12-02T23:36:35.203Z","1.0.0-alpha11-alpha.8c700c2a":"2016-12-07T18:42:04.326Z","1.0.0-alpha11-alpha.cb563442":"2016-12-09T19:15:39.003Z","1.0.0-alpha11-alpha.76836378":"2016-12-09T19:30:05.258Z","1.0.0-alpha11-alpha.444221ce":"2016-12-09T19:47:55.811Z","1.0.0-alpha11-alpha.9f201853":"2016-12-27T17:41:57.184Z","1.0.0-alpha11-alpha.00fcfe90":"2016-12-28T17:54:20.706Z","1.0.0-alpha11-alpha.e51dc4fa":"2016-12-30T00:09:48.945Z","1.0.0-alpha11-alpha.239ee381":"2017-01-02T18:50:07.316Z","1.0.0-alpha11-alpha.0b9c105c":"2017-01-02T23:51:36.509Z","1.0.0-alpha11-alpha.2e7707b3":"2017-01-03T00:14:59.252Z","1.0.0-alpha11-alpha.ef926aca":"2017-01-03T00:25:44.715Z","1.0.0-alpha11-alpha.da03570a":"2017-01-03T05:18:04.120Z","1.0.0-alpha11-alpha.c0e24037":"2017-01-03T18:09:17.267Z","1.0.0-alpha11-alpha.703baa91":"2017-01-03T18:44:00.830Z","1.0.0-alpha11-alpha.68e8f9a1":"2017-01-12T18:13:41.576Z","1.0.0-alpha11-alpha.e814ddf0":"2017-01-12T23:54:31.016Z","1.0.0-alpha11-alpha.24b9cc3c":"2017-01-13T00:18:26.036Z","1.0.0-alpha11-alpha.696c2e32":"2017-01-13T03:04:21.079Z","1.0.0-alpha11-alpha.930a4aa1":"2017-01-13T18:26:02.514Z","1.0.0-alpha11-alpha.69d037ff":"2017-01-13T20:09:52.486Z","1.0.0-alpha11-alpha.3b0066c5":"2017-01-18T01:10:32.371Z","1.0.0-alpha11-alpha.74cc5530":"2017-01-18T01:27:52.627Z","1.0.0-alpha11-alpha.ef5273bb":"2017-01-19T22:40:05.096Z","1.0.0-alpha11-alpha.7c86b918":"2017-01-20T00:42:49.205Z","1.0.0-alpha11-alpha.268aa2cc":"2017-01-20T19:47:34.895Z","1.0.0-alpha11-alpha.3757e4a8":"2017-01-24T01:48:33.694Z","1.0.0-alpha11-alpha.f19f649f":"2017-01-24T01:50:06.741Z","1.0.0-alpha11-alpha.9a073a03":"2017-01-24T06:06:20.178Z","1.0.0-alpha11-alpha.9e7a535a":"2017-01-24T06:43:01.883Z","1.0.0-alpha11-alpha.ee2cc7e9":"2017-01-25T22:43:05.201Z","1.0.0-alpha11-alpha.fabe2335":"2017-02-01T20:53:44.457Z","1.0.0-alpha11-alpha.6ffa9761":"2017-02-04T02:43:35.714Z","1.0.0-alpha11-alpha.f46304ad":"2017-02-06T19:31:30.030Z","1.0.0-alpha11-alpha.3e341373":"2017-02-06T20:29:47.535Z","1.0.0-alpha11-alpha.c623e1cc":"2017-02-06T23:31:34.302Z","1.0.0-alpha11-alpha.267af45c":"2017-02-07T18:26:15.306Z","1.0.0-alpha11-alpha.2a65312c":"2017-02-07T19:29:48.366Z","1.0.0-alpha11":"2017-02-07T20:38:32.920Z","1.0.0-alpha12-alpha.1dc37e8b":"2017-02-10T18:39:02.617Z","1.0.0-alpha12-alpha.117c94f8":"2017-02-14T00:02:32.672Z","1.0.0-alpha12-alpha.373740a8":"2017-02-14T00:36:19.913Z","1.0.0-alpha12-alpha.bdc68bfd":"2017-02-17T22:20:15.484Z","1.0.0-alpha12-alpha.faff3fa9":"2017-02-17T22:26:14.070Z","1.0.0-alpha12-alpha.a82bd105":"2017-02-18T00:07:24.127Z","1.0.0-alpha12-alpha.d452aed2":"2017-02-20T19:10:08.420Z","1.0.0-alpha12-alpha.40e6a4d1":"2017-02-20T19:29:50.260Z","1.0.0-alpha12-alpha.f4d91ef3":"2017-02-20T20:05:31.541Z","1.0.0-alpha12-alpha.659f61a4":"2017-02-20T23:23:45.623Z","1.0.0-alpha12-alpha.e1a3cfed":"2017-02-20T23:29:24.923Z","1.0.0-alpha12-alpha.70258e9c":"2017-02-22T00:46:32.375Z","1.0.0-alpha12":"2017-02-22T01:12:45.167Z","1.0.0-alpha12-alpha.209952c2":"2017-02-22T18:43:01.631Z","1.0.0-alpha12-alpha.8f812d13":"2017-02-22T19:08:52.604Z","1.0.0-alpha12-alpha.10a12536":"2017-02-22T22:35:34.115Z","1.0.0-alpha12-alpha.d82af48f":"2017-03-06T18:43:05.837Z","1.0.0-alpha12-alpha.9a2a3c59":"2017-03-06T19:06:24.499Z","1.0.0-alpha12-alpha.72e8aced":"2017-03-06T20:02:12.739Z","1.0.0-alpha12-alpha.04c05494":"2017-03-06T20:30:50.950Z","1.0.0-alpha12-alpha.352b3448":"2017-03-06T22:18:21.508Z","1.0.0-alpha12-alpha.f205e4d4":"2017-03-06T22:26:04.876Z","1.0.0-alpha12-alpha.3a216f9f":"2017-03-07T21:32:58.441Z","1.0.0-alpha12-alpha.3f98b323":"2017-03-08T03:20:35.703Z","1.0.0-alpha12-alpha.cfc93fc7":"2017-03-08T03:46:29.594Z","1.0.0-alpha12-alpha.e22dfd31":"2017-03-13T19:58:07.488Z","1.0.0-alpha12-alpha.3e72cc6f":"2017-03-13T20:13:46.258Z","1.0.0-alpha12-alpha.c8cb2100":"2017-03-13T22:29:22.892Z","1.0.0-alpha12-alpha.4ba57c84":"2017-03-14T19:05:12.572Z","1.0.0-alpha12-alpha.a7e9d9c0":"2017-03-14T19:18:24.489Z","1.0.0-alpha12-alpha.75167f51":"2017-03-15T01:04:24.369Z","1.0.0-alpha12-alpha.4af3700e":"2017-03-15T23:20:25.042Z","1.0.0-alpha12-alpha.dfc40de1":"2017-03-17T22:35:24.599Z","1.0.0-alpha12-alpha.f32320b1":"2017-03-20T21:35:09.281Z","1.0.0-alpha12-alpha.547467c5":"2017-03-20T21:48:16.888Z","1.0.0-alpha12-alpha.3d7a5eb6":"2017-03-21T01:49:55.081Z","1.0.0-alpha12-alpha.b3dbfd2b":"2017-03-21T18:22:00.486Z","1.0.0-alpha12-alpha.4575c38e":"2017-03-21T20:12:47.825Z","1.0.0-alpha12-alpha.1b1c742b":"2017-03-21T22:05:28.945Z","1.0.0-alpha12-alpha.545e4a03":"2017-03-21T22:09:15.716Z","1.0.0-alpha12-alpha.4f30010e":"2017-03-21T22:12:22.397Z","1.0.0-alpha12-alpha.e1f27e45":"2017-03-23T18:18:33.748Z","1.0.0-alpha12-alpha.d37d5d32":"2017-03-24T23:55:58.436Z","1.0.0-alpha12-alpha.81355cc0":"2017-03-27T16:11:57.160Z","1.0.0-alpha12-alpha.dbf1a599":"2017-03-27T16:28:40.485Z","1.0.0-alpha12-alpha.10141fd4":"2017-03-27T17:58:57.513Z","1.0.0-alpha12-alpha.6e55cfe7":"2017-03-27T18:40:02.716Z","1.0.0-alpha12-alpha.d7d6ef64":"2017-03-27T22:38:25.030Z","1.0.0-alpha12-alpha.dffeaa1f":"2017-03-28T13:15:13.485Z","1.0.0-alpha12-alpha.c155b956":"2017-03-28T13:39:30.053Z","1.0.0-alpha12-alpha.80e93d69":"2017-03-28T14:40:16.575Z","1.0.0-alpha12-alpha.4e93d2cf":"2017-03-28T19:06:34.463Z","1.0.0-alpha12-alpha.351006cf":"2017-03-28T22:13:19.776Z","1.0.0-alpha12-alpha.0b4b912a":"2017-04-10T22:34:11.629Z","1.0.0-alpha12-alpha.1fdb9004":"2017-04-11T00:38:28.661Z","1.0.0-alpha12-alpha.51e1923f":"2017-04-18T18:41:26.996Z","1.0.0-alpha12-alpha.571b4bbd":"2017-04-19T00:37:15.057Z","1.0.0-alpha12-alpha.c0bba969":"2017-04-19T20:36:12.700Z","1.0.0-alpha12-alpha.89d880ee":"2017-04-21T00:30:43.167Z","1.0.0-alpha12-alpha.b66dd8d3":"2017-04-21T00:37:33.643Z","1.0.0-alpha12-alpha.577b9e82":"2017-04-22T00:34:40.806Z","1.0.0-alpha12-alpha.8370739a":"2017-04-23T03:15:45.119Z","1.0.0-alpha13":"2017-04-24T22:09:19.932Z","1.0.0-alpha13-alpha.c6e3cbb2":"2017-04-26T19:36:57.785Z","1.0.0-alpha13-alpha.91dbde54":"2017-04-26T21:08:51.289Z","1.0.0-alpha13-alpha.ec011f40":"2017-04-27T00:58:04.241Z","1.0.0-alpha13-alpha.537d11c6":"2017-04-27T04:11:30.263Z","1.0.0-alpha13-alpha.0189ea42":"2017-04-28T22:29:30.005Z","1.0.0-alpha13-alpha.215cabc2":"2017-05-01T23:02:10.707Z","1.0.0-alpha13-alpha.526805ab":"2017-05-03T22:17:32.797Z","1.0.0-alpha13-alpha.0f0222b8":"2017-05-04T16:09:24.968Z","1.0.0-alpha13-alpha.7d186994":"2017-05-04T16:29:45.608Z","1.0.0-alpha13-alpha.a3ef328b":"2017-05-04T19:52:03.553Z","1.0.0-alpha13-alpha.84bd4b24":"2017-05-04T20:33:32.285Z","1.0.0-alpha13-alpha.7efda7f0":"2017-05-04T23:03:18.788Z","1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:21.406Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:49.721Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:32:26.418Z","1.0.0-alpha14":"2017-05-06T01:18:26.130Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:12.737Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:15.298Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:16.932Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:44:17.974Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:55:19.539Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:12:16.390Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:38.973Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:34:15.806Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:37.185Z","1.0.0-alpha15":"2017-05-16T09:12:53.479Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:43.600Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:30:13.004Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:47.910Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:22:13.857Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:50.264Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:42.478Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:30:04.471Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:06:07.789Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:27:20.769Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:43:01.704Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:40:11.330Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:53.612Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:47:54.221Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:29.337Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:28.094Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:37:58.527Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:16:54.940Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:38.948Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:51.445Z","1.0.0-alpha17":"2017-06-02T18:45:00.959Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:55.482Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:38:06.398Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:39:15.739Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:34:11.527Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:32.996Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:52:14.201Z","1.0.0-alpha.22":"2017-06-08T04:28:06.539Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:19.108Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:33.534Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:55.044Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:30.897Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:26:08.216Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:08:00.884Z","1.0.0-beta.1":"2017-06-15T20:26:01.505Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:27.977Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:35.048Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:45.759Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:36:08.213Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:26.510Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:49.998Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:54.691Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:13.967Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:59.833Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:47.682Z","1.0.0-beta.4":"2017-06-23T23:12:19.234Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:52.590Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:49.622Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:28.530Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:34.751Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:15.285Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:22:06.008Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:30.852Z","1.0.0-beta.6":"2017-07-02T06:43:15.026Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:41:06.535Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:46.526Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:45.478Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:19.793Z","1.0.0":"2017-07-06T19:43:41.230Z","1.0.1":"2017-07-06T19:49:06.108Z","1.4.0":"2017-07-25T23:27:32.244Z","1.4.1":"2017-07-26T17:34:03.261Z","1.4.2":"2017-08-11T14:03:30.583Z","1.4.3":"2017-08-19T01:52:44.879Z","1.4.4":"2017-08-23T00:52:34.899Z","1.5.0-alpha.22c8a6f1":"2017-08-24T16:12:36.755Z","2.0.0":"2017-08-25T18:07:09.367Z","1.4.5":"2017-08-25T18:22:01.182Z","1.4.6":"2017-08-25T23:49:02.931Z","2.0.0-alpha.0":"2017-08-28T16:38:17.752Z","2.0.0-alpha.1":"2017-08-28T19:39:10.887Z","1.4.7":"2017-08-28T20:42:07.005Z","1.4.8":"2017-08-30T22:58:52.416Z","1.4.9":"2017-08-31T02:24:17.092Z","1.4.10":"2017-08-31T23:42:05.173Z","1.4.11":"2017-09-01T23:27:16.947Z","1.4.12":"2017-09-02T22:40:18.480Z","2.0.0-alpha.2":"2017-09-03T19:01:34.799Z","1.5.0-alpha.76b32701":"2017-09-15T18:02:02.754Z","1.5.0-alpha.93f2e2a2":"2017-09-16T11:51:02.081Z","1.5.0-alpha.5db7a275":"2017-09-16T13:46:51.241Z","1.5.0-alpha.1460dad9":"2017-09-18T12:29:38.001Z","1.5.0":"2017-09-19T22:56:03.451Z","1.5.1":"2017-09-20T13:45:24.771Z","1.5.2":"2017-10-02T22:16:00.707Z","1.5.3":"2017-10-09T21:08:25.266Z","1.5.4":"2017-10-12T20:50:29.476Z","1.5.5":"2017-10-13T18:48:26.610Z","1.5.6":"2017-10-31T23:59:37.405Z","1.5.7":"2017-11-02T20:01:44.990Z","1.5.8":"2017-11-06T18:20:53.315Z","1.5.9":"2017-11-29T00:10:09.766Z","1.5.10":"2017-12-10T00:45:43.106Z","1.5.11":"2017-12-13T03:07:48.318Z","2.0.0-alpha.f20ac0ed":"2018-01-11T18:39:33.141Z","2.0.0-alpha.a0a09c94":"2018-01-11T18:48:27.168Z","2.0.0-alpha.b50f2063":"2018-01-11T18:55:29.561Z","2.0.0-alpha.03b9df85":"2018-01-12T14:36:41.165Z","2.0.0-alpha.e9df8e57":"2018-01-12T14:47:53.211Z","2.0.0-alpha.8c822451":"2018-01-12T15:01:17.977Z","2.0.0-alpha.e5586916":"2018-01-12T15:22:54.347Z","2.0.0-alpha.9da1bca1":"2018-01-12T18:08:01.343Z","2.0.0-alpha.aeb05561":"2018-01-18T01:53:27.090Z","2.0.0-alpha.7b47e00d":"2018-01-18T02:10:24.493Z","2.0.0-alpha.f5c1df61":"2018-01-18T17:31:02.580Z","1.5.12":"2018-01-20T01:31:07.777Z","1.5.13":"2018-01-20T03:11:44.371Z","1.5.14":"2018-01-20T03:15:39.953Z","2.0.0-alpha.926cb6da":"2018-01-21T01:42:45.726Z","2.0.0-alpha.3f307d61":"2018-01-21T02:23:25.691Z","2.0.0-alpha.d1544e1b":"2018-01-25T00:14:52.606Z","1.5.15":"2018-01-26T02:37:43.932Z","1.5.16":"2018-01-29T18:16:33.817Z","1.5.17":"2018-02-05T16:30:29.007Z","1.5.18":"2018-02-06T04:00:40.907Z","2.0.0-alpha.53bbd4cd":"2018-02-10T20:35:20.627Z","2.0.0-alpha.2b695217":"2018-02-10T22:37:15.678Z","2.0.0-alpha.32ef58da":"2018-02-11T03:45:17.321Z","2.0.0-alpha.5182142b":"2018-02-11T04:13:16.887Z","1.5.19":"2018-02-13T01:12:28.322Z","2.0.0-alpha.6ab84875":"2018-02-15T02:07:22.062Z","2.0.0-alpha.9d4de2a6":"2018-02-15T20:33:03.410Z","2.0.0-alpha.9e381f74":"2018-02-15T21:13:08.952Z","2.0.0-alpha.dd504153":"2018-02-15T21:30:21.829Z","2.0.0-alpha.b68b7f5c":"2018-02-15T22:01:25.887Z","2.0.0-alpha.bb258cb5":"2018-02-16T00:30:10.193Z","2.0.0-alpha.e28a1c8e":"2018-02-16T01:11:35.557Z","1.5.20":"2018-02-16T20:44:25.101Z","2.0.0-alpha.067e672c":"2018-02-17T02:45:47.983Z","2.0.0-alpha.d0b8dd9e":"2018-02-17T19:05:54.109Z","1.5.21":"2018-02-20T19:32:33.967Z","1.5.22":"2018-02-22T23:37:18.668Z","1.5.23":"2018-02-23T18:13:32.100Z","1.5.24":"2018-02-25T21:44:45.421Z","2.0.0-alpha.e66c6c9c":"2018-02-27T01:25:43.350Z","1.5.25":"2018-02-28T20:40:38.160Z","2.0.0-alpha.2cbec6d6":"2018-03-03T06:47:12.472Z","2.0.0-alpha.3":"2018-03-03T07:24:45.552Z","1.5.26":"2018-03-04T07:23:35.425Z","2.0.0-alpha.f98688ee":"2018-03-07T02:26:18.698Z","2.0.0-alpha.9fe50b00":"2018-03-08T03:04:52.974Z","1.5.27":"2018-03-08T05:23:58.280Z","2.0.0-alpha.34eda94b":"2018-03-17T21:22:45.463Z","2.0.0-alpha.12622d64":"2018-03-18T00:00:56.673Z","2.0.0-alpha.84bd71b4":"2018-03-18T00:40:53.569Z","2.0.0-alpha.6ad61a13":"2018-03-21T17:50:19.548Z","2.0.0-alpha.5f47082e":"2018-03-23T22:48:23.787Z","2.0.0-alpha.4":"2018-03-23T23:19:47.855Z","2.0.0-alpha.95fcd4af":"2018-03-29T02:23:42.520Z","2.0.0-alpha.20252dc3":"2018-03-29T02:45:10.672Z","1.5.28":"2018-04-03T18:31:44.049Z","2.0.0-alpha.4a09f745":"2018-04-05T22:15:21.849Z","2.0.0-alpha.5":"2018-04-06T05:44:04.646Z","1.5.29":"2018-04-06T23:49:15.031Z","2.0.0-alpha.76793cd8":"2018-04-07T22:13:05.641Z","1.5.30":"2018-04-14T17:40:20.084Z","1.5.31":"2018-04-14T23:43:37.558Z","1.5.32":"2018-04-15T22:18:21.072Z","1.5.33":"2018-04-17T19:37:31.660Z","2.0.0-alpha.5c9569c0":"2018-04-19T16:58:00.313Z","2.0.0-alpha.523a4286":"2018-04-19T23:53:10.671Z","2.0.0-alpha.5421f383":"2018-04-20T06:53:54.328Z","2.0.0-alpha.e9c3027b":"2018-04-20T17:57:57.076Z","2.0.0-alpha.6":"2018-04-22T01:55:15.083Z","1.5.34":"2018-04-24T17:48:36.506Z","2.0.0-alpha.7":"2018-04-25T16:26:20.394Z","2.0.0-alpha.8":"2018-04-26T18:20:30.302Z","1.5.35":"2018-05-01T06:24:18.316Z","2.0.0-alpha.9":"2018-05-10T17:35:07.175Z","1.5.36":"2018-05-15T18:25:29.171Z","2.0.0-alpha.12":"2018-05-15T20:10:41.232Z","2.0.0-alpha.13":"2018-05-18T15:36:00.571Z","1.5.37":"2018-05-31T12:38:45.661Z","2.0.0-alpha.14":"2018-05-31T14:25:09.375Z","2.0.0-alpha.15":"2018-05-31T17:20:59.551Z","1.5.38":"2018-05-31T18:46:25.955Z","2.0.0-alpha.16":"2018-06-11T09:58:16.391Z","2.0.0-alpha.17":"2018-06-11T15:26:21.613Z","2.0.0-alpha.18":"2018-06-11T16:56:46.642Z","2.1.0-alpha.e328d33f":"2018-06-16T19:33:54.908Z","2.1.0-alpha.80a21f04":"2018-06-16T19:37:56.839Z","2.0.1-alpha.2":"2018-06-16T23:33:46.383Z","1.5.39":"2018-06-17T01:53:28.986Z","2.0.1-beta.0":"2018-06-17T06:54:18.150Z","2.0.1-beta.1":"2018-06-17T08:13:13.889Z","2.0.1-beta.2":"2018-06-20T20:45:48.360Z","2.0.1-beta.3":"2018-06-21T11:08:25.150Z","2.0.1-beta.4":"2018-07-13T23:57:07.237Z","2.0.1-beta.5":"2018-07-14T05:45:48.724Z","2.0.1-beta.6":"2018-07-18T14:11:29.872Z","2.0.1-beta.7":"2018-07-19T01:31:26.062Z","2.0.1-beta.8":"2018-07-19T23:17:10.814Z","2.0.1-beta.9":"2018-07-21T16:00:25.598Z","2.0.1-beta.10":"2018-07-24T21:32:22.379Z","2.0.1-beta.11":"2018-08-21T00:38:56.448Z","2.0.1-rc.0":"2018-08-21T00:59:30.588Z","2.0.1-rc.1":"2018-08-29T18:29:50.166Z","2.0.1-rc.2":"2018-09-07T22:43:38.199Z","2.0.1-rc.6":"2018-09-11T12:12:39.454Z","2.0.1":"2018-09-17T20:42:55.368Z","2.0.2":"2018-10-05T23:41:02.202Z","2.0.3":"2018-10-09T19:57:45.967Z","2.0.4":"2018-10-15T20:29:59.279Z","2.0.5":"2018-10-19T02:33:12.351Z","2.0.6":"2018-10-29T15:24:44.209Z","2.0.7":"2018-11-01T15:35:23.868Z","2.0.8":"2018-11-08T01:37:11.822Z","2.0.9":"2018-11-26T14:15:20.151Z","2.0.10":"2018-11-29T12:14:41.271Z","2.0.11":"2018-12-06T16:04:08.398Z","2.0.12":"2018-12-11T11:25:33.040Z","2.0.13":"2019-01-08T18:29:16.088Z","2.0.14":"2019-01-11T18:48:45.175Z","2.0.16":"2019-01-11T19:06:25.424Z","2.0.17":"2019-01-23T16:32:32.724Z","2.0.18":"2019-01-28T13:12:53.483Z","2.0.19":"2019-01-31T18:48:56.299Z","2.0.20":"2019-02-01T12:25:41.654Z","2.0.21":"2019-02-20T19:54:52.141Z","2.0.22":"2019-02-22T13:42:22.668Z","2.0.23":"2019-02-25T06:39:21.289Z","2.0.24-alpha.0":"2019-03-04T07:14:06.552Z","2.0.24":"2019-03-11T15:25:26.293Z","2.0.25":"2019-03-13T20:55:06.986Z","2.0.26":"2019-03-14T18:47:00.885Z","2.0.27":"2019-03-15T15:58:03.762Z","2.0.28":"2019-03-22T13:36:09.735Z","2.0.29":"2019-04-08T11:06:18.294Z","2.0.30":"2019-04-23T12:30:42.562Z","2.0.31":"2019-04-23T13:36:41.129Z","2.0.32":"2019-04-24T17:08:02.042Z","2.0.33":"2019-04-30T07:05:54.897Z","2.0.34":"2019-05-14T20:03:30.001Z","2.0.35":"2019-05-15T10:53:50.021Z","2.0.36":"2019-05-16T19:29:32.113Z","2.0.37":"2019-05-20T17:47:27.074Z","2.0.38":"2019-05-31T18:22:49.503Z","2.0.39":"2019-06-10T11:08:58.985Z","2.0.40":"2019-06-18T12:41:36.640Z","2.0.41-reporter-npm.9":"2019-06-18T20:12:47.627Z","2.0.41":"2019-06-18T20:53:47.275Z","2.0.42-reporter-npm.8":"2019-06-19T08:22:07.717Z","2.0.42":"2019-06-19T09:38:26.047Z","2.0.43":"2019-06-19T10:16:15.081Z","2.1.0":"2019-06-20T13:49:41.845Z","2.1.1":"2019-06-25T08:42:28.301Z"},"tags":{"latest":"2.1.1","reporter-npm":"2.0.42-reporter-npm.8"},"description":"Gatsby plugin which parses files within a directory for further parsing by other plugins","dependencies":{"@babel/runtime":"^7.0.0","better-queue":"^3.8.7","bluebird":"^3.5.0","chokidar":"2.1.2","file-type":"^10.2.0","fs-extra":"^5.0.0","got":"^7.1.0","md5-file":"^3.1.1","mime":"^2.2.0","pretty-bytes":"^4.0.2","progress":"^2.0.3","read-chunk":"^3.0.0","valid-url":"^1.0.9","xstate":"^3.1.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-source-filesystem","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-source-filesystem","head":"3e8578c97862d1715045b289ab118f6653b7feb9","branch":"3e8578c97862d1715045b289ab118f6653b7feb9"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-source-filesystem","head":"3e8578c97862d1715045b289ab118f6653b7feb9"},"gitHead":"3e8578c97862d1715045b289ab118f6653b7feb9","readme":"# gatsby-source-filesystem\n\nA Gatsby source plugin for sourcing data into your Gatsby application\nfrom your local filesystem.\n\nThe plugin creates `File` nodes from files. The various \"transformer\"\nplugins can transform `File` nodes into various other types of data e.g.\n`gatsby-transformer-json` transforms JSON files into JSON data nodes and\n`gatsby-transformer-remark` transforms markdown files into `MarkdownRemark`\nnodes from which you can query an HTML representation of the markdown.\n\n## Install\n\n`npm install --save gatsby-source-filesystem`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nmodule.exports = {\n plugins: [\n // You can have multiple instances of this plugin\n // to read source nodes from different locations on your\n // filesystem.\n //\n // The following sets up the Jekyll pattern of having a\n // \"pages\" directory for Markdown files and a \"data\" directory\n // for `.json`, `.yaml`, `.csv`.\n {\n resolve: `gatsby-source-filesystem`,\n options: {\n name: `pages`,\n path: `${__dirname}/src/pages/`,\n },\n },\n {\n resolve: `gatsby-source-filesystem`,\n options: {\n name: `data`,\n path: `${__dirname}/src/data/`,\n ignore: [`**/\\.*`], // ignore files starting with a dot\n },\n },\n ],\n}\n```\n\n## Options\n\nIn addition to the name and path parameters you may pass an optional `ignore` array of file globs to ignore.\n\nThey will be added to the following default list:\n\n```\n**/*.un~\n**/.DS_Store\n**/.gitignore\n**/.npmignore\n**/.babelrc\n**/yarn.lock\n**/node_modules\n../**/dist/**\n```\n\nTo prevent concurrent requests overload of `processRemoteNode`, you can adjust the `200` default concurrent downloads, with `GATSBY_CONCURRENT_DOWNLOAD` environment variable.\n\n## How to query\n\nYou can query file nodes like the following:\n\n```graphql\n{\n allFile {\n edges {\n node {\n extension\n dir\n modifiedTime\n }\n }\n }\n}\n```\n\nTo filter by the `name` you specified in the config, use `sourceInstanceName`:\n\n```graphql\n{\n allFile(filter: { sourceInstanceName: { eq: \"data\" } }) {\n edges {\n node {\n extension\n dir\n modifiedTime\n }\n }\n }\n}\n```\n\n## Helper functions\n\n`gatsby-source-filesystem` exports three helper functions:\n\n- `createFilePath`\n- `createRemoteFileNode`\n- `createFileNodeFromBuffer`\n\n### createFilePath\n\nWhen building pages from files, you often want to create a URL from a file's path on the file system. E.g. if you have a markdown file at `src/content/2018-01-23-an-exploration-of-the-nature-of-reality/index.md`, you might want to turn that into a page on your site at `example.com/2018-01-23-an-exploration-of-the-nature-of-reality/`. `createFilePath` is a helper function to make this task easier.\n\n```javascript\ncreateFilePath({\n // The node you'd like to convert to a path\n // e.g. from a markdown, JSON, YAML file, etc\n node:\n // Method used to get a node\n // The parameter from `onCreateNode` should be passed in here\n getNode:\n // The base path for your files.\n // Defaults to `src/pages`. For the example above, you'd use `src/content`.\n basePath:\n // Whether you want your file paths to contain a trailing `/` slash\n // Defaults to true\n trailingSlash:\n})\n```\n\n#### Example usage\n\nThe following is taken from [Gatsby Tutorial, Part Seven](https://www.gatsbyjs.org/tutorial/part-seven/) and is used to create URL slugs for markdown pages.\n\n```javascript\nconst { createFilePath } = require(`gatsby-source-filesystem`)\n\nexports.onCreateNode = ({ node, getNode, actions }) => {\n const { createNodeField } = actions\n // Ensures we are processing only markdown files\n if (node.internal.type === \"MarkdownRemark\") {\n // Use `createFilePath` to turn markdown files in our `data/faqs` directory into `/faqs/slug`\n const relativeFilePath = createFilePath({\n node,\n getNode,\n basePath: \"data/faqs/\",\n })\n\n // Creates new query'able field with name of 'slug'\n createNodeField({\n node,\n name: \"slug\",\n value: `/faqs${relativeFilePath}`,\n })\n }\n}\n```\n\n### createRemoteFileNode\n\nWhen building source plugins for remote data sources such as headless CMSs, their data will often link to files stored remotely that are often convenient to download so you can work with them locally.\n\nThe `createRemoteFileNode` helper makes it easy to download remote files and add them to your site's GraphQL schema.\n\n```javascript\ncreateRemoteFileNode({\n // The source url of the remote file\n url: `https://example.com/a-file.jpg`,\n\n // The id of the parent node (i.e. the node to which the new remote File node will be linked to.\n parentNodeId,\n\n // The redux store which is passed to all Node APIs.\n store,\n\n // Gatsby's cache which the helper uses to check if the file has been downloaded already. It's passed to all Node APIs.\n cache,\n\n // The action used to create nodes\n createNode,\n\n // A helper function for creating node Ids\n createNodeId,\n\n // OPTIONAL\n // Adds htaccess authentication to the download request if passed in.\n auth: { htaccess_user: `USER`, htaccess_pass: `PASSWORD` },\n\n // OPTIONAL\n // Adds extra http headers to download request if passed in.\n httpHeaders: { Authorization: `Bearer someAccessToken` },\n\n // OPTIONAL\n // Sets the file extension\n ext: \".jpg\",\n})\n```\n\n#### Example usage\n\nThe following example is pulled from [gatsby-source-wordpress](https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-source-wordpress). Downloaded files are created as `File` nodes and then linked to the WordPress Media node, so it can be queried both as a regular `File` node and from the `localFile` field in the Media node.\n\n```javascript\nconst { createRemoteFileNode } = require(`gatsby-source-filesystem`)\n\nexports.downloadMediaFiles = ({\n nodes,\n store,\n cache,\n createNode,\n createNodeId,\n _auth,\n}) => {\n nodes.map(async node => {\n let fileNode\n // Ensures we are only processing Media Files\n // `wordpress__wp_media` is the media file type name for Wordpress\n if (node.__type === `wordpress__wp_media`) {\n try {\n fileNode = await createRemoteFileNode({\n url: node.source_url,\n parentNodeId: node.id,\n store,\n cache,\n createNode,\n createNodeId,\n auth: _auth,\n })\n } catch (e) {\n // Ignore\n }\n }\n\n // Adds a field `localFile` to the node\n // ___NODE appendix tells Gatsby that this field will link to another node\n if (fileNode) {\n node.localFile___NODE = fileNode.id\n }\n })\n}\n```\n\nThe file node can then be queried using GraphQL. See an example of this in the [gatsby-source-wordpress README](/packages/gatsby-source-wordpress/#image-processing) where downloaded images are queried using [gatsby-transformer-sharp](/packages/gatsby-transformer-sharp/) to use in the component [gatsby-image](/packages/gatsby-image/).\n\n#### Retrieving the remote file name and extension\n\nThe helper tries first to retrieve the file name and extension by parsing the url and the path provided (e.g. if the url is https://example.com/image.jpg, the extension will be inferred as `.jpg` and the name as `image`). If the url does not contain an extension, we use the [`file-type`](https://www.npmjs.com/package/file-type) package to infer the file type. Finally, the name and the extension _can_ be explicitly passed, like so:\n\n```javascript\ncreateRemoteFileNode({\n // The source url of the remote file\n url: `https://example.com/a-file-without-an-extension`,\n parentNodeId: node.id,\n store,\n cache,\n createNode,\n createNodeId,\n // if necessary!\n ext: \".jpg\",\n name: \"image\",\n})\n```\n\n### createFileNodeFromBuffer\n\nWhen working with data that isn't already stored in a file, such as when querying binary/blob fields from a database, it's helpful to cache that data to the filesystem in order to use it with other transformers that accept files as input.\n\nThe `createFileNodeFromBuffer` helper accepts a `Buffer`, caches its contents to disk, and creates a file node that points to it.\n\n## Example usage\n\nThe following example is adapted from the source of [`gatsby-source-mysql`](https://github.com/malcolm-kee/gatsby-source-mysql):\n\n```js\n// gatsby-node.js\nconst createMySqlNodes = require(`./create-nodes`)\n\nexports.sourceNodes = async (\n { actions, createNodeId, store, cache },\n config\n) => {\n const { createNode } = actions\n const { conn, queries } = config\n const { db, results } = await query(conn, queries)\n\n try {\n queries\n .map((query, i) => ({ ...query, ___sql: results[i] }))\n .forEach(result =>\n createMySqlNodes(result, results, createNode, {\n createNode,\n createNodeId,\n store,\n cache,\n })\n )\n db.end()\n } catch (e) {\n console.error(e)\n db.end()\n }\n}\n\n// create-nodes.js\nconst { createFileNodeFromBuffer } = require(`gatsby-source-filesystem`)\nconst createNodeHelpers = require(`gatsby-node-helpers`).default\n\nconst { createNodeFactory } = createNodeHelpers({ typePrefix: `mysql` })\n\nfunction attach(node, key, value, ctx) {\n if (Buffer.isBuffer(value)) {\n ctx.linkChildren.push(parentNodeId =>\n createFileNodeFromBuffer({\n buffer: value,\n store: ctx.store,\n cache: ctx.cache,\n createNode: ctx.createNode,\n createNodeId: ctx.createNodeId,\n })\n )\n value = `Buffer`\n }\n\n node[key] = value\n}\n\nfunction createMySqlNodes({ name, __sql, idField, keys }, results, ctx) {\n const MySqlNode = createNodeFactory(name)\n ctx.linkChildren = []\n\n return __sql.forEach(row => {\n if (!keys) keys = Object.keys(row)\n\n const node = { id: row[idField] }\n\n for (const key of keys) {\n attach(node, key, row[key], ctx)\n }\n\n node = ctx.createNode(node)\n\n for (const link of ctx.linkChildren) {\n link(node.id)\n }\n })\n}\n\nmodule.exports = createMySqlNodes\n```\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1480721795203,"modified":1561452151289,"lastPublisher":{"name":"wardpeet","email":"ward@coding-tech.com","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-25T08:42:35.252Z","_searchInternal":{"concatenatedName":"gatsbysourcefilesystem","alternativeNames":["gatsbysourcefilesystem","gatsby source filesystem","gatsby-source-filesystem"],"downloadsMagnitude":6,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-source-filesystem/CHANGELOG.md","jsDelivrHits":0,"objectID":"gatsby-source-filesystem","_highlightResult":{"name":{"value":"gatsby-source-filesystem","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin which parses files within a directory for further parsing by other plugins","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbysourcefilesystem","matchLevel":"none","matchedWords":[]},{"value":"gatsby source filesystem","matchLevel":"none","matchedWords":[]},{"value":"gatsby-source-filesystem","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-transformer-remark","downloadsLast30Days":287776,"downloadsRatio":0.0006305498402894114,"humanDownloadsLast30Days":"287.8k","popular":false,"version":"2.5.0","versions":{"1.0.0-alpha12-alpha.51e1923f":"2017-04-18T18:41:29.201Z","1.0.0-alpha12-alpha.571b4bbd":"2017-04-19T00:37:18.495Z","1.0.0-alpha12-alpha.c0bba969":"2017-04-19T20:36:14.269Z","1.0.0-alpha12-alpha.89d880ee":"2017-04-21T00:30:45.184Z","1.0.0-alpha12-alpha.b66dd8d3":"2017-04-21T00:37:32.364Z","1.0.0-alpha12-alpha.577b9e82":"2017-04-22T00:34:42.442Z","1.0.0-alpha12-alpha.8370739a":"2017-04-23T03:15:49.059Z","1.0.0-alpha13":"2017-04-24T22:09:22.760Z","1.0.0-alpha13-alpha.c6e3cbb2":"2017-04-26T19:36:56.598Z","1.0.0-alpha13-alpha.91dbde54":"2017-04-26T21:08:52.826Z","1.0.0-alpha13-alpha.ec011f40":"2017-04-27T00:58:08.523Z","1.0.0-alpha13-alpha.537d11c6":"2017-04-27T04:11:29.220Z","1.0.0-alpha13-alpha.0189ea42":"2017-04-28T22:29:33.797Z","1.0.0-alpha13-alpha.215cabc2":"2017-05-01T23:02:12.524Z","1.0.0-alpha13-alpha.526805ab":"2017-05-03T22:17:35.735Z","1.0.0-alpha13-alpha.0f0222b8":"2017-05-04T16:09:28.558Z","1.0.0-alpha13-alpha.7d186994":"2017-05-04T16:29:48.440Z","1.0.0-alpha13-alpha.a3ef328b":"2017-05-04T19:52:05.328Z","1.0.0-alpha13-alpha.84bd4b24":"2017-05-04T20:33:36.676Z","1.0.0-alpha13-alpha.7efda7f0":"2017-05-04T23:03:20.377Z","1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:28.704Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:52.664Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:33:09.115Z","1.0.0-alpha14":"2017-05-06T01:18:30.576Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:17.193Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:17.736Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:20.487Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:44:22.910Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:55:23.261Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:12:18.911Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:42.498Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:34:29.358Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:49.060Z","1.0.0-alpha15":"2017-05-16T09:13:00.522Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:49.817Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:30:23.260Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:54.890Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:22:17.069Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:54.657Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:46.825Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:30:09.029Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:06:12.995Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:27:25.201Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:43:05.420Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:40:15.033Z","1.0.0-alpha16":"2017-05-26T09:30:34.181Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:56.428Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:47:57.275Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:31.403Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:32.162Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:38:04.091Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:17:00.774Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:44.044Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:55.862Z","1.0.0-alpha17":"2017-06-02T18:45:04.660Z","1.0.0-alpha19":"2017-06-03T02:02:29.320Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:37:03.019Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:38:10.593Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:39:21.904Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:34:19.318Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:39.105Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:52:20.672Z","1.0.0-alpha20":"2017-06-06T02:01:14.899Z","1.0.0-alpha.22":"2017-06-08T04:28:13.338Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:23.503Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:39.933Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:15:03.920Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:39.016Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:26:17.703Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:08:40.112Z","1.0.0-alpha.23":"2017-06-14T00:30:15.943Z","1.0.0-beta.1":"2017-06-15T20:26:09.561Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:38.094Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:42.805Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:54.119Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:36:15.170Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:30.633Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:55.242Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:02:01.167Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:18.737Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:07:04.066Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:52.319Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:55.961Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:54.503Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:33.915Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:39.077Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:23.219Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:22:10.883Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:37.826Z","1.0.0-beta.6":"2017-07-02T06:43:23.459Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:41:14.942Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:53.813Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:53.130Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:27.617Z","1.0.0":"2017-07-06T19:43:52.453Z","1.0.1":"2017-07-06T19:49:13.116Z","1.0.9":"2017-07-10T00:16:20.916Z","1.1.0":"2017-07-12T03:18:12.567Z","1.6.3":"2017-08-01T17:56:26.595Z","1.7.0":"2017-08-08T22:29:26.181Z","1.7.1":"2017-08-19T01:52:57.352Z","1.7.2":"2017-08-20T04:51:27.069Z","1.8.0-alpha.22c8a6f1":"2017-08-24T16:12:46.371Z","1.7.3":"2017-08-25T18:22:10.843Z","1.7.4":"2017-08-28T20:42:09.177Z","1.7.5":"2017-08-30T22:59:02.524Z","1.7.6":"2017-08-31T23:42:33.181Z","1.7.7":"2017-09-04T19:13:27.305Z","1.8.0-alpha.76b32701":"2017-09-15T18:02:37.624Z","1.8.0-alpha.93f2e2a2":"2017-09-16T11:51:44.524Z","1.8.0-alpha.5db7a275":"2017-09-16T13:47:23.899Z","1.8.0-alpha.1460dad9":"2017-09-18T12:30:11.726Z","1.7.8":"2017-09-18T23:57:53.950Z","1.7.9":"2017-09-20T13:45:24.722Z","1.7.10":"2017-09-20T23:32:57.225Z","1.7.11":"2017-09-22T21:26:45.917Z","1.7.12":"2017-09-25T20:30:28.535Z","1.7.14":"2017-09-28T03:43:47.789Z","1.7.15":"2017-09-28T03:59:30.361Z","1.7.16":"2017-10-15T20:47:59.543Z","1.7.17":"2017-10-17T01:53:11.531Z","1.7.18":"2017-10-27T20:24:29.271Z","1.7.19":"2017-11-01T00:00:18.319Z","1.7.20":"2017-11-07T08:15:59.834Z","1.7.21":"2017-11-14T01:54:32.107Z","1.7.22":"2017-11-29T00:10:31.941Z","1.7.23":"2017-11-30T03:17:21.193Z","1.7.24":"2017-12-10T00:45:56.513Z","1.7.25":"2017-12-13T23:40:39.020Z","1.7.26":"2017-12-22T17:55:31.093Z","1.7.27":"2018-01-10T14:49:54.216Z","1.7.28":"2018-01-11T00:05:10.212Z","1.8.0-alpha.f20ac0ed":"2018-01-11T18:39:53.718Z","1.8.0-alpha.a0a09c94":"2018-01-11T18:48:54.282Z","1.8.0-alpha.b50f2063":"2018-01-11T18:55:46.899Z","1.8.0-alpha.03b9df85":"2018-01-12T14:37:06.390Z","1.8.0-alpha.e9df8e57":"2018-01-12T14:48:17.634Z","1.8.0-alpha.8c822451":"2018-01-12T15:01:34.943Z","1.8.0-alpha.e5586916":"2018-01-12T15:23:14.035Z","1.8.0-alpha.9da1bca1":"2018-01-12T18:08:37.928Z","1.8.0-alpha.aeb05561":"2018-01-18T01:53:48.900Z","1.8.0-alpha.7b47e00d":"2018-01-18T02:10:40.192Z","1.8.0-alpha.f5c1df61":"2018-01-18T17:31:23.727Z","1.8.0-alpha.926cb6da":"2018-01-21T01:43:10.288Z","1.8.0-alpha.3f307d61":"2018-01-21T02:23:50.239Z","1.7.29":"2018-01-22T23:14:53.956Z","1.8.0-alpha.d1544e1b":"2018-01-25T00:15:13.298Z","1.7.30":"2018-01-27T17:03:38.940Z","1.7.31":"2018-02-08T00:04:53.053Z","2.1.0-alpha.53bbd4cd":"2018-02-10T20:35:37.350Z","2.1.0-alpha.2b695217":"2018-02-10T22:37:30.553Z","2.1.0-alpha.32ef58da":"2018-02-11T03:45:31.673Z","2.1.0-alpha.5182142b":"2018-02-11T04:13:35.356Z","1.7.32":"2018-02-13T01:12:47.557Z","2.1.0-alpha.6ab84875":"2018-02-15T02:07:37.923Z","2.1.0-alpha.9d4de2a6":"2018-02-15T20:33:22.236Z","2.1.0-alpha.dd504153":"2018-02-15T21:30:47.200Z","2.1.0-alpha.b68b7f5c":"2018-02-15T22:01:47.134Z","2.1.0-alpha.bb258cb5":"2018-02-16T00:30:26.566Z","2.1.0-alpha.e28a1c8e":"2018-02-16T01:11:53.359Z","2.1.0-alpha.067e672c":"2018-02-17T02:46:06.546Z","2.1.0-alpha.d0b8dd9e":"2018-02-17T19:06:22.843Z","2.0.1-0":"2018-02-17T19:31:51.339Z","1.7.33":"2018-02-19T19:39:37.679Z","2.1.0-alpha.e66c6c9c":"2018-02-27T01:26:16.464Z","1.7.34":"2018-02-28T20:41:03.083Z","2.1.0-alpha.2cbec6d6":"2018-03-03T06:47:32.590Z","2.0.1-1":"2018-03-03T07:25:15.529Z","1.7.35":"2018-03-06T18:54:36.800Z","1.7.36":"2018-03-06T23:27:36.083Z","2.1.0-alpha.f98688ee":"2018-03-07T02:26:34.372Z","2.1.0-alpha.9fe50b00":"2018-03-08T03:05:08.428Z","1.7.37":"2018-03-15T22:14:45.830Z","2.1.0-alpha.34eda94b":"2018-03-17T21:23:04.728Z","2.1.0-alpha.12622d64":"2018-03-18T00:01:19.162Z","2.1.0-alpha.84bd71b4":"2018-03-18T00:41:19.484Z","2.1.0-alpha.6ad61a13":"2018-03-21T17:50:49.755Z","2.1.0-alpha.5f47082e":"2018-03-23T22:48:52.239Z","2.0.1-2":"2018-03-23T23:20:09.849Z","1.7.38":"2018-03-26T21:55:19.499Z","1.7.39":"2018-03-27T22:39:48.609Z","2.1.0-alpha.95fcd4af":"2018-03-29T02:24:02.480Z","2.1.0-alpha.20252dc3":"2018-03-29T02:45:56.080Z","2.1.0-alpha.4a09f745":"2018-04-05T22:15:37.830Z","2.1.0-alpha.76793cd8":"2018-04-07T22:13:27.273Z","1.7.40":"2018-04-14T17:40:20.413Z","2.1.0-alpha.5c9569c0":"2018-04-19T16:58:33.341Z","2.1.0-alpha.523a4286":"2018-04-19T23:53:47.682Z","2.1.0-alpha.5421f383":"2018-04-20T06:54:26.396Z","2.1.0-alpha.e9c3027b":"2018-04-20T17:58:41.100Z","2.0.1-3":"2018-04-22T01:55:48.925Z","2.0.1-4":"2018-04-24T00:44:25.191Z","2.0.1-5":"2018-04-25T16:26:51.226Z","2.0.1-6":"2018-04-26T18:21:05.672Z","2.0.1-7":"2018-05-02T23:03:47.434Z","1.7.41":"2018-05-10T15:20:55.389Z","2.0.1-10":"2018-05-15T20:18:09.762Z","2.0.1-11":"2018-05-18T15:36:18.393Z","2.0.1-12":"2018-05-31T14:27:49.376Z","2.0.1-13":"2018-05-31T17:23:52.834Z","1.7.42":"2018-06-06T22:19:01.665Z","2.0.1-14":"2018-06-11T09:58:42.792Z","2.0.1-15":"2018-06-11T15:27:17.933Z","2.0.1-16":"2018-06-11T16:57:47.685Z","1.7.43":"2018-06-14T09:04:33.848Z","2.0.1-17":"2018-06-14T12:39:43.666Z","2.2.0-alpha.80a21f04":"2018-06-16T19:38:22.259Z","2.1.1-alpha.2":"2018-06-16T23:34:24.396Z","1.7.44":"2018-06-17T01:53:41.838Z","2.1.1-beta.0":"2018-06-17T06:54:30.826Z","2.1.1-beta.1":"2018-06-17T08:13:25.483Z","2.1.1-beta.2":"2018-06-20T20:45:58.359Z","2.1.1-beta.3":"2018-07-11T22:54:47.657Z","2.1.1-beta.4":"2018-07-21T16:00:34.592Z","2.1.1-beta.5":"2018-07-27T19:00:56.490Z","2.1.1-beta.6":"2018-08-06T10:44:49.560Z","2.1.1-beta.7":"2018-08-17T11:26:36.175Z","2.1.1-beta.8":"2018-08-20T19:53:03.050Z","2.1.1-rc.0":"2018-08-21T00:59:51.151Z","2.1.1-rc.1":"2018-08-29T18:30:21.566Z","2.1.1-rc.5":"2018-09-11T12:13:04.978Z","2.1.1":"2018-09-17T20:43:24.530Z","2.1.2":"2018-09-18T10:08:22.598Z","2.1.3":"2018-09-18T19:14:08.164Z","2.1.4":"2018-09-26T10:39:04.098Z","2.1.5":"2018-10-01T12:56:12.739Z","2.1.6":"2018-10-02T16:47:17.454Z","2.1.7":"2018-10-09T19:57:51.701Z","2.1.8":"2018-10-18T19:17:16.601Z","2.1.9":"2018-10-24T17:05:48.817Z","2.1.10":"2018-10-29T15:25:03.464Z","2.1.11":"2018-10-29T19:42:37.861Z","2.1.12":"2018-11-08T01:37:18.476Z","2.1.13":"2018-11-27T21:57:37.696Z","2.1.14":"2018-11-29T12:15:10.468Z","2.1.15":"2018-11-30T03:57:40.738Z","2.1.16":"2018-12-17T20:05:27.340Z","2.1.17":"2018-12-17T20:24:33.978Z","2.1.18":"2018-12-31T10:03:06.575Z","2.1.19":"2019-01-01T21:19:28.303Z","2.1.20":"2019-01-08T18:29:22.106Z","2.2.0":"2019-01-08T20:29:25.600Z","2.2.1":"2019-01-28T13:12:57.830Z","2.2.2":"2019-01-29T13:26:28.717Z","2.2.3":"2019-02-01T10:24:33.418Z","2.2.4":"2019-02-04T16:08:31.294Z","2.2.5":"2019-02-12T18:01:21.257Z","2.2.6":"2019-02-22T07:26:37.009Z","2.3.0":"2019-02-25T23:55:58.108Z","2.3.1-alpha.0":"2019-03-04T07:14:17.681Z","2.3.1":"2019-03-05T20:25:46.055Z","2.3.2":"2019-03-11T15:25:48.366Z","2.3.3":"2019-03-13T20:24:49.821Z","2.3.4":"2019-03-14T18:47:00.384Z","2.3.5":"2019-03-18T09:25:47.840Z","2.3.6":"2019-03-19T13:15:35.076Z","2.3.7":"2019-03-19T15:28:35.895Z","2.3.8":"2019-03-21T10:19:08.691Z","2.3.9":"2019-04-23T12:30:42.708Z","2.3.10":"2019-04-23T13:36:41.055Z","2.3.11":"2019-04-24T17:08:00.906Z","2.3.12":"2019-04-25T13:49:41.619Z","2.4.0":"2019-06-14T09:12:19.464Z","2.5.0":"2019-06-20T13:50:27.395Z"},"tags":{"latest":"2.5.0"},"description":"Gatsby transformer plugin for Markdown using the Remark library and ecosystem","dependencies":{"@babel/runtime":"^7.0.0","bluebird":"^3.5.0","gray-matter":"^4.0.0","hast-util-raw":"^4.0.0","hast-util-to-html":"^4.0.0","lodash":"^4.17.10","mdast-util-to-hast":"^3.0.0","mdast-util-to-string":"^1.0.5","mdast-util-toc":"^2.0.1","remark":"^9.0.0","remark-parse":"^5.0.0","remark-retext":"^3.1.0","remark-stringify":"^5.0.0","retext-english":"^3.0.0","sanitize-html":"^1.18.2","underscore.string":"^3.3.5","unified":"^6.1.5","unist-util-remove-position":"^1.1.2","unist-util-select":"^1.5.0","unist-util-visit":"^1.3.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-transformer-remark","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-transformer-remark","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-transformer-remark","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-transformer-remark\n\nParses Markdown files using [Remark](http://remark.js.org/).\n\n## Install\n\n`npm install --save gatsby-transformer-remark`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nplugins: [\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n // CommonMark mode (default: true)\n commonmark: true,\n // Footnotes mode (default: true)\n footnotes: true,\n // Pedantic mode (default: true)\n pedantic: true,\n // GitHub Flavored Markdown mode (default: true)\n gfm: true,\n // Plugins configs\n plugins: [],\n },\n },\n],\n```\n\nThe following parts of `options` are passed down to Remark as options:\n\n- `options.commonmark`\n- `options.footnotes`\n- `options.pedantic`\n- `options.gfm`\n\nThe details of the Remark options above could be found in [`remark-parse`'s documentation](https://github.com/remarkjs/remark/tree/master/packages/remark-parse#processoruseparse-options)\n\nA full explanation of how to use markdown in Gatsby can be found here:\n[Creating a Blog with Gatsby](https://www.gatsbyjs.org/blog/2017-07-19-creating-a-blog-with-gatsby/)\n\nThere are many Gatsby Remark plugins which you can install to customize how Markdown is processed. Many of them are demoed at https://using-remark.gatsbyjs.org/. See also the [source code for using-remark](https://github.com/gatsbyjs/gatsby/tree/master/examples/using-remark).\n\n## Parsing algorithm\n\nIt recognizes files with the following extensions as Markdown:\n\n- md\n- markdown\n\nEach Markdown file is parsed into a node of type `MarkdownRemark`.\n\nAll frontmatter fields are converted into GraphQL fields. TODO link to docs on\nauto-inferring types/fields.\n\nThis plugin adds additional fields to the `MarkdownRemark` GraphQL type\nincluding `html`, `excerpt`, `headings`, etc. Other Gatsby plugins can also add\nadditional fields.\n\n## How to query\n\nA sample GraphQL query to get MarkdownRemark nodes:\n\n```graphql\n{\n allMarkdownRemark {\n edges {\n node {\n html\n headings {\n depth\n value\n }\n frontmatter {\n # Assumes you're using title in your frontmatter.\n title\n }\n }\n }\n }\n}\n```\n\n### Getting table of contents\n\nUsing the following GraphQL query you'll be able to get the table of contents\n\n```graphql\n{\n allMarkdownRemark {\n edges {\n node {\n html\n tableOfContents\n }\n }\n }\n}\n```\n\n### Configuring the tableOfContents\n\nBy default the tableOfContents is using the field `slug` to generate URLs. You can however provide another field using the pathToSlugField parameter. **Note** that providing a non existing field will cause the result to be null. To alter the default values for tableOfContents generation, include values for `heading` (string) and/or `maxDepth` (number 1 to 6) in graphQL query. If a value for `heading` is given, the first heading that matches will be ommitted and the toc is generated from the next heading of the same depth onwards. Value for `maxDepth` sets the maximum depth of the toc (i.e. if a maxDepth of 3 is set, only h1 to h3 headings will appear in the toc).\n\n```graphql\n{\n allMarkdownRemark {\n edges {\n node {\n html\n tableOfContents(\n pathToSlugField: \"frontmatter.path\"\n heading: \"only show toc from this heading onwards\"\n maxDepth: 2\n )\n frontmatter {\n # Assumes you're using path in your frontmatter.\n path\n }\n }\n }\n }\n}\n```\n\nTo pass default options to the plugin generating the tableOfContents, configure it in gatsby-config.js as shown below. The options shown below are the defaults used by the plugin.\n\n```javascript\n// In your gatsby-config.js\nplugins: [\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n tableOfContents: {\n heading: null,\n maxDepth: 6,\n },\n },\n },\n]\n```\n\n### Excerpts\n\n#### Length\n\nBy default, excerpts have a maximum length of 140 characters. You can change the default using the `pruneLength` argument. For example, if you need 500 characters, you can specify:\n\n```graphql\n{\n allMarkdownRemark {\n edges {\n node {\n html\n excerpt(pruneLength: 500)\n }\n }\n }\n}\n```\n\n#### Format\n\nBy default, Gatsby will return excerpts as plain text. This might be useful for populating [opengraph](https://en.wikipedia.org/wiki/Facebook_Platform#Open_Graph_protocol) HTML tags for SEO reasons. You can also explicitly specify a `PLAIN` format like so:\n\n```graphql\n{\n allMarkdownRemark {\n edges {\n node {\n excerpt(format: PLAIN)\n }\n }\n }\n}\n```\n\nIt's also possible to ask Gatsby to return excerpts formatted as HTML. You might use this if you have a blog post whose an excerpt contains markdown content--e.g. header, link, etc.--and you want these links to render as HTML.\n\n```graphql\n{\n allMarkdownRemark {\n edges {\n node {\n excerpt(format: HTML)\n }\n }\n }\n}\n```\n\nYou can also get excerpts in Markdown format.\n\n```graphql\n{\n allMarkdownRemark {\n edges {\n node {\n excerpt(format: MARKDOWN)\n }\n }\n }\n}\n```\n\n## gray-matter options\n\n`gatsby-transformer-remark` uses [gray-matter](https://github.com/jonschlinkert/gray-matter) to parse markdown frontmatter, so you can specify any of the options mentioned [here](https://github.com/jonschlinkert/gray-matter#options) in the `gatsby-config.js` file.\n\n### Example: Excerpts\n\nIf you don't want to use `pruneLength` for excerpts but a custom seperator, you can specify an `excerpt_separator`:\n\n```javascript\n{\n \"resolve\": `gatsby-transformer-remark`,\n \"options\": {\n \"excerpt_separator\": `<!-- end -->`\n }\n}\n```\n\nAny file that does not have the given `excerpt_separator` will fall back to the default pruning method.\n\n## Troubleshooting\n\n### Excerpts for non-latin languages\n\nBy default, `excerpt` uses `underscore.string/prune` which doesn't handle non-latin characters ([https://github.com/epeli/underscore.string/issues/418](https://github.com/epeli/underscore.string/issues/418)).\n\nIf that is the case, you can set `truncate` option on `excerpt` field, like:\n\n```graphql\n{\n markdownRemark {\n excerpt(truncate: true)\n }\n}\n```\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","markdown","remark"],"computedKeywords":[],"computedMetadata":{},"created":1492540889201,"modified":1561038634393,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:42.728Z","_searchInternal":{"concatenatedName":"gatsbytransformerremark","alternativeNames":["gatsbytransformerremark","gatsby transformer remark","gatsby-transformer-remark"],"downloadsMagnitude":6,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-transformer-remark/CHANGELOG.md","jsDelivrHits":65,"objectID":"gatsby-transformer-remark","_highlightResult":{"name":{"value":"gatsby-transformer-remark","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby transformer plugin for Markdown using the Remark library and ecosystem","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"markdown","matchLevel":"none","matchedWords":[]},{"value":"remark","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbytransformerremark","matchLevel":"none","matchedWords":[]},{"value":"gatsby transformer remark","matchLevel":"none","matchedWords":[]},{"value":"gatsby-transformer-remark","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-google-analytics","downloadsLast30Days":198319,"downloadsRatio":0.0004345394118215410,"humanDownloadsLast30Days":"198.3k","popular":false,"version":"2.1.0","versions":{"1.0.0-alpha11-alpha.69d037ff":"2017-01-13T20:09:49.511Z","1.0.0-alpha11-alpha.3b0066c5":"2017-01-18T01:10:36.171Z","1.0.0-alpha11-alpha.74cc5530":"2017-01-18T01:28:40.889Z","1.0.0-alpha11-alpha.ef5273bb":"2017-01-19T22:40:01.719Z","1.0.0-alpha11-alpha.7c86b918":"2017-01-20T00:42:47.965Z","1.0.0-alpha11-alpha.268aa2cc":"2017-01-20T19:47:34.436Z","1.0.0-alpha11-alpha.3757e4a8":"2017-01-24T01:48:32.406Z","1.0.0-alpha11-alpha.f19f649f":"2017-01-24T01:50:01.853Z","1.0.0-alpha11-alpha.9a073a03":"2017-01-24T06:06:16.764Z","1.0.0-alpha11-alpha.9e7a535a":"2017-01-24T06:43:00.490Z","1.0.0-alpha11-alpha.ee2cc7e9":"2017-01-25T22:43:01.777Z","1.0.0-alpha11-alpha.fabe2335":"2017-02-01T20:53:40.797Z","1.0.0-alpha11-alpha.6ffa9761":"2017-02-04T02:43:35.155Z","1.0.0-alpha11-alpha.f46304ad":"2017-02-06T19:31:25.705Z","1.0.0-alpha11-alpha.3e341373":"2017-02-06T20:29:45.532Z","1.0.0-alpha11-alpha.c623e1cc":"2017-02-06T23:31:32.235Z","1.0.0-alpha11-alpha.267af45c":"2017-02-07T18:26:13.480Z","1.0.0-alpha11-alpha.2a65312c":"2017-02-07T19:29:46.380Z","1.0.0-alpha11":"2017-02-07T20:38:29.970Z","1.0.0-alpha12-alpha.1dc37e8b":"2017-02-10T18:39:01.078Z","1.0.0-alpha12-alpha.117c94f8":"2017-02-14T00:02:29.294Z","1.0.0-alpha12-alpha.373740a8":"2017-02-14T00:36:20.568Z","1.0.0-alpha12-alpha.bdc68bfd":"2017-02-17T22:20:12.152Z","1.0.0-alpha12-alpha.faff3fa9":"2017-02-17T22:26:10.644Z","1.0.0-alpha12-alpha.a82bd105":"2017-02-18T00:07:21.991Z","1.0.0-alpha12-alpha.d452aed2":"2017-02-20T19:10:04.890Z","1.0.0-alpha12-alpha.40e6a4d1":"2017-02-20T19:29:48.240Z","1.0.0-alpha12-alpha.f4d91ef3":"2017-02-20T20:05:29.534Z","1.0.0-alpha12-alpha.659f61a4":"2017-02-20T23:23:41.050Z","1.0.0-alpha12-alpha.e1a3cfed":"2017-02-20T23:29:20.877Z","1.0.0-alpha12-alpha.70258e9c":"2017-02-22T00:46:30.790Z","1.0.0-alpha12":"2017-02-22T01:12:39.830Z","1.0.0-alpha12-alpha.209952c2":"2017-02-22T18:42:59.928Z","1.0.0-alpha12-alpha.8f812d13":"2017-02-22T19:08:49.636Z","1.0.0-alpha12-alpha.10a12536":"2017-02-22T22:35:29.244Z","1.0.0-alpha12-alpha.d82af48f":"2017-03-06T18:43:01.902Z","1.0.0-alpha12-alpha.9a2a3c59":"2017-03-06T19:06:21.424Z","1.0.0-alpha12-alpha.72e8aced":"2017-03-06T20:02:09.389Z","1.0.0-alpha12-alpha.04c05494":"2017-03-06T20:30:46.678Z","1.0.0-alpha12-alpha.352b3448":"2017-03-06T22:18:19.045Z","1.0.0-alpha12-alpha.f205e4d4":"2017-03-06T22:26:02.821Z","1.0.0-alpha12-alpha.3a216f9f":"2017-03-07T21:32:56.723Z","1.0.0-alpha12-alpha.3f98b323":"2017-03-08T03:20:33.944Z","1.0.0-alpha12-alpha.cfc93fc7":"2017-03-08T03:46:22.798Z","1.0.0-alpha12-alpha.e22dfd31":"2017-03-13T19:58:04.113Z","1.0.0-alpha12-alpha.3e72cc6f":"2017-03-13T20:13:39.453Z","1.0.0-alpha12-alpha.c8cb2100":"2017-03-13T22:29:20.743Z","1.0.0-alpha12-alpha.4ba57c84":"2017-03-14T19:05:08.785Z","1.0.0-alpha12-alpha.a7e9d9c0":"2017-03-14T19:18:20.723Z","1.0.0-alpha12-alpha.75167f51":"2017-03-15T01:04:21.147Z","1.0.0-alpha12-alpha.4af3700e":"2017-03-15T23:20:23.293Z","1.0.0-alpha12-alpha.dfc40de1":"2017-03-17T22:35:21.409Z","1.0.0-alpha12-alpha.f32320b1":"2017-03-20T21:35:05.919Z","1.0.0-alpha12-alpha.547467c5":"2017-03-20T21:48:12.158Z","1.0.0-alpha12-alpha.3d7a5eb6":"2017-03-21T01:49:50.695Z","1.0.0-alpha12-alpha.b3dbfd2b":"2017-03-21T18:21:54.530Z","1.0.0-alpha12-alpha.4575c38e":"2017-03-21T20:12:44.282Z","1.0.0-alpha12-alpha.1b1c742b":"2017-03-21T22:05:24.254Z","1.0.0-alpha12-alpha.545e4a03":"2017-03-21T22:09:10.291Z","1.0.0-alpha12-alpha.4f30010e":"2017-03-21T22:12:17.182Z","1.0.0-alpha12-alpha.e1f27e45":"2017-03-23T18:18:26.829Z","1.0.0-alpha12-alpha.d37d5d32":"2017-03-24T23:55:53.304Z","1.0.0-alpha12-alpha.81355cc0":"2017-03-27T16:11:51.649Z","1.0.0-alpha12-alpha.dbf1a599":"2017-03-27T16:28:35.853Z","1.0.0-alpha12-alpha.10141fd4":"2017-03-27T17:58:52.725Z","1.0.0-alpha12-alpha.6e55cfe7":"2017-03-27T18:39:57.016Z","1.0.0-alpha12-alpha.d7d6ef64":"2017-03-27T22:38:21.205Z","1.0.0-alpha12-alpha.dffeaa1f":"2017-03-28T13:15:09.478Z","1.0.0-alpha12-alpha.c155b956":"2017-03-28T13:39:19.118Z","1.0.0-alpha12-alpha.80e93d69":"2017-03-28T14:40:09.093Z","1.0.0-alpha12-alpha.4e93d2cf":"2017-03-28T19:06:27.991Z","1.0.0-alpha12-alpha.351006cf":"2017-03-28T22:13:15.166Z","1.0.0-alpha12-alpha.0b4b912a":"2017-04-10T22:34:09.611Z","1.0.0-alpha12-alpha.1fdb9004":"2017-04-11T00:38:25.382Z","1.0.0-alpha12-alpha.51e1923f":"2017-04-18T18:41:23.284Z","1.0.0-alpha12-alpha.571b4bbd":"2017-04-19T00:37:10.803Z","1.0.0-alpha12-alpha.c0bba969":"2017-04-19T20:36:07.291Z","1.0.0-alpha12-alpha.89d880ee":"2017-04-21T00:30:40.075Z","1.0.0-alpha12-alpha.b66dd8d3":"2017-04-21T00:37:27.520Z","1.0.0-alpha12-alpha.577b9e82":"2017-04-22T00:34:35.810Z","1.0.0-alpha12-alpha.8370739a":"2017-04-23T03:15:41.025Z","1.0.0-alpha13":"2017-04-24T22:09:18.155Z","1.0.0-alpha13-alpha.c6e3cbb2":"2017-04-26T19:36:54.252Z","1.0.0-alpha13-alpha.91dbde54":"2017-04-26T21:08:46.824Z","1.0.0-alpha13-alpha.ec011f40":"2017-04-27T00:57:58.652Z","1.0.0-alpha13-alpha.537d11c6":"2017-04-27T04:11:25.554Z","1.0.0-alpha13-alpha.0189ea42":"2017-04-28T22:29:23.831Z","1.0.0-alpha13-alpha.215cabc2":"2017-05-01T23:02:04.776Z","1.0.0-alpha13-alpha.526805ab":"2017-05-03T22:17:29.271Z","1.0.0-alpha13-alpha.0f0222b8":"2017-05-04T16:09:12.242Z","1.0.0-alpha13-alpha.7d186994":"2017-05-04T16:29:38.278Z","1.0.0-alpha13-alpha.a3ef328b":"2017-05-04T19:51:51.051Z","1.0.0-alpha13-alpha.84bd4b24":"2017-05-04T20:33:24.658Z","1.0.0-alpha13-alpha.7efda7f0":"2017-05-04T23:03:09.715Z","1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:01.506Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:36.412Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:32:12.240Z","1.0.0-alpha14":"2017-05-06T01:18:11.908Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:00.024Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:00.244Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:07.545Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:43:59.804Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:55:01.319Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:11:54.943Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:31.512Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:33:55.733Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:21.040Z","1.0.0-alpha15":"2017-05-16T09:12:41.026Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:24.745Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:29:46.234Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:33.705Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:22:00.187Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:32.091Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:24.362Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:29:47.369Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:05:50.082Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:27:02.847Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:42:46.433Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:40:01.143Z","1.0.0-alpha16":"2017-05-26T09:30:25.363Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:40.768Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:47:40.968Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:19.834Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:18.739Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:37:47.643Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:16:43.167Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:28.011Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:41.439Z","1.0.0-alpha17":"2017-06-02T18:44:53.137Z","1.0.0-alpha19":"2017-06-03T02:02:25.740Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:40.013Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:37:54.409Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:38:56.599Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:33:51.128Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:11.377Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:51:54.826Z","1.0.0-alpha.22":"2017-06-08T04:27:50.079Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:04.844Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:20.853Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:37.624Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:12.168Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:25:42.379Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:07:15.467Z","1.0.0-beta.1":"2017-06-15T20:25:46.224Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:06.812Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:19.815Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:27.833Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:35:45.319Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:08.889Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:26.608Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:40.432Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:18:54.711Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:48.636Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:35.609Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:40.270Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:35.327Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:14.500Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:22.451Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:10:58.212Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:21:52.970Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:13.758Z","1.0.0-beta.6":"2017-07-02T06:42:55.951Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:40:42.586Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:28.655Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:27.617Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:01.412Z","1.0.0":"2017-07-06T19:43:22.530Z","1.0.1":"2017-07-06T19:48:49.040Z","1.0.2":"2017-08-11T14:03:05.117Z","1.0.3":"2017-08-11T20:02:51.130Z","1.0.4":"2017-08-19T01:52:11.218Z","1.1.0-alpha.22c8a6f1":"2017-08-24T16:12:16.710Z","2.0.0":"2017-08-25T18:06:53.065Z","1.0.5":"2017-08-25T18:21:45.469Z","1.0.6":"2017-08-30T22:58:30.603Z","1.0.7":"2017-08-31T23:41:18.475Z","1.1.0-alpha.76b32701":"2017-09-15T18:00:44.391Z","1.1.0-alpha.2e1e7782":"2017-09-15T18:12:24.285Z","1.1.0-alpha.93f2e2a2":"2017-09-16T11:49:51.934Z","1.1.0-alpha.5db7a275":"2017-09-16T13:45:47.236Z","1.1.0-alpha.1460dad9":"2017-09-18T12:28:28.341Z","1.0.8":"2017-10-02T22:15:49.741Z","1.0.9":"2017-10-16T18:35:31.508Z","1.0.10":"2017-10-17T01:53:06.476Z","1.0.11":"2017-10-31T06:58:27.984Z","1.0.12":"2017-11-07T08:15:45.520Z","1.0.13":"2017-11-29T00:09:23.717Z","1.0.14":"2017-12-10T00:45:18.423Z","1.0.15":"2018-01-03T10:53:52.788Z","1.1.0-alpha.f20ac0ed":"2018-01-11T18:38:48.406Z","1.1.0-alpha.a0a09c94":"2018-01-11T18:47:47.361Z","1.1.0-alpha.b50f2063":"2018-01-11T18:54:51.771Z","1.1.0-alpha.03b9df85":"2018-01-12T14:35:56.736Z","1.1.0-alpha.e9df8e57":"2018-01-12T14:47:13.497Z","1.1.0-alpha.8c822451":"2018-01-12T15:00:42.588Z","1.1.0-alpha.e5586916":"2018-01-12T15:22:14.506Z","1.1.0-alpha.9da1bca1":"2018-01-12T18:07:16.419Z","1.1.0-alpha.aeb05561":"2018-01-18T01:52:48.022Z","1.1.0-alpha.7b47e00d":"2018-01-18T02:09:52.346Z","1.1.0-alpha.f5c1df61":"2018-01-18T17:30:09.198Z","1.1.0-alpha.926cb6da":"2018-01-21T01:42:05.411Z","1.1.0-alpha.3f307d61":"2018-01-21T02:22:40.108Z","1.0.16":"2018-01-23T19:17:25.388Z","1.1.0-alpha.d1544e1b":"2018-01-25T00:14:05.700Z","1.0.17":"2018-01-30T02:14:30.616Z","1.1.0-alpha.53bbd4cd":"2018-02-10T20:34:19.332Z","1.1.0-alpha.2b695217":"2018-02-10T22:36:30.439Z","1.1.0-alpha.32ef58da":"2018-02-11T03:44:28.981Z","1.1.0-alpha.5182142b":"2018-02-11T04:12:10.461Z","1.0.18":"2018-02-12T22:06:20.096Z","1.0.19":"2018-02-13T01:11:49.048Z","1.1.0-alpha.6ab84875":"2018-02-15T02:06:28.925Z","1.1.0-alpha.9d4de2a6":"2018-02-15T20:32:10.319Z","1.1.0-alpha.1a8f691e":"2018-02-15T21:00:55.123Z","1.1.0-alpha.9e381f74":"2018-02-15T21:12:21.057Z","1.1.0-alpha.dd504153":"2018-02-15T21:29:23.646Z","1.1.0-alpha.b68b7f5c":"2018-02-15T22:00:28.192Z","1.1.0-alpha.bb258cb5":"2018-02-16T00:29:26.271Z","1.1.0-alpha.e28a1c8e":"2018-02-16T01:10:53.220Z","1.1.0-alpha.067e672c":"2018-02-17T02:44:57.193Z","1.1.0-alpha.d0b8dd9e":"2018-02-17T19:04:54.274Z","1.0.20-0":"2018-02-17T19:30:50.118Z","1.1.0-alpha.e66c6c9c":"2018-02-27T01:24:37.719Z","1.0.20":"2018-02-28T20:39:46.472Z","1.1.0-alpha.2cbec6d6":"2018-03-03T06:46:21.695Z","1.0.20-1":"2018-03-03T07:23:21.185Z","1.1.0-alpha.f98688ee":"2018-03-07T02:25:30.705Z","1.0.21":"2018-03-07T23:55:05.145Z","1.1.0-alpha.9fe50b00":"2018-03-08T03:04:09.811Z","1.0.22":"2018-03-08T05:23:47.749Z","1.0.23":"2018-03-15T22:14:41.648Z","1.0.24":"2018-03-16T00:27:44.742Z","1.1.0-alpha.34eda94b":"2018-03-17T21:22:04.747Z","1.1.0-alpha.12622d64":"2018-03-17T23:59:51.340Z","1.1.0-alpha.84bd71b4":"2018-03-18T00:39:37.370Z","1.1.0-alpha.6ad61a13":"2018-03-21T17:49:13.644Z","1.1.0-alpha.5f47082e":"2018-03-23T22:47:22.174Z","1.0.20-2":"2018-03-23T23:18:46.197Z","1.0.25":"2018-03-26T21:55:12.546Z","1.1.0-alpha.95fcd4af":"2018-03-29T02:22:08.461Z","1.1.0-alpha.20252dc3":"2018-03-29T02:43:50.734Z","1.0.26":"2018-04-01T04:23:36.311Z","1.0.27":"2018-04-01T05:18:59.020Z","1.0.28":"2018-04-03T18:31:44.287Z","1.1.0-alpha.4a09f745":"2018-04-05T22:14:41.098Z","1.1.0-alpha.76793cd8":"2018-04-07T22:12:02.317Z","1.0.29":"2018-04-14T22:19:44.038Z","1.0.30":"2018-04-16T18:00:14.024Z","1.0.31":"2018-04-19T16:33:03.293Z","1.1.0-alpha.5c9569c0":"2018-04-19T16:56:38.641Z","1.1.0-alpha.523a4286":"2018-04-19T23:51:32.355Z","1.1.0-alpha.5421f383":"2018-04-20T06:52:30.983Z","1.1.0-alpha.e9c3027b":"2018-04-20T17:55:57.672Z","1.0.20-3":"2018-04-22T01:53:34.658Z","1.0.20-4":"2018-04-25T16:24:59.317Z","1.0.20-5":"2018-04-26T18:19:08.848Z","1.0.20-6":"2018-05-11T21:43:18.031Z","1.0.20-8":"2018-05-15T19:53:52.251Z","1.0.20-9":"2018-05-31T14:03:31.070Z","1.0.20-10":"2018-05-31T17:04:51.218Z","1.0.20-11":"2018-06-11T15:22:02.900Z","1.0.20-12":"2018-06-11T16:54:19.114Z","2.0.0-alpha.1":"2018-06-16T19:08:32.964Z","2.0.0-alpha.8ac171a1":"2018-06-16T19:25:09.339Z","2.0.0-alpha.e328d33f":"2018-06-16T19:32:38.572Z","2.0.0-alpha.80a21f04":"2018-06-16T19:36:45.698Z","2.0.0-alpha.2":"2018-06-16T23:32:33.846Z","2.0.0-beta.0":"2018-06-17T06:53:47.586Z","2.0.0-beta.1":"2018-06-17T08:12:47.525Z","2.0.0-beta.2":"2018-06-20T20:45:20.171Z","2.0.0-beta.3":"2018-07-21T16:00:04.414Z","2.0.0-beta.4":"2018-08-06T10:44:49.544Z","2.0.0-beta.5":"2018-08-08T10:10:34.578Z","2.0.0-rc.0":"2018-08-21T00:58:17.589Z","2.0.0-rc.1":"2018-08-29T18:28:38.517Z","2.0.0-rc.2":"2018-09-07T22:43:31.925Z","2.0.5":"2018-09-17T20:41:33.520Z","2.0.6":"2018-09-18T19:14:08.236Z","2.0.7":"2018-10-29T15:23:44.400Z","2.0.8":"2018-11-29T12:13:24.556Z","2.0.9":"2019-01-08T18:29:15.895Z","2.0.10":"2019-01-23T15:14:10.812Z","2.0.11":"2019-01-28T13:12:48.973Z","2.0.12":"2019-01-28T16:58:27.915Z","2.0.13":"2019-02-01T12:24:59.478Z","2.0.14":"2019-02-15T17:46:10.775Z","2.0.15":"2019-02-28T11:32:15.239Z","2.0.16-alpha.0":"2019-03-04T07:13:42.555Z","2.0.16":"2019-03-04T22:22:51.391Z","2.0.17":"2019-03-11T15:24:11.619Z","2.0.18":"2019-03-26T16:33:49.993Z","2.0.19":"2019-04-30T07:05:50.246Z","2.0.20":"2019-05-14T07:28:01.647Z","2.0.21":"2019-06-10T11:08:59.971Z","2.1.0":"2019-06-20T13:48:46.409Z"},"tags":{"latest":"2.1.0"},"description":"Gatsby plugin to add google analytics onto a site","dependencies":{"@babel/runtime":"^7.0.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-google-analytics","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-google-analytics","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-google-analytics","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-google-analytics\n\nEasily add Google Analytics to your Gatsby site.\n\n## Install\n\n`npm install --save gatsby-plugin-google-analytics`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-google-analytics`,\n options: {\n trackingId: \"YOUR_GOOGLE_ANALYTICS_TRACKING_ID\",\n // Defines where to place the tracking script - `true` in the head and `false` in the body\n head: false,\n // Setting this parameter is optional\n anonymize: true,\n // Setting this parameter is also optional\n respectDNT: true,\n // Avoids sending pageview hits from custom paths\n exclude: [\"/preview/**\", \"/do-not-track/me/too/\"],\n // Enables Google Optimize using your container Id\n optimizeId: \"YOUR_GOOGLE_OPTIMIZE_TRACKING_ID\",\n // Enables Google Optimize Experiment ID\n experimentId: \"YOUR_GOOGLE_EXPERIMENT_ID\",\n // Set Variation ID. 0 for original 1,2,3....\n variationId: \"YOUR_GOOGLE_OPTIMIZE_VARIATION_ID\",\n // Any additional create only fields (optional)\n sampleRate: 5,\n siteSpeedSampleRate: 10,\n cookieDomain: \"example.com\",\n },\n },\n ],\n}\n```\n\nSee below for the complete list of [Create Only Fields](#create-only-fields).\n\n## `<OutboundLink>` component\n\nTo make it easy to track clicks on outbound links in Google Analytics,\nthe plugin provides a component.\n\nTo use it, simply import it and use it like you would the `<a>` element e.g.\n\n```jsx\nimport React\nimport { OutboundLink } from 'gatsby-plugin-google-analytics'\n\nexport default () => {\n <div>\n <OutboundLink\n href=\"https://www.gatsbyjs.org/packages/gatsby-plugin-google-analytics/\"\n >\n Visit the Google Analytics plugin page!\n </OutboundLink>\n </div>\n}\n```\n\n## Options\n\n### `trackingId`\n\nHere you place your Google Analytics tracking id.\n\n### `head`\n\nHere you can define where to place the tracking script. With `head:true` it will placed in the header, with `head:false` it will placed in the body. Defaults to `false`.\n\n### `anonymize`\n\nSome countries (such as Germany) require you to use the\n[\\_anonymizeIP](https://support.google.com/analytics/answer/2763052) function for\nGoogle Analytics. Otherwise you are not allowed to use it. The option adds two\nblocks to the code:\n\n```javascript\nfunction gaOptout(){document.cookie=disableStr+'=true; expires=Thu, 31 Dec 2099 23:59:59 UTC;path=/',window[disableStr]=!0}var gaProperty='UA-XXXXXXXX-X',disableStr='ga-disable-'+gaProperty;document.cookie.indexOf(disableStr+'=true')>-1&&(window[disableStr]=!0);\n\n...\n\nga('set', 'anonymizeIp', 1);\n```\n\nIf your visitors should be able to set an Opt-Out-Cookie (No future tracking)\nyou can set a link e.g. in your imprint as follows:\n\n`<a href=\"javascript:gaOptout();\">Deactivate Google Analytics</a>`\n\n### `respectDNT`\n\nIf you enable this optional option, Google Analytics will not be loaded at all for visitors that have \"Do Not Track\" enabled. While using Google Analytics does not necessarily constitute Tracking, you might still want to do this to cater to more privacy oriented users.\n\n### `exclude`\n\nIf you need to exclude any path from the tracking system, you can add it (one or more) to this optional array as glob expressions.\n\n### `optimizeId`\n\nIf you need to use Google Optimize for A/B testing, you can add this optional Optimize container id to allow Google Optimize to load the correct test parameters for your site.\n\n### `experimentId`\n\nIf you need to set up SERVER_SIDE Google Optimize experiment, you can add the experiment ID. The experiment ID is shown on the right-hand panel on the experiment details page. [Server-side Experiments](https://developers.google.com/optimize/devguides/experiments)\n\n### `variationId`\n\nBesides the experiment ID you also need the variation ID for SERVER_SIDE experiments in Google Optimize. Set 0 for original version.\n\n## Create Only Fields\n\nThis plugin supports all optional Create Only Fields documented in [Google Analytics](https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#create):\n\n- `name`: string, tracker name\n- `clientId`: string\n- `sampleRate`: number\n- `siteSpeedSampleRate`: number\n- `alwaysSendReferrer`: boolean\n- `allowAnchor`: boolean\n- `cookieName`: string\n- `cookieDomain`: string, defaults to `'auto'` if not given\n- `cookieExpires`: number\n- `storeGac`: boolean\n- `legacyCookieDomain`: string\n- `legacyHistoryImport`: boolean\n- `allowLinker`: boolean\n\nThese fields can be specified in the plugin's `options` as shown in the [How to use](#how-to-use) section.\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","google analytics"],"computedKeywords":[],"computedMetadata":{},"created":1484338189511,"modified":1561038530630,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:14:55.802Z","_searchInternal":{"concatenatedName":"gatsbyplugingoogleanalytics","alternativeNames":["gatsbyplugingoogleanalytics","gatsby plugin google analytics","gatsby-plugin-google-analytics"],"downloadsMagnitude":6,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-google-analytics/CHANGELOG.md","jsDelivrHits":190,"objectID":"gatsby-plugin-google-analytics","_highlightResult":{"name":{"value":"gatsby-plugin-google-analytics","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin to add google analytics onto a site","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"google analytics","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyplugingoogleanalytics","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin google analytics","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-google-analytics","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-sitemap","downloadsLast30Days":197769,"downloadsRatio":0.0004333342994697147,"humanDownloadsLast30Days":"197.8k","popular":false,"version":"2.2.0","versions":{"1.0.0-alpha.22":"2017-06-08T04:27:55.210Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:10.866Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:26.922Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:46.507Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:20.592Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:25:55.445Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:07:25.655Z","1.0.0-alpha.23":"2017-06-14T00:30:13.863Z","1.0.0-beta.1":"2017-06-15T20:25:53.894Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:16.888Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:28.114Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:36.066Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:35:56.290Z","1.0.0-beta.3":"2017-06-21T18:04:51.686Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:16.220Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:36.921Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:47.990Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:03.867Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:53.907Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:41.145Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:45.851Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:42.064Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:20.399Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:28.456Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:05.254Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:21:58.479Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:21.198Z","1.0.0-beta.6":"2017-07-02T06:43:04.468Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:40:53.981Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:36.653Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:35.182Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:09.397Z","1.0.0":"2017-07-06T19:43:29.915Z","1.0.1":"2017-07-06T19:48:56.611Z","1.2.0":"2017-07-13T22:53:37.599Z","1.2.1":"2017-08-11T20:03:01.420Z","1.2.2":"2017-08-19T01:52:26.470Z","1.3.0-alpha.22c8a6f1":"2017-08-24T16:12:25.996Z","2.0.0":"2017-08-25T18:07:00.335Z","1.2.3":"2017-08-25T18:21:52.246Z","1.2.4":"2017-08-30T22:58:39.674Z","1.2.5":"2017-08-31T23:41:35.186Z","1.3.0-alpha.76b32701":"2017-09-15T18:01:18.607Z","1.3.0-alpha.2e1e7782":"2017-09-15T18:12:49.372Z","1.3.0-alpha.93f2e2a2":"2017-09-16T11:50:19.094Z","1.3.0-alpha.5db7a275":"2017-09-16T13:46:12.325Z","1.3.0-alpha.1460dad9":"2017-09-18T12:29:01.102Z","1.2.6":"2017-11-29T00:09:42.425Z","1.2.7":"2017-12-10T00:45:30.381Z","1.2.8":"2017-12-16T01:59:02.520Z","1.2.9":"2017-12-16T18:34:41.710Z","1.3.0-alpha.f20ac0ed":"2018-01-11T18:39:11.131Z","1.3.0-alpha.a0a09c94":"2018-01-11T18:48:04.693Z","1.3.0-alpha.b50f2063":"2018-01-11T18:55:09.962Z","1.3.0-alpha.03b9df85":"2018-01-12T14:36:16.127Z","1.3.0-alpha.e9df8e57":"2018-01-12T14:47:31.963Z","1.3.0-alpha.8c822451":"2018-01-12T15:00:58.729Z","1.3.0-alpha.e5586916":"2018-01-12T15:22:33.258Z","1.3.0-alpha.9da1bca1":"2018-01-12T18:07:36.516Z","1.2.10":"2018-01-15T17:30:20.320Z","1.3.0-alpha.aeb05561":"2018-01-18T01:53:07.120Z","1.3.0-alpha.7b47e00d":"2018-01-18T02:10:07.639Z","1.3.0-alpha.f5c1df61":"2018-01-18T17:30:30.366Z","1.3.0-alpha.926cb6da":"2018-01-21T01:42:22.077Z","1.3.0-alpha.3f307d61":"2018-01-21T02:23:01.655Z","1.2.11":"2018-01-23T19:19:04.219Z","1.3.0-alpha.d1544e1b":"2018-01-25T00:14:28.242Z","1.2.12":"2018-02-06T04:00:35.747Z","1.3.0-alpha.53bbd4cd":"2018-02-10T20:34:50.378Z","1.3.0-alpha.2b695217":"2018-02-10T22:36:52.391Z","1.3.0-alpha.32ef58da":"2018-02-11T03:44:52.223Z","1.3.0-alpha.5182142b":"2018-02-11T04:12:42.752Z","1.2.13":"2018-02-13T01:12:06.320Z","1.3.0-alpha.6ab84875":"2018-02-15T02:06:53.757Z","1.3.0-alpha.9d4de2a6":"2018-02-15T20:32:36.293Z","1.3.0-alpha.9e381f74":"2018-02-15T21:12:41.599Z","1.3.0-alpha.dd504153":"2018-02-15T21:29:53.132Z","1.3.0-alpha.b68b7f5c":"2018-02-15T22:00:56.168Z","1.3.0-alpha.bb258cb5":"2018-02-16T00:29:49.167Z","1.3.0-alpha.e28a1c8e":"2018-02-16T01:11:13.777Z","1.3.0-alpha.067e672c":"2018-02-17T02:45:22.274Z","1.3.0-alpha.d0b8dd9e":"2018-02-17T19:05:19.889Z","1.2.14-0":"2018-02-17T19:31:14.038Z","1.3.0-alpha.e66c6c9c":"2018-02-27T01:25:03.549Z","1.2.14":"2018-02-28T20:40:09.900Z","1.3.0-alpha.2cbec6d6":"2018-03-03T06:46:48.245Z","1.2.14-1":"2018-03-03T07:24:09.258Z","1.3.0-alpha.f98688ee":"2018-03-07T02:25:55.409Z","1.2.15":"2018-03-07T18:06:28.010Z","1.3.0-alpha.9fe50b00":"2018-03-08T03:04:31.293Z","1.2.16":"2018-03-08T22:56:26.862Z","1.2.17":"2018-03-15T22:14:41.824Z","1.2.18":"2018-03-16T01:51:01.354Z","1.3.0-alpha.34eda94b":"2018-03-17T21:22:24.991Z","1.3.0-alpha.12622d64":"2018-03-18T00:00:22.821Z","1.3.0-alpha.84bd71b4":"2018-03-18T00:40:12.745Z","1.3.0-alpha.6ad61a13":"2018-03-21T17:49:47.978Z","1.2.19":"2018-03-21T18:08:22.016Z","1.2.20":"2018-03-23T18:48:08.173Z","1.3.0-alpha.5f47082e":"2018-03-23T22:47:53.666Z","1.2.14-2":"2018-03-23T23:19:16.845Z","1.3.0-alpha.95fcd4af":"2018-03-29T02:22:47.250Z","1.3.0-alpha.20252dc3":"2018-03-29T02:44:32.857Z","1.3.0-alpha.4a09f745":"2018-04-05T22:15:02.886Z","1.3.0-alpha.76793cd8":"2018-04-07T22:12:34.557Z","1.2.21":"2018-04-14T17:40:19.678Z","1.2.22":"2018-04-19T16:33:19.272Z","1.3.0-alpha.5c9569c0":"2018-04-19T16:57:18.375Z","1.3.0-alpha.523a4286":"2018-04-19T23:52:24.949Z","1.3.0-alpha.5421f383":"2018-04-20T06:53:12.826Z","1.3.0-alpha.e9c3027b":"2018-04-20T17:56:55.452Z","1.2.14-3":"2018-04-22T01:54:18.363Z","1.2.23":"2018-04-24T17:48:35.549Z","1.2.14-4":"2018-04-25T16:25:37.052Z","1.2.14-5":"2018-05-11T21:44:05.287Z","1.2.14-7":"2018-05-15T20:31:14.155Z","1.2.14-8":"2018-05-18T15:35:29.953Z","1.2.24":"2018-05-31T12:38:31.233Z","1.2.14-9":"2018-05-31T14:05:00.445Z","1.2.14-10":"2018-05-31T17:17:25.842Z","1.2.25":"2018-05-31T18:46:15.995Z","1.2.14-11":"2018-06-11T15:24:18.023Z","1.2.14-12":"2018-06-11T16:55:32.269Z","2.0.0-alpha.1":"2018-06-16T19:09:08.872Z","2.0.0-alpha.8ac171a1":"2018-06-16T19:25:41.120Z","2.0.0-alpha.e328d33f":"2018-06-16T19:33:08.878Z","2.0.0-alpha.80a21f04":"2018-06-16T19:37:22.360Z","2.0.0-alpha.2":"2018-06-16T23:33:06.821Z","2.0.0-beta.0":"2018-06-17T06:54:00.305Z","2.0.0-beta.1":"2018-06-17T08:12:58.266Z","2.0.0-beta.2":"2018-06-20T20:45:35.441Z","2.0.0-beta.3":"2018-07-21T16:00:16.378Z","2.0.0-beta.4":"2018-08-14T13:55:29.381Z","2.0.0-rc.0":"2018-08-21T00:58:49.589Z","2.0.0-rc.1":"2018-08-29T18:29:08.774Z","2.0.0-rc.2":"2018-09-13T17:49:08.689Z","2.0.1":"2018-09-17T20:42:19.130Z","2.0.2":"2018-10-29T15:24:11.833Z","2.0.3":"2018-11-29T12:14:05.036Z","2.0.4":"2018-12-27T16:26:10.478Z","2.0.5":"2019-02-01T12:25:19.433Z","2.0.6":"2019-02-22T07:26:36.711Z","2.0.7-alpha.0":"2019-03-04T07:13:57.747Z","2.0.7":"2019-03-11T15:24:45.787Z","2.0.8":"2019-03-12T07:45:22.632Z","2.0.9":"2019-03-12T20:23:12.114Z","2.0.10":"2019-03-16T17:06:43.170Z","2.0.7-asset-prefix.76":"2019-03-28T16:32:36.022Z","2.0.11":"2019-03-28T21:12:32.715Z","2.0.12":"2019-04-08T11:06:17.994Z","2.0.7-asset-prefix.84":"2019-04-30T20:54:01.454Z","2.0.7-asset-prefix.85":"2019-04-30T21:06:36.168Z","2.0.7-asset-prefix.87":"2019-04-30T21:32:27.425Z","2.0.7-asset-prefix.90":"2019-04-30T21:51:13.613Z","2.0.7-asset-prefix.91":"2019-04-30T21:54:39.934Z","2.1.0":"2019-05-02T19:09:57.869Z","2.2.0":"2019-06-20T13:49:14.296Z"},"tags":{"latest":"2.2.0","asset-prefix":"2.0.7-asset-prefix.91"},"description":"Gatsby plugin that automatically creates a sitemap for your site","dependencies":{"@babel/runtime":"^7.0.0","minimatch":"^3.0.4","pify":"^3.0.0","sitemap":"^1.12.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-sitemap","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-sitemap","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-sitemap","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-sitemap\n\nCreate a sitemap for your Gatsby site.\n\n_NOTE: This plugin only generates output when run in `production` mode! To test your sitemap, run: `gatsby build && gatsby serve`_\n\n## Install\n\n`npm install --save gatsby-plugin-sitemap`\n\n## How to Use\n\n```javascript\n// In your gatsby-config.js\nsiteMetadata: {\n siteUrl: `https://www.example.com`,\n},\nplugins: [`gatsby-plugin-sitemap`]\n```\n\nAbove is the minimal configuration required to have it work. By default, the\ngenerated sitemap will include all of your site's pages, except the ones you exclude.\n\n## Options\n\nThe `defaultOptions` [here](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-plugin-sitemap/src/internals.js#L34) can be overridden.\n\nWe _ALWAYS_ exclude the following pages: `/dev-404-page/`,`/404` &`/offline-plugin-app-shell-fallback/`, this cannot be changed.\n\nExample:\n\n```javascript\n// In your gatsby-config.js\nsiteMetadata: {\n siteUrl: `https://www.example.com`,\n},\nplugins: [\n {\n resolve: `gatsby-plugin-sitemap`,\n options: {\n output: `/some-other-sitemap.xml`,\n // Exclude specific pages or groups of pages using glob parameters\n // See: https://github.com/isaacs/minimatch\n // The example below will exclude the single `path/to/page` and all routes beginning with `category`\n exclude: [\"/category/*\", `/path/to/page`],\n query: `\n {\n site {\n siteMetadata {\n siteUrl\n }\n }\n\n allSitePage {\n edges {\n node {\n path\n }\n }\n }\n }`\n }\n }\n]\n```\n\n## Sitemap Index\n\nWe also support generating `sitemap index`.\n\n- [Split up your large sitemaps](https://support.google.com/webmasters/answer/75712?hl=en)\n- [Using Sitemap index files (to group multiple sitemap files)](https://www.sitemaps.org/protocol.html#index)\n\n```javascript\n// In your gatsby-config.js\nsiteMetadata: {\n siteUrl: `https://www.example.com`,\n},\nplugins: [\n {\n resolve: `gatsby-plugin-sitemap`,\n options: {\n sitemapSize: 5000\n }\n }\n]\n```\n\nAbove is the minimal configuration to split large sitemap.\nWhen number of URL in sitemap is more than 5000 plugin will create sitemap (e.g. `sitemap-0.xml`, `sitemap-1.xml`) and index (e.g. `sitemap.xml`) files.\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1496896075210,"modified":1561038557861,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:06.852Z","_searchInternal":{"concatenatedName":"gatsbypluginsitemap","alternativeNames":["gatsbypluginsitemap","gatsby plugin sitemap","gatsby-plugin-sitemap"],"downloadsMagnitude":6,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-sitemap/CHANGELOG.md","jsDelivrHits":31,"objectID":"gatsby-plugin-sitemap","_highlightResult":{"name":{"value":"gatsby-plugin-sitemap","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin that automatically creates a sitemap for your site","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginsitemap","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin sitemap","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-sitemap","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-sass","downloadsLast30Days":192514,"downloadsRatio":0.0004218199987263557,"humanDownloadsLast30Days":"192.5k","popular":false,"version":"2.1.0","versions":{"0.1.1":"2017-04-24T00:46:58.530Z","0.1.2":"2017-04-24T01:03:21.084Z","1.0.0-alpha13-alpha.0189ea42":"2017-04-28T22:29:27.773Z","1.0.0-alpha13-alpha.215cabc2":"2017-05-01T23:02:07.132Z","1.0.0-alpha13-alpha.526805ab":"2017-05-03T22:17:30.923Z","1.0.0-alpha13-alpha.0f0222b8":"2017-05-04T16:09:19.112Z","1.0.0-alpha13-alpha.7d186994":"2017-05-04T16:29:43.899Z","1.0.0-alpha13-alpha.a3ef328b":"2017-05-04T19:51:57.610Z","1.0.0-alpha13-alpha.84bd4b24":"2017-05-04T20:33:27.754Z","1.0.0-alpha13-alpha.7efda7f0":"2017-05-04T23:03:12.383Z","1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:10.597Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:43.287Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:32:18.313Z","1.0.0-alpha14":"2017-05-06T01:18:16.815Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:02.767Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:03.796Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:09.092Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:44:05.857Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:55:02.014Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:12:01.200Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:33.788Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:34:00.784Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:24.411Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:30.206Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:29:55.212Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:38.520Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:22:04.145Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:36.085Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:28.968Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:29:51.728Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:05:56.210Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:27:07.488Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:42:51.178Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:40:04.569Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:44.661Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:47:45.045Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:22.204Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:21.511Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:37:49.795Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:16:45.491Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:31.024Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:44.725Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:45.015Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:37:58.598Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:39:04.056Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:33:57.280Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:18.574Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:52:00.332Z","1.0.0-alpha.22":"2017-06-08T04:27:54.944Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:09.063Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:25.055Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:43.563Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:19.187Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:25:52.816Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:08:03.197Z","1.0.0-beta.1":"2017-06-15T20:25:51.534Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:12.450Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:25.450Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:33.341Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:35:52.624Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:13.839Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:34.066Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:45.555Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:00.924Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:52.589Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:39.625Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:43.706Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:40.759Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:20.884Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:26.704Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:03.341Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:21:57.894Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:20.416Z","1.0.0-beta.6":"2017-07-02T06:43:01.792Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:40:52.665Z","1.0.0-beta.7":"2017-07-04T00:12:33.042Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:35.852Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:35.124Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:09.444Z","1.0.0":"2017-07-06T19:43:29.811Z","1.0.1":"2017-07-06T19:48:56.622Z","1.0.2":"2017-08-11T14:03:14.743Z","1.0.3":"2017-08-19T01:52:26.539Z","1.1.0-alpha.22c8a6f1":"2017-08-24T16:12:26.152Z","2.0.0":"2017-08-25T18:06:58.771Z","1.0.4":"2017-08-25T18:21:51.731Z","2.0.0-alpha.0":"2017-08-28T16:38:14.607Z","1.0.5":"2017-08-29T00:05:46.434Z","1.0.6":"2017-08-29T02:09:39.895Z","1.0.7":"2017-08-29T22:42:49.696Z","1.0.8":"2017-08-29T22:51:19.248Z","1.0.9":"2017-08-30T22:59:09.337Z","1.0.10":"2017-08-31T23:42:48.028Z","2.0.0-alpha.1":"2017-09-03T19:01:29.786Z","1.0.11":"2017-09-05T16:23:38.429Z","1.0.12":"2017-09-07T14:24:27.248Z","1.1.0-alpha.76b32701":"2017-09-15T18:02:58.349Z","1.1.0-alpha.93f2e2a2":"2017-09-16T11:52:05.369Z","1.1.0-alpha.5db7a275":"2017-09-16T13:47:42.380Z","1.1.0-alpha.1460dad9":"2017-09-18T12:30:30.355Z","1.0.13":"2017-11-07T08:16:04.757Z","1.0.14":"2017-11-29T00:10:49.564Z","1.0.15":"2017-12-10T00:46:08.205Z","2.0.0-alpha.f20ac0ed":"2018-01-11T18:39:06.664Z","2.0.0-alpha.a0a09c94":"2018-01-11T18:48:00.966Z","2.0.0-alpha.b50f2063":"2018-01-11T18:55:05.897Z","2.0.0-alpha.03b9df85":"2018-01-12T14:36:11.228Z","2.0.0-alpha.e9df8e57":"2018-01-12T14:47:28.604Z","2.0.0-alpha.8c822451":"2018-01-12T15:00:56.127Z","2.0.0-alpha.e5586916":"2018-01-12T15:22:29.862Z","2.0.0-alpha.9da1bca1":"2018-01-12T18:07:31.842Z","2.0.0-alpha.aeb05561":"2018-01-18T01:53:03.999Z","2.0.0-alpha.7b47e00d":"2018-01-18T02:10:05.211Z","2.0.0-alpha.f5c1df61":"2018-01-18T17:30:26.427Z","2.0.0-alpha.926cb6da":"2018-01-21T01:42:18.895Z","2.0.0-alpha.3f307d61":"2018-01-21T02:22:58.583Z","1.0.16":"2018-01-23T19:18:58.917Z","2.0.0-alpha.d1544e1b":"2018-01-25T00:14:25.147Z","2.0.0-alpha.53bbd4cd":"2018-02-10T20:34:43.827Z","2.0.0-alpha.2b695217":"2018-02-10T22:36:50.345Z","2.0.0-alpha.32ef58da":"2018-02-11T03:44:48.780Z","2.0.0-alpha.5182142b":"2018-02-11T04:12:39.522Z","1.0.17":"2018-02-13T01:12:57.488Z","2.0.0-alpha.6ab84875":"2018-02-15T02:06:53.256Z","2.0.0-alpha.9d4de2a6":"2018-02-15T20:32:31.077Z","2.0.0-alpha.9e381f74":"2018-02-15T21:12:38.409Z","2.0.0-alpha.dd504153":"2018-02-15T21:29:48.198Z","2.0.0-alpha.b68b7f5c":"2018-02-15T22:00:51.692Z","2.0.0-alpha.bb258cb5":"2018-02-16T00:29:45.708Z","2.0.0-alpha.e28a1c8e":"2018-02-16T01:11:10.509Z","2.0.0-alpha.067e672c":"2018-02-17T02:45:18.554Z","2.0.0-alpha.d0b8dd9e":"2018-02-17T19:05:15.709Z","2.0.0-alpha.2":"2018-02-17T19:31:07.758Z","2.0.0-alpha.e66c6c9c":"2018-02-27T01:25:02.425Z","1.0.18":"2018-02-28T20:41:15.166Z","2.0.0-alpha.2cbec6d6":"2018-03-03T06:46:45.960Z","2.0.0-alpha.3":"2018-03-03T07:24:08.157Z","2.0.0-alpha.f98688ee":"2018-03-07T02:25:53.596Z","2.0.0-alpha.4":"2018-03-07T02:34:42.295Z","1.0.19":"2018-03-07T18:06:25.035Z","2.0.0-alpha.9fe50b00":"2018-03-08T03:04:29.167Z","1.0.20":"2018-03-08T05:23:47.690Z","1.0.21":"2018-03-13T06:17:11.087Z","1.0.22":"2018-03-16T23:17:27.844Z","1.0.23":"2018-03-17T02:14:22.483Z","2.0.0-alpha.34eda94b":"2018-03-17T21:22:23.006Z","2.0.0-alpha.12622d64":"2018-03-18T00:00:20.591Z","2.0.0-alpha.84bd71b4":"2018-03-18T00:40:11.004Z","2.0.0-alpha.6ad61a13":"2018-03-21T17:49:40.113Z","2.0.0-alpha.5f47082e":"2018-03-23T22:47:52.123Z","2.0.0-alpha.5":"2018-03-23T23:19:11.854Z","1.0.24":"2018-03-24T17:46:01.262Z","1.0.25":"2018-03-26T21:55:25.873Z","2.0.0-alpha.95fcd4af":"2018-03-29T02:22:39.040Z","2.0.0-alpha.20252dc3":"2018-03-29T02:44:30.220Z","2.0.0-alpha.4a09f745":"2018-04-05T22:14:58.331Z","2.0.0-alpha.76793cd8":"2018-04-07T22:12:29.368Z","1.0.26":"2018-04-19T16:33:12.193Z","2.0.0-alpha.5c9569c0":"2018-04-19T16:57:14.732Z","2.0.0-alpha.523a4286":"2018-04-19T23:52:18.782Z","2.0.0-alpha.5421f383":"2018-04-20T06:53:07.239Z","2.0.0-alpha.e9c3027b":"2018-04-20T17:56:48.146Z","2.0.0-alpha.6":"2018-04-22T01:54:16.835Z","2.0.0-alpha.7":"2018-04-25T16:25:29.588Z","2.0.0-alpha.8":"2018-04-26T18:19:48.725Z","2.0.0-alpha.9":"2018-05-09T01:04:35.947Z","2.0.0-alpha.10":"2018-05-10T15:22:32.134Z","2.0.0-alpha.11":"2018-05-11T21:44:01.764Z","2.0.0-alpha.13":"2018-05-15T19:56:01.089Z","2.0.0-alpha.14":"2018-05-31T14:04:43.218Z","2.0.0-alpha.15":"2018-05-31T17:17:09.914Z","2.0.0-alpha.16":"2018-06-11T15:23:52.135Z","2.0.0-alpha.17":"2018-06-11T16:55:21.805Z","2.0.0-alpha.18":"2018-06-16T19:09:01.230Z","2.0.0-alpha.8ac171a1":"2018-06-16T19:25:37.196Z","2.0.0-alpha.e328d33f":"2018-06-16T19:33:04.149Z","2.0.0-alpha.80a21f04":"2018-06-16T19:37:18.524Z","2.0.0-alpha.19":"2018-06-16T23:33:00.517Z","2.0.0-beta.0":"2018-06-17T06:53:59.289Z","2.0.0-beta.1":"2018-06-17T08:12:58.220Z","2.0.0-beta.2":"2018-06-20T20:45:33.798Z","2.0.0-beta.3":"2018-06-27T13:02:30.951Z","2.0.0-beta.4":"2018-07-09T22:12:33.961Z","2.0.0-beta.5":"2018-07-10T02:23:41.524Z","2.0.0-beta.6":"2018-07-21T16:00:12.521Z","2.0.0-beta.7":"2018-08-07T17:54:05.083Z","2.0.0-beta.9":"2018-08-07T17:57:35.049Z","2.0.0-beta.10":"2018-08-08T10:10:34.587Z","2.0.0-rc.0":"2018-08-21T00:58:49.007Z","2.0.0-rc.1":"2018-08-29T18:29:07.624Z","2.0.0-rc.2":"2018-09-04T17:16:50.983Z","2.0.1":"2018-09-17T20:42:17.703Z","2.0.2":"2018-10-29T15:24:10.358Z","2.0.3":"2018-11-01T15:35:19.359Z","2.0.4":"2018-11-08T01:37:07.098Z","2.0.5":"2018-11-29T12:14:02.641Z","2.0.6":"2018-12-05T14:13:55.495Z","2.0.7":"2018-12-06T16:04:08.424Z","2.0.8":"2019-01-28T16:58:40.108Z","2.0.9":"2019-02-01T10:24:28.650Z","2.0.10":"2019-02-01T12:25:15.704Z","2.0.11":"2019-03-11T15:24:39.767Z","2.0.12":"2019-06-19T09:38:24.875Z","2.0.13":"2019-06-19T10:16:14.754Z","2.1.0":"2019-06-20T13:49:13.216Z"},"tags":{"latest":"2.1.0"},"description":"Gatsby plugin to handle scss/sass files","dependencies":{"@babel/runtime":"^7.0.0","sass-loader":"^7.0.1"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-sass","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-sass","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-sass","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"README.md","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","sass","scss"],"computedKeywords":[],"computedMetadata":{},"created":1492994818530,"modified":1561038556000,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"danielfarrell76@gmail.com","name":"danielfarrell","avatar":"https://gravatar.com/avatar/255987ad38cec00933791003f8937e15","link":"https://www.npmjs.com/~danielfarrell"},{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:06.784Z","_searchInternal":{"concatenatedName":"gatsbypluginsass","alternativeNames":["gatsbypluginsass","gatsby plugin sass","gatsby-plugin-sass"],"downloadsMagnitude":6,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-sass/CHANGELOG.md","jsDelivrHits":27,"objectID":"gatsby-plugin-sass","_highlightResult":{"name":{"value":"gatsby-plugin-sass","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin to handle scss/sass files","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"sass","matchLevel":"none","matchedWords":[]},{"value":"scss","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"danielfarrell","matchLevel":"none","matchedWords":[]}},{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginsass","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin sass","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-sass","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-styled-components","downloadsLast30Days":185333,"downloadsRatio":0.0004060856136382376,"humanDownloadsLast30Days":"185.3k","popular":false,"version":"3.1.0","versions":{"0.0.1":"2017-05-30T03:07:10.334Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:37:53.981Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:16:50.009Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:34.781Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:46.600Z","1.0.0-alpha17":"2017-06-02T18:44:58.718Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:47.101Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:38:00.415Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:39:06.733Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:34:01.634Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:21.330Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:52:04.835Z","1.0.0-alpha.22":"2017-06-08T04:28:01.213Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:13.151Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:29.177Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:48.752Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:23.682Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:25:59.332Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:07:28.746Z","1.0.0-beta.1":"2017-06-15T20:25:56.473Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:19.960Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:30.834Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:38.805Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:36:01.942Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:19.242Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:42.700Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:50.434Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:06.508Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:55.515Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:43.979Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:47.214Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:44.219Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:24.389Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:29.597Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:09.798Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:22:02.384Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:25.670Z","1.0.0-beta.6":"2017-07-02T06:43:08.550Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:40:58.171Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:39.812Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:37.721Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:12.435Z","1.0.0":"2017-07-06T19:43:33.828Z","1.0.1":"2017-07-06T19:48:59.747Z","1.0.2":"2017-08-11T20:03:03.531Z","1.0.3":"2017-08-19T01:52:27.393Z","1.1.0-alpha.22c8a6f1":"2017-08-24T16:12:29.398Z","2.0.0":"2017-08-25T18:07:03.049Z","1.0.4":"2017-08-25T18:21:55.057Z","2.0.0-alpha.0":"2017-08-28T16:38:16.394Z","1.0.5":"2017-08-30T22:58:42.791Z","2.0.0-alpha.1":"2017-09-03T19:01:29.804Z","1.1.0-alpha.76b32701":"2017-09-15T18:01:18.363Z","1.1.0-alpha.2e1e7782":"2017-09-15T18:12:49.355Z","1.1.0-alpha.93f2e2a2":"2017-09-16T11:50:21.661Z","1.1.0-alpha.5db7a275":"2017-09-16T13:46:14.967Z","1.1.0-alpha.1460dad9":"2017-09-18T12:28:57.463Z","2.0.1":"2017-11-07T18:44:16.571Z","2.0.2":"2017-11-09T00:53:30.499Z","2.0.3":"2017-11-29T00:09:42.097Z","2.0.4":"2017-12-10T00:45:30.523Z","2.1.0-alpha.f20ac0ed":"2018-01-11T18:39:11.303Z","2.1.0-alpha.a0a09c94":"2018-01-11T18:48:05.494Z","2.1.0-alpha.b50f2063":"2018-01-11T18:55:09.955Z","2.1.0-alpha.03b9df85":"2018-01-12T14:36:15.533Z","2.1.0-alpha.e9df8e57":"2018-01-12T14:47:31.975Z","2.1.0-alpha.8c822451":"2018-01-12T15:00:58.583Z","2.1.0-alpha.e5586916":"2018-01-12T15:22:32.984Z","2.1.0-alpha.9da1bca1":"2018-01-12T18:07:36.497Z","2.1.0-alpha.aeb05561":"2018-01-18T01:53:07.346Z","2.1.0-alpha.7b47e00d":"2018-01-18T02:10:08.173Z","2.1.0-alpha.f5c1df61":"2018-01-18T17:30:32.958Z","2.1.0-alpha.926cb6da":"2018-01-21T01:42:22.180Z","2.1.0-alpha.3f307d61":"2018-01-21T02:23:01.322Z","2.0.5":"2018-01-23T19:19:04.229Z","2.1.0-alpha.d1544e1b":"2018-01-25T00:14:28.555Z","2.1.0-alpha.53bbd4cd":"2018-02-10T20:34:50.156Z","2.1.0-alpha.2b695217":"2018-02-10T22:36:54.168Z","2.1.0-alpha.32ef58da":"2018-02-11T03:44:52.941Z","2.1.0-alpha.5182142b":"2018-02-11T04:12:42.544Z","2.0.6":"2018-02-13T01:12:07.728Z","2.1.0-alpha.6ab84875":"2018-02-15T02:06:54.678Z","2.1.0-alpha.9d4de2a6":"2018-02-15T20:32:37.361Z","2.1.0-alpha.9e381f74":"2018-02-15T21:12:42.360Z","2.1.0-alpha.dd504153":"2018-02-15T21:29:54.684Z","2.1.0-alpha.b68b7f5c":"2018-02-15T22:00:56.853Z","2.1.0-alpha.bb258cb5":"2018-02-16T00:29:49.467Z","2.1.0-alpha.e28a1c8e":"2018-02-16T01:11:14.346Z","2.0.7":"2018-02-16T17:21:20.311Z","2.1.0-alpha.067e672c":"2018-02-17T02:45:22.784Z","2.1.0-alpha.d0b8dd9e":"2018-02-17T19:05:19.933Z","2.1.0-alpha.2":"2018-02-17T19:31:13.011Z","2.0.8":"2018-02-22T23:37:10.993Z","2.1.0-alpha.e66c6c9c":"2018-02-27T01:25:06.094Z","2.0.9":"2018-02-28T20:40:11.084Z","2.1.0-alpha.2cbec6d6":"2018-03-03T06:46:49.367Z","2.1.0-alpha.3":"2018-03-03T07:24:08.925Z","2.1.0-alpha.f98688ee":"2018-03-07T02:25:54.800Z","2.1.0-alpha.9fe50b00":"2018-03-08T03:04:32.060Z","2.1.0-alpha.34eda94b":"2018-03-17T21:22:24.647Z","2.1.0-alpha.12622d64":"2018-03-18T00:00:25.958Z","2.1.0-alpha.84bd71b4":"2018-03-18T00:40:12.403Z","2.1.0-alpha.6ad61a13":"2018-03-21T17:49:47.510Z","2.1.0-alpha.5f47082e":"2018-03-23T22:47:57.937Z","2.1.0-alpha.4":"2018-03-23T23:19:17.939Z","2.0.10":"2018-03-24T17:45:47.449Z","2.0.11":"2018-03-26T22:27:19.199Z","2.1.0-alpha.95fcd4af":"2018-03-29T02:22:46.801Z","2.1.0-alpha.20252dc3":"2018-03-29T02:44:32.256Z","2.1.0-alpha.4a09f745":"2018-04-05T22:15:02.829Z","2.1.0-alpha.76793cd8":"2018-04-07T22:12:34.342Z","2.1.0-alpha.5c9569c0":"2018-04-19T16:57:19.754Z","2.1.0-alpha.523a4286":"2018-04-19T23:52:27.831Z","2.1.0-alpha.5421f383":"2018-04-20T06:53:12.673Z","2.1.0-alpha.e9c3027b":"2018-04-20T17:56:59.668Z","2.1.0-alpha.5":"2018-04-22T01:54:20.963Z","2.1.0-alpha.6":"2018-04-26T18:19:51.053Z","3.0.0-alpha.1":"2018-05-02T23:03:33.818Z","3.0.0-alpha.2":"2018-05-05T18:23:23.576Z","3.0.0-alpha.3":"2018-05-11T21:44:07.644Z","3.0.0-alpha.5":"2018-05-15T20:14:56.324Z","3.0.0-alpha.6":"2018-05-31T14:05:10.041Z","3.0.0-alpha.7":"2018-05-31T17:17:32.729Z","3.0.0-alpha.8":"2018-06-11T15:24:35.948Z","3.0.0-alpha.9":"2018-06-11T16:55:37.252Z","3.0.0-alpha.10":"2018-06-16T19:09:11.834Z","3.0.0-alpha.8ac171a1":"2018-06-16T19:25:42.704Z","3.0.0-alpha.e328d33f":"2018-06-16T19:33:09.402Z","3.0.0-alpha.80a21f04":"2018-06-16T19:37:21.230Z","3.0.0-alpha.11":"2018-06-16T23:33:05.262Z","3.0.0-beta.0":"2018-06-17T06:54:00.747Z","3.0.0-beta.1":"2018-06-17T08:12:59.115Z","3.0.0-beta.2":"2018-06-20T20:45:35.867Z","3.0.0-beta.3":"2018-07-21T16:00:14.797Z","3.0.0-beta.4":"2018-08-16T21:53:46.448Z","3.0.0-rc.0":"2018-08-21T00:58:52.193Z","3.0.0-rc.1":"2018-08-29T18:29:09.240Z","3.0.0-rc.3":"2018-09-11T10:48:53.064Z","3.0.0-rc.4":"2018-09-11T11:23:12.282Z","3.0.0-rc.5":"2018-09-11T12:12:23.274Z","3.0.0":"2018-09-17T20:42:22.788Z","3.0.1":"2018-10-29T15:24:15.790Z","3.0.2":"2018-11-15T14:06:37.739Z","3.0.3":"2018-11-20T16:29:21.772Z","3.0.4":"2018-11-29T12:14:12.044Z","3.0.5":"2019-02-01T12:25:19.913Z","3.0.6":"2019-02-19T22:10:01.436Z","3.0.7-alpha.0":"2019-03-04T07:13:57.736Z","3.0.7":"2019-03-11T15:24:46.945Z","3.1.0":"2019-06-20T13:49:15.263Z"},"tags":{"latest":"3.1.0"},"description":"Gatsby plugin to add support for styled components","dependencies":{"@babel/runtime":"^7.0.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.2.0"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-styled-components","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-styled-components","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-styled-components","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-styled-components\n\nA [Gatsby](https://github.com/gatsbyjs/gatsby) plugin for\n[styled-components](https://github.com/styled-components/styled-components) with\nbuilt-in server-side rendering support.\n\n## Install\n\n`npm install --save gatsby-plugin-styled-components styled-components babel-plugin-styled-components`\n\n## How to use\n\nEdit `gatsby-config.js`\n\n```javascript\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-styled-components`,\n options: {\n // Add any options here\n },\n },\n ],\n}\n```\n\n# Options\n\nYou can pass options to the plugin, see the [Styled Components docs](https://www.styled-components.com/docs/tooling#babel-plugin) for a full list of options.\n\nFor example, to disable the `displayName` option:\n\n```js\noptions: {\n displayName: false\n}\n```\n\nNote: The `ssr` option will be ignored. Gatsby will apply it automatically when needed.\n\n### Breaking changes history\n\n<!-- Please keep the breaking changes list ordered with the newest change at the top -->\n\n#### v3.0.0\n\nsupport Gatsby v2 only\n\n#### v2.0.1\n\n`styled-components` is moved to a peer dependency. Installing the package\nalongside `gatsby-plugin-styled-components` is now required. Use `npm install --save styled-components`\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","styled-components"],"computedKeywords":[],"computedMetadata":{},"created":1496113630334,"modified":1561038557892,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"ywzhaifei@gmail.com","name":"gutenye","avatar":"https://gravatar.com/avatar/01f04a3bb55ef948a186620fa5d5ea29","link":"https://www.npmjs.com/~gutenye"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:06.866Z","_searchInternal":{"concatenatedName":"gatsbypluginstyledcomponents","alternativeNames":["gatsbypluginstyledcomponents","gatsby plugin styled components","gatsby-plugin-styled-components"],"downloadsMagnitude":6,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-styled-components/CHANGELOG.md","jsDelivrHits":121,"objectID":"gatsby-plugin-styled-components","_highlightResult":{"name":{"value":"gatsby-plugin-styled-components","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin to add support for styled components","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"styled-components","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"gutenye","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginstyledcomponents","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin styled components","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-styled-components","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-remark-images","downloadsLast30Days":149054,"downloadsRatio":0.0003156509345794603,"humanDownloadsLast30Days":"149.1k","popular":false,"version":"3.1.2","versions":{"1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:22:03.443Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:27.770Z","1.0.0-beta.6":"2017-07-02T06:43:10.336Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:41:00.884Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:42.289Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:40.631Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:17.191Z","1.0.0":"2017-07-06T19:43:37.000Z","1.0.1":"2017-07-06T19:49:03.640Z","1.1.0":"2017-07-12T03:17:59.404Z","1.2.0":"2017-07-13T22:53:37.534Z","1.3.0":"2017-07-19T06:31:58.152Z","1.3.1":"2017-07-19T19:32:31.134Z","1.3.2":"2017-07-20T17:37:24.725Z","1.5.0":"2017-07-27T19:27:40.062Z","1.5.1":"2017-08-10T15:06:28.721Z","1.5.2":"2017-08-11T14:03:19.771Z","1.5.3":"2017-08-14T22:35:06.272Z","1.5.4":"2017-08-19T01:53:06.428Z","1.5.5":"2017-08-25T18:22:13.977Z","1.5.6":"2017-08-28T20:42:04.953Z","1.5.7":"2017-08-29T00:05:49.065Z","1.5.8":"2017-08-30T22:59:12.239Z","1.5.9":"2017-08-31T23:42:55.690Z","1.5.10":"2017-09-01T22:07:34.268Z","1.5.11":"2017-09-07T14:24:32.631Z","1.6.0-alpha.76b32701":"2017-09-15T18:03:08.702Z","1.6.0-alpha.93f2e2a2":"2017-09-16T11:52:14.781Z","1.6.0-alpha.5db7a275":"2017-09-16T13:47:52.288Z","1.6.0-alpha.1460dad9":"2017-09-18T12:30:39.497Z","1.5.12":"2017-09-22T21:26:50.612Z","1.5.13":"2017-09-25T15:01:51.219Z","1.5.14":"2017-10-07T04:08:44.083Z","1.5.15":"2017-10-07T23:29:04.761Z","1.5.16":"2017-10-12T22:38:36.420Z","1.5.17":"2017-10-16T18:35:31.378Z","1.5.18":"2017-10-16T20:07:38.237Z","1.5.19":"2017-10-20T16:34:11.862Z","1.5.20":"2017-10-20T20:00:47.580Z","1.5.21":"2017-10-25T20:07:57.120Z","1.5.22":"2017-10-25T20:59:25.422Z","1.5.23":"2017-10-26T06:26:28.017Z","1.5.24":"2017-10-26T21:46:29.075Z","1.5.25":"2017-11-01T16:47:04.286Z","1.5.26":"2017-11-01T18:01:56.766Z","1.5.28":"2017-11-01T20:29:45.717Z","1.5.29":"2017-11-02T18:06:52.285Z","1.5.30":"2017-11-03T18:14:01.130Z","1.5.31":"2017-11-07T08:16:10.458Z","1.5.32":"2017-11-14T17:49:47.045Z","1.5.33":"2017-11-29T00:10:57.027Z","1.5.34":"2017-12-10T00:46:14.456Z","1.5.35":"2017-12-13T03:07:47.988Z","1.5.36":"2017-12-14T19:58:02.246Z","1.6.0-alpha.f20ac0ed":"2018-01-11T18:40:02.076Z","1.6.0-alpha.a0a09c94":"2018-01-11T18:49:03.762Z","1.6.0-alpha.b50f2063":"2018-01-11T18:55:55.227Z","1.6.0-alpha.03b9df85":"2018-01-12T14:37:15.919Z","1.6.0-alpha.e9df8e57":"2018-01-12T14:48:27.751Z","1.6.0-alpha.8c822451":"2018-01-12T15:01:44.336Z","1.6.0-alpha.e5586916":"2018-01-12T15:23:23.998Z","1.6.0-alpha.9da1bca1":"2018-01-12T18:08:47.843Z","1.5.37":"2018-01-16T20:09:27.599Z","1.6.0-alpha.aeb05561":"2018-01-18T01:53:56.885Z","1.6.0-alpha.7b47e00d":"2018-01-18T02:10:50.057Z","1.6.0-alpha.f5c1df61":"2018-01-18T17:31:34.731Z","1.5.39":"2018-01-20T01:17:31.417Z","1.6.0-alpha.926cb6da":"2018-01-21T01:43:21.892Z","1.6.0-alpha.3f307d61":"2018-01-21T02:24:00.462Z","1.5.40":"2018-01-23T19:19:24.161Z","1.6.0-alpha.d1544e1b":"2018-01-25T00:15:23.891Z","1.5.41":"2018-01-25T22:23:07.306Z","1.5.42":"2018-02-07T20:24:39.841Z","1.5.43":"2018-02-08T00:04:52.270Z","1.6.0-alpha.53bbd4cd":"2018-02-10T20:35:53.373Z","1.6.0-alpha.2b695217":"2018-02-10T22:37:41.687Z","1.6.0-alpha.32ef58da":"2018-02-11T03:45:43.151Z","1.6.0-alpha.5182142b":"2018-02-11T04:13:44.920Z","1.5.44":"2018-02-13T01:13:02.763Z","1.6.0-alpha.6ab84875":"2018-02-15T02:07:53.710Z","1.6.0-alpha.9d4de2a6":"2018-02-15T20:33:36.198Z","1.6.0-alpha.dd504153":"2018-02-15T21:30:58.385Z","1.6.0-alpha.b68b7f5c":"2018-02-15T22:01:59.976Z","1.6.0-alpha.bb258cb5":"2018-02-16T00:30:36.590Z","1.6.0-alpha.e28a1c8e":"2018-02-16T01:12:04.021Z","1.5.45":"2018-02-16T20:44:38.874Z","1.5.46":"2018-02-16T23:22:42.105Z","1.6.0-alpha.067e672c":"2018-02-17T02:46:17.490Z","1.6.0-alpha.d0b8dd9e":"2018-02-17T19:06:34.839Z","1.5.45-0":"2018-02-17T19:32:01.716Z","2.0.0-alpha.2":"2018-02-17T20:00:20.993Z","2.0.0-alpha.3":"2018-02-17T20:02:26.009Z","2.0.0-alpha.4":"2018-02-17T20:07:53.746Z","2.0.0-alpha.5":"2018-02-17T20:32:07.711Z","1.5.47":"2018-02-19T19:39:46.726Z","1.5.48":"2018-02-21T20:41:56.876Z","1.5.49":"2018-02-22T23:37:28.582Z","1.5.50":"2018-02-24T00:10:47.640Z","1.5.51":"2018-02-26T23:28:17.524Z","2.0.0-alpha.e66c6c9c":"2018-02-27T01:26:34.973Z","1.5.52":"2018-02-28T06:38:07.436Z","1.5.53":"2018-02-28T20:41:21.430Z","2.0.0-alpha.2cbec6d6":"2018-03-03T06:47:43.100Z","2.0.0-alpha.6":"2018-03-03T07:25:31.520Z","1.5.54":"2018-03-04T07:23:51.292Z","1.5.55":"2018-03-05T19:55:12.121Z","1.5.56":"2018-03-06T18:54:36.721Z","2.0.0-alpha.f98688ee":"2018-03-07T02:26:45.632Z","2.0.0-alpha.7":"2018-03-07T02:34:56.451Z","2.0.0-alpha.8":"2018-03-07T23:55:36.903Z","2.0.0-alpha.9fe50b00":"2018-03-08T03:05:17.533Z","2.0.0-alpha.34eda94b":"2018-03-17T21:23:17.613Z","2.0.0-alpha.12622d64":"2018-03-18T00:01:32.145Z","2.0.0-alpha.84bd71b4":"2018-03-18T00:41:33.396Z","2.0.0-alpha.6ad61a13":"2018-03-21T17:51:06.788Z","1.5.59":"2018-03-23T18:48:08.166Z","2.0.0-alpha.5f47082e":"2018-03-23T22:49:09.780Z","2.0.0-alpha.9":"2018-03-23T23:20:24.192Z","1.5.60":"2018-03-26T21:55:18.985Z","2.0.0-alpha.95fcd4af":"2018-03-29T02:24:23.533Z","2.0.0-alpha.20252dc3":"2018-03-29T02:46:06.783Z","2.0.0-alpha.4a09f745":"2018-04-05T22:15:47.603Z","2.0.0-alpha.76793cd8":"2018-04-07T22:13:40.305Z","1.5.61":"2018-04-11T01:35:34.304Z","1.5.62":"2018-04-19T16:35:10.084Z","2.0.0-alpha.5c9569c0":"2018-04-19T16:58:53.949Z","2.0.0-alpha.523a4286":"2018-04-19T23:54:13.319Z","2.0.0-alpha.5421f383":"2018-04-20T06:54:58.570Z","2.0.0-alpha.e9c3027b":"2018-04-20T17:59:09.117Z","2.0.0-alpha.10":"2018-04-22T01:56:14.373Z","2.0.0-alpha.11":"2018-04-25T16:27:12.203Z","2.0.0-alpha.12":"2018-04-26T18:21:41.775Z","1.5.63":"2018-05-01T06:24:45.509Z","2.0.0-alpha.13":"2018-05-02T23:04:05.610Z","2.0.0-alpha.16":"2018-05-15T20:24:23.827Z","2.0.0-alpha.17":"2018-05-16T13:40:55.925Z","1.5.64":"2018-05-31T12:39:01.866Z","2.0.0-alpha.18":"2018-05-31T13:11:28.926Z","2.0.0-alpha.19":"2018-05-31T14:06:38.827Z","2.0.0-alpha.20":"2018-05-31T14:12:51.872Z","2.0.0-alpha.21":"2018-05-31T17:19:35.984Z","1.5.65":"2018-05-31T18:46:39.827Z","1.5.66":"2018-06-06T22:19:09.219Z","2.0.0-alpha.22":"2018-06-11T15:25:59.086Z","2.0.0-alpha.23":"2018-06-11T16:56:14.652Z","2.1.0-alpha.e328d33f":"2018-06-16T19:33:30.674Z","2.1.0-alpha.80a21f04":"2018-06-16T19:37:44.442Z","2.0.1-alpha.2":"2018-06-16T23:33:32.178Z","1.5.67":"2018-06-17T01:54:14.390Z","2.0.1-beta.0":"2018-06-17T06:54:08.856Z","2.0.1-beta.1":"2018-06-17T08:13:08.324Z","2.0.1-beta.2":"2018-06-20T17:16:06.211Z","2.0.1-beta.3":"2018-06-20T20:46:03.836Z","2.0.1-beta.4":"2018-07-11T02:58:20.150Z","2.0.1-beta.6":"2018-07-13T02:25:31.438Z","2.0.1-beta.7":"2018-07-16T20:33:14.162Z","2.0.1-beta.8":"2018-07-20T14:48:17.272Z","2.0.1-beta.9":"2018-07-21T16:00:22.624Z","2.0.1-beta.10":"2018-08-06T10:44:49.744Z","2.0.1-beta.11":"2018-08-16T14:21:58.618Z","2.0.1-beta.12":"2018-08-20T19:52:58.803Z","2.0.1-rc.0":"2018-08-21T00:59:18.763Z","2.0.1-rc.1":"2018-08-29T18:29:39.269Z","2.0.1-rc.5":"2018-09-11T12:12:40.012Z","2.0.1":"2018-09-17T20:42:46.811Z","2.0.2":"2018-09-24T12:57:55.286Z","2.0.3":"2018-09-26T10:38:58.415Z","2.0.4":"2018-10-09T14:24:21.763Z","2.0.5":"2018-10-29T15:24:35.832Z","2.0.6":"2018-11-06T01:40:04.143Z","3.0.0":"2018-11-21T17:55:22.639Z","3.0.1":"2018-11-29T12:14:30.799Z","3.0.2":"2019-01-31T18:48:47.320Z","3.0.3":"2019-02-01T12:25:35.995Z","3.0.4":"2019-02-15T18:36:15.743Z","3.0.5":"2019-02-22T14:59:40.627Z","3.0.6-alpha.0":"2019-03-04T07:14:05.954Z","3.0.6":"2019-03-04T22:22:51.407Z","3.0.7":"2019-03-11T13:49:37.766Z","3.0.8":"2019-03-11T15:25:25.307Z","3.0.9":"2019-03-12T07:45:22.618Z","3.0.10":"2019-03-15T15:58:02.116Z","3.0.11":"2019-04-23T12:30:37.028Z","3.0.12":"2019-05-23T22:29:52.487Z","3.0.13":"2019-05-26T16:26:03.817Z","3.0.14":"2019-05-29T11:52:40.806Z","3.0.15":"2019-06-14T07:27:56.245Z","3.0.16":"2019-06-14T08:30:36.479Z","3.1.0":"2019-06-20T13:49:35.917Z","3.1.1":"2019-06-25T08:42:27.763Z","3.1.2":"2019-06-25T14:54:22.553Z"},"tags":{"latest":"3.1.2"},"description":"Processes images in markdown so they can be used in the production build.","dependencies":{"@babel/runtime":"^7.0.0","cheerio":"^1.0.0-rc.2","is-relative-url":"^2.0.0","lodash":"^4.17.10","mdast-util-definitions":"^1.2.0","potrace":"^2.1.1","query-string":"^6.1.0","slash":"^1.0.0","unist-util-select":"^1.5.0","unist-util-visit-parents":"^2.0.1"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-remark-images","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-remark-images","head":"9150519e9c007d1b5a8e43a2c00099ede67dfa18","branch":"9150519e9c007d1b5a8e43a2c00099ede67dfa18"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-remark-images","head":"9150519e9c007d1b5a8e43a2c00099ede67dfa18"},"gitHead":"9150519e9c007d1b5a8e43a2c00099ede67dfa18","readme":"# gatsby-remark-images\n\nProcesses images in markdown so they can be used in the production build.\n\nIn the processing, it make images responsive by:\n\n- Adding an elastic container to hold the size of the image while it loads to\n avoid layout jumps.\n- Generating multiple versions of images at different widths and sets the\n `srcset` and `sizes` of the `img` element so regardless of the width of the\n device, the correct image is downloaded.\n- Using the \"blur up\" technique popularized by [Medium][1] and [Facebook][2]\n where a small 20px wide version of the image is shown as a placeholder until\n the actual image is downloaded.\n\n## Install\n\n`npm install --save gatsby-remark-images gatsby-plugin-sharp`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nplugins: [\n `gatsby-plugin-sharp`,\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [\n {\n resolve: `gatsby-remark-images`,\n options: {\n // It's important to specify the maxWidth (in pixels) of\n // the content container as this plugin uses this as the\n // base for generating different widths of each image.\n maxWidth: 590,\n },\n },\n ],\n },\n },\n]\n```\n\n## Options\n\n| Name | Default | Description |\n| ---------------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `maxWidth` | `650` | The `maxWidth` in pixels of the div where the markdown will be displayed. This value is used when deciding what the width of the various responsive thumbnails should be. |\n| `linkImagesToOriginal` | `true` | Add a link to each image to the original image. Sometimes people want to see a full-sized version of an image e.g. to see extra detail on a part of the image and this is a convenient and common pattern for enabling this. Set this option to false to disable this behavior. |\n| `showCaptions` | `false` | Add a caption to each image with the contents of the title attribute, when this is not empty. If the title attribute is empty but the alt attribute is not, it will be used instead. Set this option to true to enable this behavior. You can also pass an array instead to specify which value should be used for the caption — for example, passing `['alt', 'title']` would use the alt attribute first, and then the title. When this is set to `true` it is the same as passing `['title', 'alt']`. If you just want to use the title (and omit captions for images that have titles but no alt attribute), pass `['title']`. |\n| `sizeByPixelDensity` | `false` | Analyze images' pixel density to make decisions about target image size. This is what GitHub is doing when embedding images in tickets. This is a useful setting for documentation pages with a lot of screenshots. It can have unintended side effects on high pixel density artworks.<br /><br />Example: A screenshot made on a retina screen with a resolution of 144 (e.g. Macbook) and a width of 100px, will be rendered at 50px. |\n| `wrapperStyle` | | Add custom styles to the div wrapping the responsive images. Use the syntax for the style attribute e.g. `margin-bottom:10px; background: red;` or a function returning a style string which receives the information about the image you can use to dynamically set styles based on the aspectRatio for example. |\n| `backgroundColor` | `white` | Set the background color of the image to match the background image of your design. |\n| `quality` | `50` | The quality level of the generated files. |\n| `withWebp` | `false` | Additionally generate WebP versions alongside your chosen file format. They are added as a srcset with the appropriate mimetype and will be loaded in browsers that support the format. Pass `true` for default support, or an object of options to specifically override those for the WebP files. For example, pass `{ quality: 80 }` to have the WebP images be at quality level 80. |\n| `tracedSVG` | `false` | Use traced SVGs for placeholder images instead of the \"blur up\" effect. Pass `true` for traced SVGs with the default settings (seen [here][3]), or an object of options to override the defaults. For example, pass `{ color: \"#F00\", turnPolicy: \"TURNPOLICY_MAJORITY\" }` to change the color of the trace to red and the turn policy to TURNPOLICY_MAJORITY. See [`node-potrace` parameter documentation][4] for a full listing and explanation of the available options. |\n\n## dynamic wrapperStyle example\n\n```\n{\n resolve: `gatsby-remark-images`,\n options: {\n maxWidth: 800,\n wrapperStyle: fluidResult => `flex:${_.round(fluidResult.aspectRatio, 2)};`,\n },\n}\n```\n\n## Supported Formats\n\nThis plugin will support the following formats:\n\n- JPEG\n- PNG\n\nSince it uses Sharp for image processing, this plugin will not support GIFs or SVGs. If you would like to render these file types with the image markdown syntax, add the [gatsby-remark-copy-linked-files](https://www.gatsbyjs.org/packages/gatsby-remark-copy-linked-files/) plugin. Do note with this it will load in the images, but won't use the features of Sharp such as the elastic container or the blur-up enhancements.\n\n[1]: https://jmperezperez.com/medium-image-progressive-loading-placeholder/\n[2]: https://code.facebook.com/posts/991252547593574/the-technology-behind-preview-photos/\n[3]: https://www.npmjs.com/package/gatsby-plugin-sharp#tracedsvg\n[4]: https://github.com/tooolbox/node-potrace#parameters\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","image","markdown","remark","responsive images"],"computedKeywords":[],"computedMetadata":{},"created":1498936923443,"modified":1561474468866,"lastPublisher":{"name":"wardpeet","email":"ward@coding-tech.com","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-25T14:54:35.524Z","_searchInternal":{"concatenatedName":"gatsbyremarkimages","alternativeNames":["gatsbyremarkimages","gatsby remark images","gatsby-remark-images"],"downloadsMagnitude":6,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-remark-images/CHANGELOG.md","jsDelivrHits":0,"objectID":"gatsby-remark-images","_highlightResult":{"name":{"value":"gatsby-remark-images","matchLevel":"none","matchedWords":[]},"description":{"value":"Processes images in markdown so they can be used in the production build.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"image","matchLevel":"none","matchedWords":[]},{"value":"markdown","matchLevel":"none","matchedWords":[]},{"value":"remark","matchLevel":"none","matchedWords":[]},{"value":"responsive images","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyremarkimages","matchLevel":"none","matchedWords":[]},{"value":"gatsby remark images","matchLevel":"none","matchedWords":[]},{"value":"gatsby-remark-images","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-netlify","downloadsLast30Days":139790,"downloadsRatio":0.000306295737566916,"humanDownloadsLast30Days":"139.8k","popular":false,"version":"2.1.0","versions":{"1.0.2":"2017-09-20T22:33:11.343Z","1.0.3":"2017-09-21T17:22:48.162Z","1.0.4":"2017-09-21T18:39:49.807Z","1.0.5":"2017-09-26T21:07:18.648Z","1.0.6":"2017-10-02T22:15:50.325Z","1.0.7":"2017-11-07T08:15:47.493Z","1.0.8":"2017-11-14T01:54:32.134Z","1.0.9":"2017-11-29T00:09:30.852Z","1.0.10":"2017-12-10T00:45:23.065Z","1.0.11":"2017-12-10T06:07:51.294Z","1.0.12":"2017-12-14T19:57:57.292Z","1.0.13":"2018-01-11T00:05:10.071Z","1.1.0-alpha.f20ac0ed":"2018-01-11T18:38:55.443Z","1.1.0-alpha.a0a09c94":"2018-01-11T18:47:52.479Z","1.1.0-alpha.b50f2063":"2018-01-11T18:54:57.476Z","1.1.0-alpha.03b9df85":"2018-01-12T14:36:04.189Z","1.1.0-alpha.e9df8e57":"2018-01-12T14:47:20.228Z","1.1.0-alpha.8c822451":"2018-01-12T15:00:47.667Z","1.1.0-alpha.e5586916":"2018-01-12T15:22:20.104Z","1.1.0-alpha.9da1bca1":"2018-01-12T18:07:20.769Z","1.0.14":"2018-01-16T20:09:20.698Z","1.1.0-alpha.aeb05561":"2018-01-18T01:52:55.943Z","1.1.0-alpha.7b47e00d":"2018-01-18T02:09:57.970Z","1.1.0-alpha.f5c1df61":"2018-01-18T17:30:15.250Z","1.1.0-alpha.926cb6da":"2018-01-21T01:42:11.184Z","1.1.0-alpha.3f307d61":"2018-01-21T02:22:46.528Z","1.0.15":"2018-01-23T19:19:11.311Z","1.1.0-alpha.d1544e1b":"2018-01-25T00:14:15.863Z","1.0.16":"2018-01-27T17:03:38.690Z","1.0.17":"2018-01-29T22:10:53.051Z","1.1.0-alpha.53bbd4cd":"2018-02-10T20:34:31.179Z","1.1.0-alpha.2b695217":"2018-02-10T22:36:40.585Z","1.1.0-alpha.32ef58da":"2018-02-11T03:44:40.343Z","1.1.0-alpha.5182142b":"2018-02-11T04:12:25.942Z","1.0.18":"2018-02-13T01:11:56.852Z","1.1.0-alpha.6ab84875":"2018-02-15T02:06:41.182Z","1.1.0-alpha.9d4de2a6":"2018-02-15T20:32:19.377Z","1.1.0-alpha.9e381f74":"2018-02-15T21:12:30.080Z","1.1.0-alpha.dd504153":"2018-02-15T21:29:34.768Z","1.1.0-alpha.b68b7f5c":"2018-02-15T22:00:40.655Z","1.1.0-alpha.bb258cb5":"2018-02-16T00:29:35.198Z","1.1.0-alpha.e28a1c8e":"2018-02-16T01:11:01.129Z","1.1.0-alpha.067e672c":"2018-02-17T02:45:08.000Z","1.1.0-alpha.d0b8dd9e":"2018-02-17T19:05:03.693Z","1.0.19-0":"2018-02-17T19:31:00.252Z","1.1.0-alpha.e66c6c9c":"2018-02-27T01:24:49.725Z","1.0.19":"2018-02-28T20:39:55.352Z","1.1.0-alpha.2cbec6d6":"2018-03-03T06:46:36.076Z","1.0.19-1":"2018-03-03T07:23:53.931Z","1.1.0-alpha.f98688ee":"2018-03-07T02:25:40.813Z","1.0.19-2":"2018-03-07T02:34:36.476Z","1.1.0-alpha.9fe50b00":"2018-03-08T03:04:18.423Z","1.1.0-alpha.34eda94b":"2018-03-17T21:22:14.213Z","1.1.0-alpha.12622d64":"2018-03-18T00:00:06.781Z","1.1.0-alpha.84bd71b4":"2018-03-18T00:39:53.552Z","1.1.0-alpha.6ad61a13":"2018-03-21T17:49:23.614Z","1.1.0-alpha.5f47082e":"2018-03-23T22:47:32.328Z","1.0.19-3":"2018-03-23T23:18:56.002Z","1.1.0-alpha.95fcd4af":"2018-03-29T02:22:21.730Z","1.1.0-alpha.20252dc3":"2018-03-29T02:44:05.829Z","1.1.0-alpha.4a09f745":"2018-04-05T22:14:49.450Z","1.1.0-alpha.76793cd8":"2018-04-07T22:12:16.030Z","1.1.0-alpha.5c9569c0":"2018-04-19T16:56:54.823Z","1.1.0-alpha.523a4286":"2018-04-19T23:51:53.267Z","1.1.0-alpha.5421f383":"2018-04-20T06:52:49.123Z","1.1.0-alpha.e9c3027b":"2018-04-20T17:56:24.200Z","1.0.19-4":"2018-04-22T01:53:55.368Z","1.0.19-5":"2018-04-25T16:25:13.418Z","1.0.19-6":"2018-04-26T18:19:29.172Z","1.0.19-7":"2018-05-11T21:43:42.449Z","1.0.19-9":"2018-05-15T19:54:29.928Z","1.0.20":"2018-05-31T12:38:29.167Z","1.0.19-10":"2018-05-31T14:03:51.638Z","1.0.19-11":"2018-05-31T17:16:03.350Z","1.0.21":"2018-05-31T18:45:59.953Z","1.0.19-12":"2018-06-11T09:58:24.224Z","1.0.19-13":"2018-06-11T15:22:46.614Z","1.0.19-14":"2018-06-11T16:54:52.977Z","2.0.0-alpha.1":"2018-06-16T19:08:45.974Z","2.0.0-alpha.8ac171a1":"2018-06-16T19:25:21.820Z","2.0.0-alpha.e328d33f":"2018-06-16T19:32:51.042Z","2.0.0-alpha.80a21f04":"2018-06-16T19:37:00.735Z","2.0.0-alpha.2":"2018-06-16T23:32:47.141Z","2.0.0-beta.0":"2018-06-17T06:53:51.626Z","2.0.0-beta.1":"2018-06-17T08:12:51.530Z","2.0.0-beta.2":"2018-06-20T20:45:26.313Z","2.0.0-beta.3":"2018-07-11T02:58:17.547Z","2.0.0-beta.4":"2018-07-21T16:00:07.494Z","2.0.0-beta.5":"2018-08-02T14:10:52.891Z","2.0.0-beta.6":"2018-08-08T07:53:57.254Z","2.0.0-rc.0":"2018-08-21T00:58:32.767Z","2.0.0-rc.1":"2018-08-29T18:28:53.535Z","2.0.0-rc.2":"2018-09-05T13:12:24.621Z","2.0.0-rc.3":"2018-09-11T09:53:31.226Z","2.0.0-rc.4":"2018-09-11T10:48:47.694Z","2.0.0-rc.5":"2018-09-11T11:23:05.085Z","2.0.0-rc.6":"2018-09-11T12:12:12.739Z","2.0.0":"2018-09-17T20:41:52.120Z","2.0.1":"2018-10-02T20:38:31.123Z","2.0.2":"2018-10-23T12:19:01.609Z","2.0.3":"2018-10-29T15:23:57.471Z","2.0.4":"2018-11-08T01:37:01.098Z","2.0.5":"2018-11-15T14:46:51.583Z","2.0.6":"2018-11-29T12:13:44.571Z","2.0.7":"2019-01-25T10:19:14.646Z","2.0.8":"2019-02-01T12:25:07.743Z","2.0.9":"2019-02-06T16:11:14.863Z","2.0.10":"2019-02-08T18:02:05.879Z","2.0.11":"2019-02-15T17:46:10.929Z","2.0.12-alpha.0":"2019-03-04T07:13:46.449Z","2.0.12":"2019-03-11T15:24:23.037Z","2.0.13":"2019-03-15T15:57:51.801Z","2.0.14":"2019-04-18T19:23:44.274Z","2.0.15":"2019-04-23T12:30:37.072Z","2.0.16":"2019-05-01T19:24:07.912Z","2.0.17":"2019-05-14T07:28:01.977Z","2.1.0":"2019-06-20T13:48:58.873Z"},"tags":{"latest":"2.1.0"},"description":"A Gatsby plugin which generates a _headers file for netlify","dependencies":{"@babel/runtime":"^7.0.0","fs-extra":"^4.0.2","kebab-hash":"^0.1.2","lodash":"^4.17.10","webpack-assets-manifest":"^3.0.2"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-netlify","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-netlify","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-netlify","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-netlify\n\nAutomatically generates a `_headers` file and a `_redirects` file at the root of the public folder to configure\n[HTTP headers](https://www.netlify.com/docs/headers-and-basic-auth/) and [redirects](https://www.netlify.com/docs/redirects/) on Netlify.\n\nNotably, you can immediately enable HTTP/2 server push of critical Gatsby assets\nthrough the `Link` headers.\n\nBy default, the plugin will add HTTP/2 assets to server push the critical Gatsby\nscripts (ones that have the `preload` attribute already). It will also add some\nbasic security headers. You can easily add or replace headers through the plugin\nconfig.\n\n## Install\n\n`npm install --save gatsby-plugin-netlify`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nplugins: [`gatsby-plugin-netlify`]\n```\n\n## Configuration\n\nIf you just need the critical assets, you don't need to add any additional\nconfig. However, if you want to add headers, remove default headers, or\ntransform the given headers, you can use the following configuration options.\n\n```javascript\nplugins: [\n {\n resolve: `gatsby-plugin-netlify`,\n options: {\n headers: {}, // option to add more headers. `Link` headers are transformed by the below criteria\n allPageHeaders: [], // option to add headers for all pages. `Link` headers are transformed by the below criteria\n mergeSecurityHeaders: true, // boolean to turn off the default security headers\n mergeLinkHeaders: true, // boolean to turn off the default gatsby js headers\n mergeCachingHeaders: true, // boolean to turn off the default caching headers\n transformHeaders: (headers, path) => headers, // optional transform for manipulating headers under each path (e.g.sorting), etc.\n generateMatchPathRewrites: true, // boolean to turn off automatic creation of redirect rules for client only paths\n },\n },\n]\n```\n\n### Headers\n\nThe headers object represents a JS version of the\n[Netlify `_headers` file format](https://www.netlify.com/docs/headers-and-basic-auth/).\nYou should pass in a object with string keys (representing the paths) and an\narray of strings for each header.\n\nAn example:\n\n```javascript\n{\n options: {\n headers: {\n \"/*\": [\n \"Basic-Auth: someuser:somepassword anotheruser:anotherpassword\",\n ],\n \"/my-page\": [\n // matching headers (by type) are replaced by Netlify with more specific routes\n \"Basic-Auth: differentuser:differentpassword\",\n ],\n },\n }\n}\n```\n\nLink paths are specially handed by this plugin. Since most files are processed\nand cache-busted through Gatsby (with a file hash), the plugin will transform\nany base file names to the hashed variants. If the file is not hashed, it will\nensure the path is valid relative to the output `public` folder. You should be\nable to reference assets imported through javascript in the `static` folder.\n\nDo not specify the public path in the config, as the plugin will provide it for\nyou.\n\nThe Netlify `_headers` file does not inherit headers, and it will replace any\nmatching headers it finds in more specific routes. For example, if you add a\nlink to the root wildcard path (`/*`), it will be replaced by any more\nspecific path. If you want a resource to put linked across the site, you will\nhave to add to every path. To make this easier, the plugin provides the\n`allPageHeaders` option to inject the same headers on every path.\n\n```javascript\n{\n options: {\n allPageHeaders: [\n \"Link: </static/my-logo.png>; rel=preload; as=image\",\n ],\n headers: {\n \"/*\": [\n \"Basic-Auth: someuser:somepassword anotheruser:anotherpassword\",\n ],\n },\n }\n}\n```\n\nYou can validate the `_headers` config through the\n[Netlify playground app](https://play.netlify.com/headers).\n\n### Redirects\n\nYou can create redirects using the [`createRedirect`](https://www.gatsbyjs.org/docs/actions/#createRedirect) action.\n\nIn addition to the options provided by the Gatsby API, you can pass these options specific to this plugin:\n\n| Attribute | Description |\n| ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `force` | Overrides existing content in the path. This is particularly useful for domain alias redirects. See [the Netlify documentation for this option](https://www.netlify.com/docs/redirects/#structured-configuration). |\n| `statusCode` | Overrides the HTTP status code which is set to `302` by default or `301` when [`isPermanent`](https://www.gatsbyjs.org/docs/actions/#createRedirect) is `true`. Since Netlify supports custom status codes, you can set one here. For example, `200` for rewrites, or `404` for a custom error page. See [the Netlify documentation for this option](https://www.netlify.com/docs/redirects/#http-status-codes). |\n\nAn example:\n\n```javascript\ncreateRedirect({ fromPath: \"/old-url\", toPath: \"/new-url\", isPermanent: true })\ncreateRedirect({ fromPath: \"/url\", toPath: \"/zn-CH/url\", Language: \"zn\" })\ncreateRedirect({\n fromPath: \"/url_that_is/not_pretty\",\n toPath: \"/pretty/url\",\n statusCode: 200,\n})\n```\n\nYou can also create a `_redirects` file in the `static` folder for the same effect. Any programmatically created redirects will be appended to the file.\n\n```sh\n# my manually set redirects\n/home /\n/blog/my-post.php /blog/my-post\n```\n\nYou can validate the `_redirects` config through the\n[Netlify playground app](https://play.netlify.com/redirects).\n\nRedirect rules are automatically added for [client only paths](https://www.gatsbyjs.org/docs/building-apps-with-gatsby/#client-only-routes--user-authentication). If those rules are conflicting with custom rules or if you want to have more control over them you can disable them in [configuration](#configuration) by setting `generateMatchPathRewrites` to `false`.\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","http/2-server-push","netlify"],"computedKeywords":[],"computedMetadata":{},"created":1505946791343,"modified":1561038542748,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:06.629Z","_searchInternal":{"concatenatedName":"gatsbypluginnetlify","alternativeNames":["gatsbypluginnetlify","gatsby plugin netlify","gatsby-plugin-netlify"],"downloadsMagnitude":6,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-netlify/CHANGELOG.md","jsDelivrHits":57,"objectID":"gatsby-plugin-netlify","_highlightResult":{"name":{"value":"gatsby-plugin-netlify","matchLevel":"none","matchedWords":[]},"description":{"value":"A Gatsby plugin which generates a _headers file for netlify","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"http/2-server-push","matchLevel":"none","matchedWords":[]},{"value":"netlify","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginnetlify","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin netlify","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-netlify","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-source-contentful","downloadsLast30Days":136133,"downloadsRatio":0.0002779274207767822,"humanDownloadsLast30Days":"136.1k","popular":false,"version":"2.1.3","versions":{"1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:54.231Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:38:04.414Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:39:12.763Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:34:07.900Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:28.445Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:52:12.443Z","1.0.0-alpha20":"2017-06-06T02:01:14.571Z","1.0.0-alpha.22":"2017-06-08T04:28:06.408Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:17.154Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:33.472Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:55.008Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:30.783Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:26:07.074Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:08:37.156Z","1.0.0-alpha.23":"2017-06-14T00:30:15.192Z","1.0.0-beta.1":"2017-06-15T20:26:01.329Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:27.705Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:35.170Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:45.475Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:36:06.505Z","1.0.0-beta.3":"2017-06-21T18:04:54.914Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:23.482Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:47.093Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:54.613Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:11.488Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:58.740Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:46.720Z","1.0.0-beta.4":"2017-06-23T23:12:19.107Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:50.766Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:48.687Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:28.225Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:33.891Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:14.318Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:22:05.312Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:29.870Z","1.0.0-beta.6":"2017-07-02T06:43:13.702Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:41:04.148Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:44.818Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:43.018Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:19.814Z","1.0.0":"2017-07-06T19:43:40.921Z","1.0.1":"2017-07-06T19:49:06.096Z","1.1.0":"2017-07-12T03:18:06.416Z","1.2.0":"2017-07-13T22:53:39.861Z","1.3.0":"2017-07-19T06:31:58.363Z","1.3.1":"2017-08-11T14:03:25.003Z","1.3.2":"2017-08-19T01:52:44.409Z","1.4.0-alpha.22c8a6f1":"2017-08-24T16:12:36.726Z","2.0.0":"2017-08-25T18:07:07.244Z","1.3.3":"2017-08-25T18:22:00.924Z","2.0.0-alpha.0":"2017-08-28T16:38:17.472Z","1.3.4":"2017-08-28T20:42:04.349Z","1.3.5":"2017-08-29T00:05:51.639Z","1.3.6":"2017-08-30T22:58:51.557Z","1.3.7":"2017-08-31T23:42:06.527Z","2.0.0-alpha.1":"2017-09-03T19:01:35.021Z","1.3.8":"2017-09-15T14:56:12.863Z","1.4.0-alpha.76b32701":"2017-09-15T18:01:56.305Z","1.4.0-alpha.93f2e2a2":"2017-09-16T11:50:58.441Z","1.4.0-alpha.5db7a275":"2017-09-16T13:46:45.926Z","1.3.9":"2017-09-18T12:14:16.325Z","1.4.0-alpha.1460dad9":"2017-09-18T12:29:31.580Z","1.3.10":"2017-09-19T22:56:04.416Z","1.3.11":"2017-09-20T13:45:25.328Z","1.3.12":"2017-09-20T23:34:05.023Z","1.3.13":"2017-09-25T20:30:29.136Z","1.3.14":"2017-10-02T22:16:01.813Z","1.3.15":"2017-10-07T04:08:19.388Z","1.3.16":"2017-10-09T22:52:27.522Z","1.3.17":"2017-10-12T17:36:37.842Z","1.3.18":"2017-10-24T00:58:26.931Z","1.3.19":"2017-10-26T06:26:24.303Z","1.3.20":"2017-11-07T08:15:54.510Z","1.3.21":"2017-11-09T18:36:02.991Z","1.3.22":"2017-11-09T22:28:36.278Z","1.3.23":"2017-11-15T03:51:13.344Z","1.3.24":"2017-11-27T17:42:36.673Z","1.3.25":"2017-11-28T01:43:45.394Z","1.3.26":"2017-11-28T20:26:19.841Z","1.3.27":"2017-11-28T23:37:36.682Z","1.3.28":"2017-11-29T00:10:06.208Z","1.3.29":"2017-12-10T00:45:43.123Z","1.3.30":"2017-12-13T23:40:39.620Z","1.3.31":"2017-12-14T03:35:19.528Z","2.0.0-alpha.f20ac0ed":"2018-01-11T18:39:33.253Z","2.0.0-alpha.a0a09c94":"2018-01-11T18:48:27.230Z","2.0.0-alpha.b50f2063":"2018-01-11T18:55:28.784Z","2.0.0-alpha.03b9df85":"2018-01-12T14:36:41.128Z","2.0.0-alpha.e9df8e57":"2018-01-12T14:47:50.840Z","2.0.0-alpha.8c822451":"2018-01-12T15:01:17.791Z","2.0.0-alpha.e5586916":"2018-01-12T15:22:51.652Z","2.0.0-alpha.9da1bca1":"2018-01-12T18:08:01.718Z","2.0.0-alpha.aeb05561":"2018-01-18T01:53:25.881Z","2.0.0-alpha.7b47e00d":"2018-01-18T02:10:23.533Z","2.0.0-alpha.f5c1df61":"2018-01-18T17:30:53.835Z","1.3.32":"2018-01-19T13:53:55.222Z","2.0.0-alpha.926cb6da":"2018-01-21T01:42:45.213Z","2.0.0-alpha.3f307d61":"2018-01-21T02:23:26.324Z","1.3.33":"2018-01-23T19:25:18.117Z","2.0.0-alpha.d1544e1b":"2018-01-25T00:14:52.216Z","1.3.34":"2018-01-26T00:07:44.321Z","1.3.35":"2018-02-01T21:23:01.642Z","1.3.36":"2018-02-01T21:51:32.165Z","1.3.37":"2018-02-06T04:00:37.548Z","2.0.0-alpha.53bbd4cd":"2018-02-10T20:35:18.991Z","2.0.0-alpha.2b695217":"2018-02-10T22:37:12.090Z","2.0.0-alpha.32ef58da":"2018-02-11T03:45:12.672Z","2.0.0-alpha.5182142b":"2018-02-11T04:13:15.095Z","1.3.38":"2018-02-13T01:12:24.927Z","2.0.0-alpha.6ab84875":"2018-02-15T02:07:17.116Z","2.0.0-alpha.9d4de2a6":"2018-02-15T20:33:02.215Z","2.0.0-alpha.9e381f74":"2018-02-15T21:13:07.092Z","2.0.0-alpha.dd504153":"2018-02-15T21:30:20.773Z","2.0.0-alpha.b68b7f5c":"2018-02-15T22:01:24.787Z","2.0.0-alpha.bb258cb5":"2018-02-16T00:30:07.689Z","2.0.0-alpha.e28a1c8e":"2018-02-16T01:11:32.821Z","2.0.0-alpha.067e672c":"2018-02-17T02:45:46.031Z","2.0.0-alpha.d0b8dd9e":"2018-02-17T19:05:50.638Z","2.0.0-alpha.2":"2018-02-17T19:31:31.587Z","1.3.39":"2018-02-26T19:15:42.190Z","2.0.0-alpha.e66c6c9c":"2018-02-27T01:25:36.810Z","1.3.40":"2018-02-28T20:40:35.565Z","2.0.0-alpha.2cbec6d6":"2018-03-03T06:47:09.612Z","2.0.0-alpha.3":"2018-03-03T07:24:41.024Z","1.3.41":"2018-03-05T19:55:07.661Z","2.0.0-alpha.f98688ee":"2018-03-07T02:26:15.040Z","2.0.0-alpha.9fe50b00":"2018-03-08T03:04:49.513Z","1.3.42":"2018-03-08T05:23:54.594Z","1.3.43":"2018-03-09T02:59:15.117Z","1.3.44":"2018-03-13T06:17:12.584Z","2.0.0-alpha.4":"2018-03-14T05:23:30.768Z","2.0.0-alpha.34eda94b":"2018-03-17T21:22:44.081Z","2.0.0-alpha.12622d64":"2018-03-18T00:00:49.839Z","2.0.0-alpha.84bd71b4":"2018-03-18T00:40:47.164Z","2.0.0-alpha.6ad61a13":"2018-03-21T17:50:17.935Z","2.0.0-alpha.5f47082e":"2018-03-23T22:48:18.329Z","2.0.0-alpha.5":"2018-03-23T23:19:43.766Z","2.0.0-alpha.95fcd4af":"2018-03-29T02:23:16.319Z","2.0.0-alpha.20252dc3":"2018-03-29T02:45:04.259Z","1.3.45":"2018-04-03T18:31:44.287Z","2.0.0-alpha.4a09f745":"2018-04-05T22:15:20.288Z","2.0.0-alpha.76793cd8":"2018-04-07T22:13:02.440Z","1.3.46":"2018-04-10T01:46:47.851Z","1.3.47":"2018-04-19T16:34:20.100Z","2.0.0-alpha.5c9569c0":"2018-04-19T16:57:58.771Z","2.0.0-alpha.523a4286":"2018-04-19T23:53:08.192Z","2.0.0-alpha.5421f383":"2018-04-20T06:53:52.177Z","2.0.0-alpha.e9c3027b":"2018-04-20T17:57:52.749Z","2.0.0-alpha.6":"2018-04-22T01:55:00.183Z","2.0.0-alpha.7":"2018-04-25T16:26:13.542Z","2.0.0-alpha.8":"2018-04-26T18:20:27.843Z","2.0.0-alpha.9":"2018-04-27T20:12:01.657Z","1.3.48":"2018-04-27T22:13:17.087Z","2.0.0-alpha.10":"2018-05-02T23:03:47.102Z","1.3.49":"2018-05-04T00:17:15.050Z","1.3.50":"2018-05-07T16:13:50.313Z","1.3.51":"2018-05-10T15:20:55.899Z","2.0.0-alpha.11":"2018-05-10T17:35:08.603Z","2.0.0-alpha.12":"2018-05-11T21:44:48.429Z","2.0.0-alpha.14":"2018-05-15T20:13:06.486Z","2.0.0-alpha.15":"2018-05-18T15:36:02.371Z","1.3.52":"2018-05-30T14:58:21.570Z","2.0.0-alpha.16":"2018-05-31T13:11:56.614Z","2.0.0-alpha.17":"2018-05-31T14:19:31.839Z","2.0.0-alpha.18":"2018-05-31T17:20:31.032Z","2.0.0-alpha.19":"2018-06-05T02:17:03.777Z","2.0.0-alpha.20":"2018-06-05T22:53:13.474Z","2.0.0-alpha.21":"2018-06-11T09:58:42.806Z","2.0.0-alpha.22":"2018-06-11T15:26:12.841Z","2.0.0-alpha.23":"2018-06-11T16:56:39.871Z","1.3.53":"2018-06-14T09:04:23.020Z","2.0.0-alpha.24":"2018-06-14T12:39:38.919Z","2.1.0-alpha.e328d33f":"2018-06-16T19:33:44.525Z","2.1.0-alpha.80a21f04":"2018-06-16T19:37:53.216Z","2.0.1-alpha.2":"2018-06-16T23:33:39.542Z","1.3.54":"2018-06-17T01:54:15.454Z","2.0.1-beta.0":"2018-06-17T06:54:16.154Z","2.0.1-beta.1":"2018-06-17T08:13:12.426Z","2.0.1-beta.2":"2018-06-19T05:51:57.922Z","2.0.1-beta.3":"2018-06-20T17:16:06.746Z","2.0.1-beta.4":"2018-06-20T20:46:03.861Z","2.0.1-beta.5":"2018-06-21T17:54:57.135Z","2.0.1-beta.6":"2018-06-23T08:00:45.278Z","2.0.1-beta.7":"2018-06-25T14:20:53.093Z","2.0.1-beta.8":"2018-06-25T20:19:28.363Z","2.0.1-beta.9":"2018-07-06T16:59:37.619Z","2.0.1-beta.10":"2018-07-09T22:12:36.657Z","2.0.1-beta.11":"2018-07-11T02:58:20.326Z","2.0.1-beta.13":"2018-07-13T02:25:31.641Z","2.0.1-beta.14":"2018-07-20T14:48:20.926Z","2.0.1-beta.15":"2018-07-21T16:00:40.704Z","2.0.1-beta.16":"2018-08-14T13:55:29.443Z","2.0.1-beta.17":"2018-08-16T13:11:29.131Z","2.0.1-beta.18":"2018-08-16T14:54:13.980Z","2.0.1-rc.0":"2018-08-21T01:00:05.601Z","2.0.1-rc.1":"2018-08-29T17:08:29.270Z","2.0.1-rc.2":"2018-08-29T18:30:44.416Z","2.0.1-rc.3":"2018-08-31T15:11:46.224Z","2.0.1-rc.4":"2018-09-05T21:23:39.616Z","2.0.1-rc.5":"2018-09-07T22:43:37.770Z","2.0.1-rc.9":"2018-09-11T12:13:19.232Z","2.0.1":"2018-09-17T20:43:38.620Z","2.0.2":"2018-10-03T17:59:00.834Z","2.0.3":"2018-10-10T00:11:29.101Z","2.0.4":"2018-10-16T00:46:01.032Z","2.0.5":"2018-10-23T12:19:13.384Z","2.0.6":"2018-10-24T17:06:01.339Z","2.0.7":"2018-10-29T15:25:13.388Z","2.0.8":"2018-10-29T16:19:23.981Z","2.0.9":"2018-10-29T19:42:39.798Z","2.0.10":"2018-11-01T15:35:34.913Z","2.0.11":"2018-11-05T20:17:31.793Z","2.0.12":"2018-11-06T01:40:13.926Z","2.0.13":"2018-11-08T01:37:09.542Z","2.0.14":"2018-11-12T14:13:48.627Z","2.0.15":"2018-11-21T13:14:41.054Z","2.0.16":"2018-11-29T12:18:44.120Z","2.0.17":"2018-12-03T16:48:57.978Z","2.0.18":"2018-12-05T14:13:55.749Z","2.0.19":"2018-12-07T16:15:02.312Z","2.0.20":"2018-12-11T11:25:33.535Z","2.0.21":"2018-12-21T13:06:46.059Z","2.0.22":"2018-12-27T16:26:16.373Z","2.0.23":"2019-01-09T17:20:27.862Z","2.0.24":"2019-01-11T18:48:45.346Z","2.0.26":"2019-01-11T19:06:25.993Z","2.0.28":"2019-01-29T15:20:05.606Z","2.0.29":"2019-02-01T12:26:07.177Z","2.0.30":"2019-02-19T18:49:35.475Z","2.0.31":"2019-02-22T13:42:22.662Z","2.0.32":"2019-02-22T14:59:47.295Z","2.0.33":"2019-02-28T11:32:38.299Z","2.0.34-alpha.0":"2019-03-04T07:14:26.701Z","2.0.34":"2019-03-04T09:43:54.765Z","2.0.35":"2019-03-05T21:30:39.072Z","2.0.36":"2019-03-11T13:49:48.823Z","2.0.37":"2019-03-11T15:25:58.334Z","2.0.38":"2019-03-12T20:23:24.260Z","2.0.39":"2019-03-15T15:58:21.156Z","2.0.40":"2019-03-18T21:22:35.019Z","2.0.41":"2019-03-20T14:43:27.198Z","2.0.42":"2019-03-22T13:36:14.672Z","2.0.43":"2019-03-25T15:27:11.999Z","2.0.44":"2019-03-25T20:39:59.912Z","2.0.45":"2019-03-27T14:04:56.497Z","2.0.46":"2019-04-08T11:06:54.990Z","2.0.47":"2019-04-09T22:46:03.111Z","2.0.48":"2019-04-11T20:43:23.595Z","2.0.49":"2019-04-15T14:37:50.866Z","2.0.50":"2019-04-17T01:41:03.652Z","2.0.51":"2019-04-23T12:30:53.107Z","2.0.52":"2019-04-23T13:36:56.384Z","2.0.53":"2019-04-24T17:08:11.273Z","2.0.54":"2019-04-30T07:05:59.440Z","2.0.55":"2019-05-03T13:05:38.211Z","2.0.56":"2019-05-09T21:19:56.647Z","2.0.57":"2019-05-14T20:03:38.760Z","2.0.58":"2019-05-15T10:53:54.792Z","2.0.59":"2019-05-16T19:29:35.960Z","2.0.60":"2019-05-18T01:48:02.906Z","2.0.61":"2019-05-20T17:47:42.682Z","2.0.43-schema-types.18":"2019-05-21T02:21:34.746Z","2.0.62":"2019-05-23T15:33:39.890Z","2.0.63":"2019-05-24T22:13:00.495Z","2.0.64":"2019-05-29T11:53:00.327Z","2.0.65":"2019-05-29T18:22:29.512Z","2.0.66":"2019-05-31T07:41:48.535Z","2.0.67":"2019-05-31T18:23:00.640Z","2.0.68":"2019-06-10T11:09:14.566Z","2.0.69":"2019-06-10T15:38:05.439Z","2.0.70":"2019-06-12T11:10:28.109Z","2.0.71":"2019-06-12T23:02:16.026Z","2.0.72":"2019-06-18T12:41:44.391Z","2.0.73-cloud-image-sharp.6":"2019-06-18T18:24:02.477Z","2.0.73-cloud-image-sharp.7":"2019-06-18T18:39:31.926Z","2.0.73-reporter-npm.9":"2019-06-18T20:12:52.597Z","2.0.73":"2019-06-18T20:53:53.794Z","2.0.74-reporter-npm.8":"2019-06-19T08:22:12.974Z","2.0.74":"2019-06-19T09:38:38.595Z","2.0.75":"2019-06-19T10:16:27.009Z","2.1.0":"2019-06-20T13:50:46.775Z","2.1.1":"2019-06-21T08:59:18.350Z","2.1.2":"2019-06-24T10:31:53.288Z","2.1.3":"2019-06-25T08:42:43.104Z","2.1.2-rich-text-resolve.18":"2019-06-26T08:39:28.325Z"},"tags":{"latest":"2.1.3","schema-types":"2.0.43-schema-types.18","cloud-image-sharp":"2.0.73-cloud-image-sharp.7","reporter-npm":"2.0.74-reporter-npm.8","rich-text-resolve":"2.1.2-rich-text-resolve.18"},"description":"Gatsby source plugin for building websites using the Contentful CMS as a data source","dependencies":{"@babel/runtime":"^7.0.0","@hapi/joi":"^14.0.0","axios":"^0.19.0","base64-img":"^1.0.3","bluebird":"^3.5.0","chalk":"^2.3.2","contentful":"^6.1.0","deep-map":"^1.5.0","fs-extra":"^4.0.2","gatsby-plugin-sharp":"^2.2.1","gatsby-source-filesystem":"^2.1.1","is-online":"^7.0.0","json-stringify-safe":"^5.0.1","lodash":"^4.17.10","qs":"^6.4.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-source-contentful","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-source-contentful","head":"3e8578c97862d1715045b289ab118f6653b7feb9","branch":"3e8578c97862d1715045b289ab118f6653b7feb9"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-source-contentful","head":"3e8578c97862d1715045b289ab118f6653b7feb9"},"gitHead":"3e8578c97862d1715045b289ab118f6653b7feb9","readme":"","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","gatsby-source-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1496457414231,"modified":1561538371132,"lastPublisher":{"name":"wardpeet","email":"ward@coding-tech.com","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-26T08:39:34.367Z","_searchInternal":{"concatenatedName":"gatsbysourcecontentful","alternativeNames":["gatsbysourcecontentful","gatsby source contentful","gatsby-source-contentful"],"downloadsMagnitude":6,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-source-contentful/CHANGELOG.md","jsDelivrHits":0,"objectID":"gatsby-source-contentful","_highlightResult":{"name":{"value":"gatsby-source-contentful","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby source plugin for building websites using the Contentful CMS as a data source","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"gatsby-source-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbysourcecontentful","matchLevel":"none","matchedWords":[]},{"value":"gatsby source contentful","matchLevel":"none","matchedWords":[]},{"value":"gatsby-source-contentful","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-remark-copy-linked-files","downloadsLast30Days":116269,"downloadsRatio":0.000254758560062721,"humanDownloadsLast30Days":"116.3k","popular":false,"version":"2.1.0","versions":{"1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:09.790Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:45.333Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:32:17.640Z","1.0.0-alpha14":"2017-05-06T01:18:16.887Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:09.017Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:08.867Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:10.961Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:44:08.871Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:55:09.498Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:12:04.855Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:35.726Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:34:05.977Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:29.067Z","1.0.0-alpha15":"2017-05-16T09:12:46.929Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:36.576Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:30:02.550Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:43.991Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:22:09.039Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:41.171Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:33.279Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:29:55.860Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:06:00.734Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:27:11.756Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:42:56.029Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:40:07.436Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:48.246Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:47:47.528Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:24.613Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:25.659Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:37:55.993Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:16:52.358Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:36.699Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:48.471Z","1.0.0-alpha17":"2017-06-02T18:44:59.192Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:50.978Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:38:02.502Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:39:09.838Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:34:04.790Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:24.864Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:52:07.713Z","1.0.0-alpha.22":"2017-06-08T04:28:01.214Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:14.893Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:31.209Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:51.945Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:25.644Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:26:02.711Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:07:37.789Z","1.0.0-alpha.23":"2017-06-14T00:30:14.956Z","1.0.0-beta.1":"2017-06-15T20:25:58.714Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:23.046Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:32.627Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:42.316Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:36:03.226Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:20.679Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:44.129Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:52.414Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:08.952Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:56.978Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:44.867Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:49.047Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:46.481Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:25.089Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:32.089Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:10.334Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:22:02.186Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:26.707Z","1.0.0-beta.6":"2017-07-02T06:43:09.508Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:41:00.775Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:41.926Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:40.283Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:14.554Z","1.0.0":"2017-07-06T19:43:36.273Z","1.0.1":"2017-07-06T19:49:03.394Z","1.3.0":"2017-07-19T06:31:55.120Z","1.4.1":"2017-07-26T17:33:57.394Z","1.5.0":"2017-07-27T19:27:40.086Z","1.5.1":"2017-08-11T14:03:19.608Z","1.5.2":"2017-08-19T01:52:36.439Z","1.6.0-alpha.22c8a6f1":"2017-08-24T16:12:33.442Z","2.0.0":"2017-08-25T18:07:04.968Z","1.5.3":"2017-08-25T18:21:58.531Z","1.5.4":"2017-08-29T00:05:49.052Z","1.5.5":"2017-08-30T22:58:45.493Z","1.5.6":"2017-08-31T23:41:51.982Z","1.5.7":"2017-09-01T23:27:16.730Z","1.6.0-alpha.76b32701":"2017-09-15T18:01:39.456Z","1.6.0-alpha.93f2e2a2":"2017-09-16T11:50:42.649Z","1.6.0-alpha.5db7a275":"2017-09-16T13:46:34.211Z","1.6.0-alpha.1460dad9":"2017-09-18T12:29:20.609Z","1.5.8":"2017-10-12T22:38:36.534Z","1.5.9":"2017-10-17T01:53:07.605Z","1.5.10":"2017-10-20T20:00:48.760Z","1.5.11":"2017-10-24T00:58:24.811Z","1.5.12":"2017-10-25T19:43:24.453Z","1.5.13":"2017-10-25T20:59:25.366Z","1.5.14":"2017-10-26T06:26:17.559Z","1.5.15":"2017-10-30T23:07:42.197Z","1.5.16":"2017-11-01T16:46:58.371Z","1.5.17":"2017-11-09T00:53:33.221Z","1.5.18":"2017-11-09T17:33:37.703Z","1.5.19":"2017-11-10T18:58:25.144Z","1.5.20":"2017-11-10T21:17:09.088Z","1.5.21":"2017-11-13T18:39:19.029Z","1.5.22":"2017-11-29T00:09:55.713Z","1.5.23":"2017-12-10T00:45:38.085Z","1.5.24":"2017-12-15T03:07:26.559Z","1.5.25":"2017-12-20T23:26:02.580Z","1.6.0-alpha.f20ac0ed":"2018-01-11T18:39:22.031Z","1.6.0-alpha.a0a09c94":"2018-01-11T18:48:14.362Z","1.6.0-alpha.b50f2063":"2018-01-11T18:55:19.654Z","1.6.0-alpha.03b9df85":"2018-01-12T14:36:30.321Z","1.6.0-alpha.e9df8e57":"2018-01-12T14:47:43.204Z","1.6.0-alpha.8c822451":"2018-01-12T15:01:08.834Z","1.6.0-alpha.e5586916":"2018-01-12T15:22:44.387Z","1.6.0-alpha.9da1bca1":"2018-01-12T18:07:48.927Z","1.6.0-alpha.aeb05561":"2018-01-18T01:53:18.180Z","1.6.0-alpha.7b47e00d":"2018-01-18T02:10:16.584Z","1.6.0-alpha.f5c1df61":"2018-01-18T17:30:46.181Z","1.6.0-alpha.926cb6da":"2018-01-21T01:42:33.252Z","1.6.0-alpha.3f307d61":"2018-01-21T02:23:15.886Z","1.6.0-alpha.d1544e1b":"2018-01-25T00:14:41.576Z","1.5.26":"2018-02-05T16:30:28.380Z","1.6.0-alpha.53bbd4cd":"2018-02-10T20:35:09.089Z","1.6.0-alpha.2b695217":"2018-02-10T22:37:05.400Z","1.6.0-alpha.32ef58da":"2018-02-11T03:45:03.598Z","1.6.0-alpha.5182142b":"2018-02-11T04:13:01.178Z","1.5.27":"2018-02-13T01:12:19.304Z","1.6.0-alpha.6ab84875":"2018-02-15T02:07:09.744Z","1.6.0-alpha.9d4de2a6":"2018-02-15T20:32:50.120Z","1.6.0-alpha.9e381f74":"2018-02-15T21:12:58.151Z","1.6.0-alpha.dd504153":"2018-02-15T21:30:08.140Z","1.6.0-alpha.b68b7f5c":"2018-02-15T22:01:10.135Z","1.6.0-alpha.bb258cb5":"2018-02-16T00:29:59.128Z","1.6.0-alpha.e28a1c8e":"2018-02-16T01:11:26.682Z","1.6.0-alpha.067e672c":"2018-02-17T02:45:38.857Z","1.6.0-alpha.d0b8dd9e":"2018-02-17T19:05:34.753Z","1.5.28-0":"2018-02-17T19:31:23.206Z","1.5.28":"2018-02-22T23:37:13.876Z","1.6.0-alpha.e66c6c9c":"2018-02-27T01:25:24.423Z","1.5.29":"2018-02-28T20:40:26.291Z","1.5.30":"2018-03-02T19:54:41.493Z","1.6.0-alpha.2cbec6d6":"2018-03-03T06:47:00.242Z","1.5.28-1":"2018-03-03T07:24:27.769Z","1.6.0-alpha.f98688ee":"2018-03-07T02:26:07.968Z","1.6.0-alpha.9fe50b00":"2018-03-08T03:04:43.934Z","1.6.0-alpha.34eda94b":"2018-03-17T21:22:36.217Z","1.6.0-alpha.12622d64":"2018-03-18T00:00:42.186Z","1.6.0-alpha.84bd71b4":"2018-03-18T00:40:36.840Z","1.6.0-alpha.6ad61a13":"2018-03-21T17:50:02.827Z","1.6.0-alpha.5f47082e":"2018-03-23T22:48:11.079Z","1.5.28-2":"2018-03-23T23:19:34.546Z","1.6.0-alpha.95fcd4af":"2018-03-29T02:23:07.362Z","1.6.0-alpha.20252dc3":"2018-03-29T02:44:52.198Z","1.5.31":"2018-04-05T18:37:16.074Z","1.6.0-alpha.4a09f745":"2018-04-05T22:15:12.544Z","1.6.0-alpha.76793cd8":"2018-04-07T22:12:50.880Z","1.5.32":"2018-04-19T16:34:13.789Z","1.6.0-alpha.5c9569c0":"2018-04-19T16:57:41.980Z","1.6.0-alpha.523a4286":"2018-04-19T23:52:52.695Z","1.6.0-alpha.5421f383":"2018-04-20T06:53:36.853Z","1.6.0-alpha.e9c3027b":"2018-04-20T17:57:39.704Z","1.5.28-3":"2018-04-22T01:54:41.443Z","1.5.28-4":"2018-04-25T16:26:02.017Z","1.5.28-5":"2018-04-26T18:20:14.663Z","1.5.28-6":"2018-05-11T21:44:35.138Z","1.5.28-8":"2018-05-15T20:28:42.933Z","1.5.33":"2018-05-31T12:38:38.614Z","1.5.28-9":"2018-05-31T14:06:16.401Z","1.5.28-10":"2018-05-31T17:19:12.709Z","1.5.34":"2018-05-31T18:46:16.096Z","1.5.35":"2018-06-01T17:16:26.533Z","1.5.28-11":"2018-06-11T15:25:53.989Z","1.5.28-12":"2018-06-11T16:56:02.571Z","1.5.36":"2018-06-14T09:04:26.444Z","1.5.28-13":"2018-06-14T12:39:36.682Z","2.0.0-alpha.e328d33f":"2018-06-16T19:33:24.195Z","2.0.0-alpha.80a21f04":"2018-06-16T19:37:38.377Z","2.0.0-alpha.2":"2018-06-16T23:33:22.136Z","1.5.37":"2018-06-17T01:53:20.337Z","2.0.0-beta.0":"2018-06-17T06:54:08.365Z","2.0.0-beta.1":"2018-06-17T08:13:07.120Z","2.0.0-beta.2":"2018-06-20T20:45:41.322Z","2.0.0-beta.3":"2018-07-21T16:00:20.365Z","2.0.0-rc.0":"2018-08-21T00:59:10.627Z","2.0.0-rc.1":"2018-08-29T18:29:29.591Z","2.0.0-rc.3":"2018-09-11T10:49:03.260Z","2.0.0-rc.4":"2018-09-11T11:23:14.195Z","2.0.0-rc.5":"2018-09-11T12:12:22.982Z","2.0.5":"2018-09-17T20:42:38.145Z","2.0.6":"2018-10-29T15:24:31.326Z","2.0.7":"2018-11-29T12:14:23.369Z","2.0.8":"2018-12-17T13:43:42.205Z","2.0.9":"2019-02-01T12:25:30.408Z","2.0.10":"2019-03-11T15:25:07.974Z","2.0.11":"2019-03-15T15:57:56.781Z","2.0.12":"2019-04-23T20:57:34.740Z","2.0.13":"2019-05-29T16:55:42.870Z","2.1.0":"2019-06-20T13:49:27.741Z"},"tags":{"latest":"2.1.0"},"description":"Find files which are linked to from markdown and copy them to the public directory","dependencies":{"@babel/runtime":"^7.0.0","cheerio":"^1.0.0-rc.2","fs-extra":"^4.0.1","is-relative-url":"^2.0.0","lodash":"^4.17.10","path-is-inside":"^1.0.2","probe-image-size":"^4.0.0","unist-util-visit":"^1.3.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4","remark":"^10.0.1","remark-mdx":"^1.0.14","semver":"^6.0.0"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-remark-copy-linked-files","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-remark-copy-linked-files","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-remark-copy-linked-files","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-remark-copy-linked-files\n\nCopies local files linked to/from markdown to your `public` folder.\n\n## Install\n\n`npm install --save gatsby-remark-copy-linked-files`\n\n## How to use\n\n#### Basic usage\n\n```javascript\n// In your gatsby-config.js\nplugins: [\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [\"gatsby-remark-copy-linked-files\"],\n },\n },\n]\n```\n\n### How to change the directory the files are added to.\n\nBy default, all files will be copied to the root of the `public` dir, but you\ncan choose a different location using the `destinationDir` option. Provide a\npath, relative to the `public` directory. The path must be within the public\ndirectory, so `path/to/dir` is fine, but `../../dir` is not.\n\n```\n// In your gatsby-config.js\nplugins: [\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [\n {\n resolve: 'gatsby-remark-copy-linked-files',\n options: {\n destinationDir: 'path/to/dir',\n }\n }\n ]\n }\n }\n]\n```\n\n### How to override which file types are ignored\n\n```javascript\n// In your gatsby-config.js\nplugins: [\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [\n {\n resolve: \"gatsby-remark-copy-linked-files\",\n options: {\n // `ignoreFileExtensions` defaults to [`png`, `jpg`, `jpeg`, `bmp`, `tiff`]\n // as we assume you'll use gatsby-remark-images to handle\n // images in markdown as it automatically creates responsive\n // versions of images.\n //\n // If you'd like to not use gatsby-remark-images and just copy your\n // original images to the public directory, set\n // `ignoreFileExtensions` to an empty array.\n ignoreFileExtensions: [],\n },\n },\n ],\n },\n },\n]\n```\n\nThen in your Markdown files, link to the file you desire to reference.\n\nE.g.\n\n```markdown\n---\ntitle: My awesome blog post\n---\n\nHey everyone, I just made a sweet PDF with lots of interesting stuff in it.\n\n[Download it now](my-awesome-pdf.pdf)\n```\n\n`my-awesome-pdf.pdf` should be in the same directory as the markdown file. When\nyou build your site, the file will be copied to the `public` folder and the\nmarkdown HTML will be modified to point to it.\n\n### Supported Markdown tags\n\n- img\n- link\n\n### Supported HTML tags\n\n- `<img />`\n- `<video />`\n- `<audio />`\n- `<a />`\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","prismjs","remark"],"computedKeywords":[],"computedMetadata":{},"created":1494008769790,"modified":1561038574924,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:17.074Z","_searchInternal":{"concatenatedName":"gatsbyremarkcopylinkedfiles","alternativeNames":["gatsbyremarkcopylinkedfiles","gatsby remark copy linked files","gatsby-remark-copy-linked-files"],"downloadsMagnitude":6,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-remark-copy-linked-files/CHANGELOG.md","jsDelivrHits":33,"objectID":"gatsby-remark-copy-linked-files","_highlightResult":{"name":{"value":"gatsby-remark-copy-linked-files","matchLevel":"none","matchedWords":[]},"description":{"value":"Find files which are linked to from markdown and copy them to the public directory","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"prismjs","matchLevel":"none","matchedWords":[]},{"value":"remark","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyremarkcopylinkedfiles","matchLevel":"none","matchedWords":[]},{"value":"gatsby remark copy linked files","matchLevel":"none","matchedWords":[]},{"value":"gatsby-remark-copy-linked-files","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-typescript","downloadsLast30Days":115170,"downloadsRatio":0.0002523505264724352,"humanDownloadsLast30Days":"115.2k","popular":false,"version":"2.1.0","versions":{"1.0.0-alpha12-alpha.545e4a03":"2017-03-21T22:09:16.491Z","1.0.0-alpha12-alpha.4f30010e":"2017-03-21T22:12:22.950Z","1.0.0-alpha12-alpha.e1f27e45":"2017-03-23T18:18:32.589Z","1.0.0-alpha12-alpha.d37d5d32":"2017-03-24T23:55:59.398Z","1.0.0-alpha12-alpha.81355cc0":"2017-03-27T16:11:56.764Z","1.0.0-alpha12-alpha.dbf1a599":"2017-03-27T16:28:40.320Z","1.0.0-alpha12-alpha.10141fd4":"2017-03-27T17:58:57.205Z","1.0.0-alpha12-alpha.6e55cfe7":"2017-03-27T18:40:03.446Z","1.0.0-alpha12-alpha.d7d6ef64":"2017-03-27T22:38:24.910Z","1.0.0-alpha12-alpha.dffeaa1f":"2017-03-28T13:15:13.281Z","1.0.0-alpha12-alpha.c155b956":"2017-03-28T13:39:28.626Z","1.0.0-alpha12-alpha.80e93d69":"2017-03-28T14:40:15.377Z","1.0.0-alpha12-alpha.4e93d2cf":"2017-03-28T19:06:32.211Z","1.0.0-alpha12-alpha.351006cf":"2017-03-28T22:13:20.184Z","1.0.0-alpha12-alpha.0b4b912a":"2017-04-10T22:34:12.165Z","1.0.0-alpha12-alpha.1fdb9004":"2017-04-11T00:38:28.864Z","1.0.0-alpha12-alpha.51e1923f":"2017-04-18T18:41:28.621Z","1.0.0-alpha12-alpha.571b4bbd":"2017-04-19T00:37:16.457Z","1.0.0-alpha12-alpha.c0bba969":"2017-04-19T20:36:12.502Z","1.0.0-alpha12-alpha.89d880ee":"2017-04-21T00:30:44.546Z","1.0.0-alpha12-alpha.b66dd8d3":"2017-04-21T00:37:30.678Z","1.0.0-alpha12-alpha.577b9e82":"2017-04-22T00:34:43.586Z","1.0.0-alpha12-alpha.8370739a":"2017-04-23T03:15:43.717Z","1.0.0-alpha13":"2017-04-24T22:09:21.357Z","1.0.0-alpha13-alpha.c6e3cbb2":"2017-04-26T19:36:57.589Z","1.0.0-alpha13-alpha.91dbde54":"2017-04-26T21:08:53.627Z","1.0.0-alpha13-alpha.ec011f40":"2017-04-27T00:58:07.457Z","1.0.0-alpha13-alpha.537d11c6":"2017-04-27T04:11:30.203Z","1.0.0-alpha13-alpha.0189ea42":"2017-04-28T22:29:29.748Z","1.0.0-alpha13-alpha.215cabc2":"2017-05-01T23:02:07.209Z","1.0.0-alpha13-alpha.526805ab":"2017-05-03T22:17:32.925Z","1.0.0-alpha13-alpha.0f0222b8":"2017-05-04T16:09:22.257Z","1.0.0-alpha13-alpha.7d186994":"2017-05-04T16:29:46.845Z","1.0.0-alpha13-alpha.a3ef328b":"2017-05-04T19:51:57.778Z","1.0.0-alpha13-alpha.84bd4b24":"2017-05-04T20:33:26.754Z","1.0.0-alpha13-alpha.7efda7f0":"2017-05-04T23:03:13.922Z","1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:12.047Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:42.373Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:32:15.296Z","1.0.0-alpha14":"2017-05-06T01:18:14.521Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:04.730Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:08.713Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:12.567Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:44:05.848Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:55:05.473Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:12:03.180Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:35.302Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:34:08.737Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:31.549Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:30.440Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:29:59.302Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:39.932Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:22:04.750Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:40.618Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:33.041Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:29:55.690Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:05:58.398Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:27:11.497Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:42:53.869Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:40:05.635Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:48.200Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:47:47.535Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:24.814Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:24.739Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:37:54.076Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:16:50.248Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:35.026Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:47.776Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:47.846Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:38:01.361Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:39:07.044Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:34:01.802Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:24.762Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:52:07.539Z","1.0.0-alpha.22":"2017-06-08T04:28:00.940Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:13.406Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:29.180Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:49.364Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:24.922Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:26:00.948Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:07:34.796Z","1.0.0-beta.1":"2017-06-15T20:25:56.376Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:21.179Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:30.295Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:38.860Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:36:00.398Z","1.0.0-beta.3":"2017-06-21T18:04:51.830Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:20.709Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:40.362Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:50.179Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:06.335Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:55.554Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:43.241Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:48.147Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:44.654Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:24.451Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:30.229Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:09.231Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:22:01.463Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:25.966Z","1.0.0-beta.6":"2017-07-02T06:43:07.755Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:40:58.556Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:41.103Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:40.285Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:14.932Z","1.0.0":"2017-07-06T19:43:34.797Z","1.0.1":"2017-07-06T19:49:00.919Z","1.4.1":"2017-07-26T17:33:57.386Z","1.4.2":"2017-08-11T14:03:15.522Z","1.4.3":"2017-08-11T20:03:01.723Z","1.4.4":"2017-08-19T01:52:36.266Z","1.5.0-alpha.22c8a6f1":"2017-08-24T16:12:31.287Z","1.4.5":"2017-08-25T18:21:56.294Z","2.0.0-alpha.0":"2017-08-28T16:38:21.362Z","1.4.6":"2017-08-29T22:42:45.598Z","1.4.7":"2017-08-30T22:58:45.505Z","1.4.8":"2017-08-31T23:41:44.293Z","1.5.0-alpha.76b32701":"2017-09-15T18:01:28.405Z","1.5.0-alpha.93f2e2a2":"2017-09-16T11:50:31.884Z","1.5.0-alpha.5db7a275":"2017-09-16T13:46:24.392Z","1.5.0-alpha.1460dad9":"2017-09-18T12:29:11.267Z","1.4.9":"2017-11-03T17:08:35.197Z","1.4.10":"2017-11-04T03:38:00.443Z","1.4.11":"2017-11-29T00:09:48.079Z","1.4.12":"2017-12-10T00:45:34.784Z","2.0.0-alpha.f20ac0ed":"2018-01-11T18:40:01.598Z","2.0.0-alpha.a0a09c94":"2018-01-11T18:49:03.391Z","2.0.0-alpha.b50f2063":"2018-01-11T18:55:54.794Z","2.0.0-alpha.03b9df85":"2018-01-12T14:37:15.663Z","2.0.0-alpha.e9df8e57":"2018-01-12T14:48:27.489Z","2.0.0-alpha.8c822451":"2018-01-12T15:01:44.007Z","2.0.0-alpha.e5586916":"2018-01-12T15:23:23.582Z","2.0.0-alpha.9da1bca1":"2018-01-12T18:08:47.525Z","2.0.0-alpha.aeb05561":"2018-01-18T01:53:56.504Z","2.0.0-alpha.7b47e00d":"2018-01-18T02:10:50.725Z","2.0.0-alpha.f5c1df61":"2018-01-18T17:31:32.733Z","2.0.0-alpha.926cb6da":"2018-01-21T01:43:21.351Z","2.0.0-alpha.3f307d61":"2018-01-21T02:23:59.337Z","1.4.13":"2018-01-23T19:19:15.196Z","2.0.0-alpha.d1544e1b":"2018-01-25T00:15:23.773Z","1.4.14":"2018-01-25T22:22:59.949Z","1.4.15":"2018-01-26T00:07:42.687Z","2.0.0-alpha.53bbd4cd":"2018-02-10T20:35:53.164Z","2.0.0-alpha.2b695217":"2018-02-10T22:37:41.321Z","2.0.0-alpha.32ef58da":"2018-02-11T03:45:42.746Z","2.0.0-alpha.5182142b":"2018-02-11T04:13:44.589Z","1.4.16":"2018-02-13T01:12:12.028Z","2.0.0-alpha.6ab84875":"2018-02-15T02:07:53.484Z","1.5.0-alpha.9d4de2a6":"2018-02-15T20:33:35.870Z","1.5.0-alpha.dd504153":"2018-02-15T21:30:59.035Z","1.5.0-alpha.b68b7f5c":"2018-02-15T22:02:00.517Z","1.5.0-alpha.bb258cb5":"2018-02-16T00:30:37.170Z","1.5.0-alpha.e28a1c8e":"2018-02-16T01:12:04.471Z","1.5.0-alpha.067e672c":"2018-02-17T02:46:17.899Z","1.5.0-alpha.d0b8dd9e":"2018-02-17T19:06:35.334Z","1.4.17-0":"2018-02-17T19:32:01.710Z","1.5.0-alpha.e66c6c9c":"2018-02-27T01:26:35.485Z","1.4.17":"2018-02-28T20:40:16.616Z","1.5.0-alpha.2cbec6d6":"2018-03-03T06:47:43.495Z","1.4.17-1":"2018-03-03T07:25:32.673Z","1.5.0-alpha.f98688ee":"2018-03-07T02:26:46.015Z","1.4.17-2":"2018-03-07T02:34:46.102Z","1.4.18":"2018-03-07T18:06:33.246Z","1.5.0-alpha.9fe50b00":"2018-03-08T03:05:17.826Z","1.5.0-alpha.34eda94b":"2018-03-17T21:23:17.971Z","1.5.0-alpha.12622d64":"2018-03-18T00:01:34.548Z","1.5.0-alpha.84bd71b4":"2018-03-18T00:41:36.973Z","1.5.0-alpha.6ad61a13":"2018-03-21T17:51:09.130Z","1.5.0-alpha.5f47082e":"2018-03-23T22:49:10.669Z","1.4.17-3":"2018-03-23T23:20:25.408Z","1.4.19":"2018-03-24T17:45:49.149Z","1.5.0-alpha.95fcd4af":"2018-03-29T02:24:23.385Z","1.5.0-alpha.20252dc3":"2018-03-29T02:46:07.387Z","1.5.0-alpha.4a09f745":"2018-04-05T22:15:50.183Z","1.5.0-alpha.76793cd8":"2018-04-07T22:13:40.821Z","1.4.20":"2018-04-19T16:33:43.323Z","1.5.0-alpha.5c9569c0":"2018-04-19T16:58:53.764Z","1.5.0-alpha.523a4286":"2018-04-19T23:54:13.966Z","1.5.0-alpha.5421f383":"2018-04-20T06:55:00.651Z","1.5.0-alpha.e9c3027b":"2018-04-20T17:59:09.331Z","1.4.17-4":"2018-04-22T01:56:14.503Z","1.4.17-5":"2018-04-25T16:27:12.733Z","1.4.17-6":"2018-04-26T18:20:04.616Z","1.4.17-9":"2018-05-15T20:30:06.546Z","1.4.17-11":"2018-05-31T17:18:28.878Z","2.0.0-alpha.2":"2018-06-06T22:19:04.725Z","2.0.0-alpha.3":"2018-06-11T09:59:34.270Z","2.0.0-alpha.4":"2018-06-11T15:27:53.267Z","2.0.0-alpha.5":"2018-06-11T16:58:21.730Z","2.0.0-alpha.80a21f04":"2018-06-16T19:38:38.459Z","2.0.0-alpha.7":"2018-06-16T23:34:42.574Z","2.0.0-beta.0":"2018-06-17T06:54:36.516Z","2.0.0-beta.1":"2018-06-17T08:13:32.340Z","2.0.0-beta.2":"2018-06-20T20:46:03.737Z","2.0.0-beta.3":"2018-06-21T17:55:00.519Z","2.0.0-beta.4":"2018-06-21T20:50:36.460Z","2.0.0-beta.5":"2018-07-02T10:22:15.984Z","2.0.0-beta.6":"2018-07-18T14:11:35.414Z","2.0.0-beta.7":"2018-07-21T16:00:40.684Z","2.0.0-beta.8":"2018-07-31T14:24:37.683Z","2.0.0-beta.9":"2018-07-31T20:21:15.365Z","2.0.0-beta.10":"2018-08-20T19:52:52.825Z","2.0.0-rc.0":"2018-08-21T01:00:05.570Z","2.0.0-rc.1":"2018-08-21T18:52:08.659Z","2.0.0-rc.2":"2018-08-29T18:30:44.521Z","2.0.0-rc.3":"2018-08-29T22:29:58.975Z","2.0.0-rc.4":"2018-09-05T21:23:44.192Z","2.0.0-rc.5":"2018-09-08T22:08:07.466Z","2.0.0-rc.6":"2018-09-13T17:49:08.628Z","2.0.0":"2018-09-17T20:43:36.761Z","2.0.1":"2018-10-29T15:25:13.281Z","2.0.2":"2018-11-29T12:15:30.833Z","2.0.3":"2018-12-05T14:13:55.358Z","2.0.4":"2019-01-28T18:20:27.258Z","2.0.5":"2019-02-01T10:24:45.521Z","2.0.6":"2019-02-01T12:25:24.982Z","2.0.7":"2019-02-04T23:35:39.948Z","2.0.8":"2019-02-13T19:05:32.635Z","2.0.9":"2019-02-22T14:59:46.335Z","2.0.10-alpha.0":"2019-03-04T07:14:26.490Z","2.0.10":"2019-03-04T09:43:49.110Z","2.0.11":"2019-03-11T15:25:58.180Z","2.0.12":"2019-04-02T17:00:06.445Z","2.0.13":"2019-04-23T12:30:36.974Z","2.0.14":"2019-05-16T18:28:32.099Z","2.0.15":"2019-05-24T22:12:56.570Z","2.1.0":"2019-06-20T13:50:46.794Z"},"tags":{"latest":"2.1.0"},"description":"Adds TypeScript support to Gatsby","dependencies":{"@babel/preset-typescript":"^7.0.0","@babel/runtime":"^7.0.0","babel-plugin-remove-graphql-queries":"^2.7.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-typescript","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-typescript","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-typescript","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-typescript\n\nProvides drop-in support for TypeScript and TSX.\n\n## Install\n\n`npm install gatsby-plugin-typescript`\n\n## How to use\n\n1. Include the plugin in your `gatsby-config.js` file.\n1. Write your components in TSX or TypeScript.\n1. You're good to go.\n\n`gatsby-config.js`\n\n```javascript\nmodule.exports = {\n // ...,\n plugins: [...`gatsby-plugin-typescript`],\n}\n```\n\n_**Please note**: If packages don't ship with TypeScript definitions you'll need to manually install those type definitions, e.g. for React. A typical Gatsby project would need: `npm install --save-dev @types/react @types/react-dom @types/node.`_\n\n## Options\n\nWhen adding this plugin to your `gatsby-config.js`, you can pass in options to override the default [@babel/preset-typescript](https://babeljs.io/docs/en/babel-preset-typescript#options) config.\n\n```javascript\n// gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-typescript`,\n options: {\n isTSX: true, // defaults to false\n jsxPragma: `jsx`, // defaults to \"React\"\n allExtensions: true, // defaults to false\n },\n },\n ],\n}\n```\n\nFor more detailed documentation on the available options, visit https://babeljs.io/docs/en/babel-preset-typescript#options.\n\n## Caveats\n\nThis plugin uses [`babel-plugin-transform-typescript`](https://babeljs.io/docs/en/babel-plugin-transform-typescript.html)\nto transpile TypeScript. It does _not do type checking_. Also since the TypeScript\ncompiler is not involved, the following applies:\n\n> Does not support namespaces.\n> Workaround: Move to using file exports, or\n> migrate to using the module { } syntax instead.\n>\n> Does not support const enums because those require\n> type information to compile. Workaround: Remove the\n> const, which makes it available at runtime.\n>\n> Does not support export = and import =, because those\n> cannot be compiled to ES.next. Workaround: Convert\n> to using export default and export const,\n> and import x, {y} from \"z\".\n\nhttps://babeljs.io/docs/en/babel-plugin-transform-typescript.html\n\n## Type checking\n\nFirst of all you should set up your IDE so that type errors are surfaced.\nVisual Studio Code is very good in this regard.\n\nIn addition, you can see the instructions in [TypeScript-Babel-Starter](https://github.com/Microsoft/TypeScript-Babel-Starter)\nfor setting up a `type-check` task.\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","typescript"],"computedKeywords":[],"computedMetadata":{},"created":1490134156491,"modified":1561038649966,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:06.925Z","_searchInternal":{"concatenatedName":"gatsbyplugintypescript","alternativeNames":["gatsbyplugintypescript","gatsby plugin typescript","gatsby-plugin-typescript"],"downloadsMagnitude":6,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-typescript/CHANGELOG.md","jsDelivrHits":2,"objectID":"gatsby-plugin-typescript","_highlightResult":{"name":{"value":"gatsby-plugin-typescript","matchLevel":"none","matchedWords":[]},"description":{"value":"Adds TypeScript support to Gatsby","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"typescript","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyplugintypescript","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin typescript","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-typescript","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-google-tagmanager","downloadsLast30Days":112958,"downloadsRatio":0.0002475037837047264,"humanDownloadsLast30Days":"113k","popular":false,"version":"2.1.0","versions":{"1.0.0-beta.3":"2017-06-21T18:04:52.432Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:08.771Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:26.584Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:40.236Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:18:54.586Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:48.616Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:35.570Z","1.0.0-beta.4":"2017-06-23T23:12:16.870Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:40.176Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:35.664Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:15.510Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:22.770Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:10:58.359Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:21:53.014Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:13.577Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:40:44.617Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:28.607Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:27.480Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:01.282Z","1.0.0":"2017-07-06T19:43:22.627Z","1.0.1":"2017-07-06T19:48:48.914Z","1.0.2":"2017-08-11T14:03:04.953Z","1.0.3":"2017-08-11T20:02:51.690Z","1.0.4":"2017-08-19T01:52:11.084Z","1.1.0-alpha.22c8a6f1":"2017-08-24T16:12:16.579Z","2.0.0":"2017-08-25T18:06:52.003Z","1.0.5":"2017-08-25T18:21:45.374Z","1.0.6":"2017-08-30T22:58:31.528Z","1.0.7":"2017-08-31T23:41:22.396Z","1.1.0-alpha.76b32701":"2017-09-15T18:00:44.053Z","1.1.0-alpha.2e1e7782":"2017-09-15T18:12:24.076Z","1.1.0-alpha.93f2e2a2":"2017-09-16T11:49:52.244Z","1.1.0-alpha.5db7a275":"2017-09-16T13:45:47.441Z","1.1.0-alpha.1460dad9":"2017-09-18T12:28:30.920Z","1.0.8":"2017-11-07T08:15:45.953Z","1.0.9":"2017-11-28T02:52:24.917Z","1.0.10":"2017-11-29T00:09:24.374Z","1.0.11":"2017-12-10T00:45:18.615Z","1.0.12":"2017-12-12T20:54:40.307Z","1.1.0-alpha.f20ac0ed":"2018-01-11T18:38:48.899Z","1.1.0-alpha.a0a09c94":"2018-01-11T18:47:46.981Z","1.1.0-alpha.b50f2063":"2018-01-11T18:54:52.291Z","1.1.0-alpha.03b9df85":"2018-01-12T14:35:57.435Z","1.1.0-alpha.e9df8e57":"2018-01-12T14:47:14.553Z","1.1.0-alpha.8c822451":"2018-01-12T15:00:43.173Z","1.1.0-alpha.e5586916":"2018-01-12T15:22:14.955Z","1.1.0-alpha.9da1bca1":"2018-01-12T18:07:16.360Z","1.1.0-alpha.aeb05561":"2018-01-18T01:52:48.060Z","1.1.0-alpha.7b47e00d":"2018-01-18T02:09:53.194Z","1.1.0-alpha.f5c1df61":"2018-01-18T17:30:09.085Z","1.1.0-alpha.926cb6da":"2018-01-21T01:42:06.828Z","1.1.0-alpha.3f307d61":"2018-01-21T02:22:41.657Z","1.0.13":"2018-01-23T19:17:29.182Z","1.1.0-alpha.d1544e1b":"2018-01-25T00:14:07.504Z","1.1.0-alpha.53bbd4cd":"2018-02-10T20:34:19.461Z","1.1.0-alpha.2b695217":"2018-02-10T22:36:30.629Z","1.1.0-alpha.32ef58da":"2018-02-11T03:44:29.531Z","1.1.0-alpha.5182142b":"2018-02-11T04:12:10.457Z","1.0.14":"2018-02-13T01:11:50.391Z","1.1.0-alpha.6ab84875":"2018-02-15T02:06:29.018Z","1.1.0-alpha.9d4de2a6":"2018-02-15T20:32:11.475Z","1.1.0-alpha.1a8f691e":"2018-02-15T21:00:55.423Z","1.1.0-alpha.9e381f74":"2018-02-15T21:12:22.129Z","1.1.0-alpha.dd504153":"2018-02-15T21:29:24.062Z","1.1.0-alpha.b68b7f5c":"2018-02-15T22:00:28.294Z","1.1.0-alpha.bb258cb5":"2018-02-16T00:29:26.158Z","1.1.0-alpha.e28a1c8e":"2018-02-16T01:10:54.248Z","1.1.0-alpha.067e672c":"2018-02-17T02:44:59.870Z","1.1.0-alpha.d0b8dd9e":"2018-02-17T19:04:54.933Z","1.0.15-0":"2018-02-17T19:30:51.104Z","1.1.0-alpha.e66c6c9c":"2018-02-27T01:24:39.163Z","1.0.15":"2018-02-28T20:39:46.444Z","1.1.0-alpha.2cbec6d6":"2018-03-03T06:46:24.079Z","1.0.15-1":"2018-03-03T07:23:22.648Z","1.1.0-alpha.f98688ee":"2018-03-07T02:25:30.469Z","1.1.0-alpha.9fe50b00":"2018-03-08T03:04:12.508Z","1.1.0-alpha.34eda94b":"2018-03-17T21:22:04.844Z","1.1.0-alpha.12622d64":"2018-03-17T23:59:52.314Z","1.1.0-alpha.84bd71b4":"2018-03-18T00:39:37.383Z","1.1.0-alpha.6ad61a13":"2018-03-21T17:49:14.901Z","1.1.0-alpha.5f47082e":"2018-03-23T22:47:22.197Z","1.0.15-2":"2018-03-23T23:18:46.176Z","1.0.16":"2018-03-24T17:45:40.915Z","1.0.17":"2018-03-26T21:55:17.185Z","1.1.0-alpha.95fcd4af":"2018-03-29T02:22:07.640Z","1.1.0-alpha.20252dc3":"2018-03-29T02:43:50.956Z","1.1.0-alpha.4a09f745":"2018-04-05T22:14:44.173Z","1.1.0-alpha.76793cd8":"2018-04-07T22:12:02.904Z","1.1.0-alpha.5c9569c0":"2018-04-19T16:56:44.038Z","1.1.0-alpha.523a4286":"2018-04-19T23:51:39.088Z","1.1.0-alpha.5421f383":"2018-04-20T06:52:33.440Z","1.1.0-alpha.e9c3027b":"2018-04-20T17:56:01.412Z","1.0.15-3":"2018-04-22T01:53:35.848Z","1.0.18":"2018-04-24T17:48:34.999Z","1.0.15-4":"2018-04-25T16:25:01.417Z","1.0.15-5":"2018-04-26T18:19:16.427Z","1.0.15-6":"2018-05-11T21:43:24.154Z","1.0.15-8":"2018-05-15T19:53:52.168Z","1.0.15-9":"2018-05-18T15:35:09.061Z","1.0.15-10":"2018-05-31T14:03:35.080Z","1.0.15-11":"2018-05-31T17:04:40.105Z","1.0.15-12":"2018-06-11T15:22:07.341Z","1.0.15-13":"2018-06-11T16:54:30.355Z","2.0.0-alpha.1":"2018-06-16T19:08:34.738Z","2.0.0-alpha.8ac171a1":"2018-06-16T19:25:09.423Z","2.0.0-alpha.e328d33f":"2018-06-16T19:32:39.628Z","2.0.0-alpha.80a21f04":"2018-06-16T19:36:48.906Z","2.0.0-alpha.2":"2018-06-16T23:32:34.325Z","1.0.19":"2018-06-17T01:53:04.207Z","2.0.0-beta.0":"2018-06-17T06:53:47.987Z","2.0.0-beta.1":"2018-06-17T08:12:47.525Z","2.0.0-beta.2":"2018-06-20T20:45:21.016Z","2.0.0-beta.3":"2018-07-21T16:00:04.460Z","2.0.0-rc.0":"2018-08-21T00:58:19.338Z","2.0.0-rc.1":"2018-08-29T18:28:39.124Z","2.0.5":"2018-09-17T20:41:37.434Z","2.0.6":"2018-10-29T15:23:45.784Z","2.0.7":"2018-11-29T12:13:32.449Z","2.0.8":"2019-01-24T15:30:36.977Z","2.0.9":"2019-02-01T12:25:00.896Z","2.0.10":"2019-03-11T15:24:12.862Z","2.0.11":"2019-03-25T15:27:11.535Z","2.0.12":"2019-03-28T21:12:32.590Z","2.0.13":"2019-04-11T20:43:14.200Z","2.0.14":"2019-05-29T18:22:28.483Z","2.0.15":"2019-05-30T19:13:33.018Z","2.1.0":"2019-06-20T13:48:48.739Z"},"tags":{"latest":"2.1.0"},"description":"Gatsby plugin to add google tagmanager onto a site","dependencies":{"@babel/runtime":"^7.0.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-google-tagmanager","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-google-tagmanager","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-google-tagmanager","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-google-tagmanager\n\nEasily add Google Tagmanager to your Gatsby site.\n\n## Install\n\n`npm install --save gatsby-plugin-google-tagmanager`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nplugins: [\n {\n resolve: `gatsby-plugin-google-tagmanager`,\n options: {\n id: \"YOUR_GOOGLE_TAGMANAGER_ID\",\n\n // Include GTM in development.\n // Defaults to false meaning GTM will only be loaded in production.\n includeInDevelopment: false,\n\n // Specify optional GTM environment details.\n gtmAuth: \"YOUR_GOOGLE_TAGMANAGER_ENVIROMENT_AUTH_STRING\",\n gtmPreview: \"YOUR_GOOGLE_TAGMANAGER_ENVIROMENT_PREVIEW_NAME\",\n dataLayerName: \"YOUR_DATA_LAYER_NAME\",\n },\n },\n]\n```\n\n#### Tracking routes\n\nThis plugin will fire a new event called `gatsby-route-change` whenever a route is changed in your Gatsby application. To record this in Google Tag Manager, we will need to add a trigger to the desired tag to listen for the event:\n\n1. Visit the [Google Tag Manager console](https://tagmanager.google.com/) and click on the workspace for your site.\n2. Navigate to the desired tag using the 'Tags' tab of the menu on the right hand side.\n3. Under \"Triggering\", click the pencil icon, then the \"+\" button to add a new trigger.\n4. In the \"Choose a trigger\" window, click on the \"+\" button again.\n5. Choose the trigger type by clicking the pencil button and clicking \"Custom event\". For event name, enter `gatsby-route-change`.\n\nThis tag will now catch every route change in Gatsby, and you can add Google tag services as you wish to it.\n\n#### Note\n\nOut of the box this plugin will simply load Google Tag Manager on the initial page/app load. It's up to you to fire tags based on changes in your app. See the above \"Tracking routes\" section for an example.\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","google analytics","google tagmanager"],"computedKeywords":[],"computedMetadata":{},"created":1498068292432,"modified":1561038533393,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:14:55.812Z","_searchInternal":{"concatenatedName":"gatsbyplugingoogletagmanager","alternativeNames":["gatsbyplugingoogletagmanager","gatsby plugin google tagmanager","gatsby-plugin-google-tagmanager"],"downloadsMagnitude":6,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-google-tagmanager/CHANGELOG.md","jsDelivrHits":3,"objectID":"gatsby-plugin-google-tagmanager","_highlightResult":{"name":{"value":"gatsby-plugin-google-tagmanager","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin to add google tagmanager onto a site","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"google analytics","matchLevel":"none","matchedWords":[]},{"value":"google tagmanager","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyplugingoogletagmanager","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin google tagmanager","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-google-tagmanager","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-node-helpers","downloadsLast30Days":111938,"downloadsRatio":0.0002452688480704303,"humanDownloadsLast30Days":"111.9k","popular":false,"version":"0.3.0","versions":{"0.1.0":"2017-11-24T09:56:18.282Z","0.1.1":"2017-11-24T10:09:10.349Z","0.1.2":"2017-11-24T11:24:44.297Z","0.1.3":"2017-11-24T20:46:32.095Z","0.1.4":"2018-03-16T04:37:52.173Z","0.2.0":"2018-05-02T06:18:31.460Z","0.3.0":"2018-05-13T04:58:00.224Z"},"tags":{"latest":"0.3.0"},"description":"Gatsby node helper functions to aid node creation.","dependencies":{"json-stringify-safe":"^5.0.1","lodash":"^4.17.4","p-is-promise":"^1.1.0"},"devDependencies":{"babel-cli":"^6.26.0","babel-plugin-rewire":"^1.1.0","babel-plugin-transform-es2015-modules-commonjs":"^6.26.0","babel-plugin-transform-export-extensions":"^6.22.0","babel-plugin-transform-object-rest-spread":"^6.26.0","jest":"^21.2.1","prettier":"^1.8.2"},"repository":{"url":"https://github.com/angeloashmore/gatsby-node-helpers","project":"gatsby-node-helpers","user":"angeloashmore","host":"github.com","path":"","branch":"master"},"githubRepo":{"user":"angeloashmore","project":"gatsby-node-helpers","path":"","head":"master"},"gitHead":"master","readme":"# gatsby-node-helpers\n\nGatsby node helper functions to aid node creation. To be used when creating\n[Gatsby source plugins][gatsby-source-plugins].\n\n**Note**: The following documentation is incomplete and will be written at a\nlater time.\n\n## Status\n\n[![npm version](https://badge.fury.io/js/gatsby-node-helpers.svg)](http://badge.fury.io/js/gatsby-node-helpers)\n[![Build Status](https://secure.travis-ci.org/angeloashmore/gatsby-node-helpers.svg?branch=master)](http://travis-ci.org/angeloashmore/gatsby-node-helpers?branch=master)\n\n## Installation\n\n```sh\nnpm install --save gatsby-node-helpers\n```\n\n## Quick Guide\n\n### Import\n\nImport the default module:\n\n```js\nimport createNodeHelpers from 'gatsby-node-helpers'\n```\n\n### Create node helpers\n\nCall `createNodeHelpers` with options.\n\n```js\nimport createNodeHelpers from 'gatsby-node-helpers'\n\nconst {\n createNodeFactory,\n generateNodeId,\n generateTypeName,\n} = createNodeHelpers({\n typePrefix: `Shopify`,\n})\n```\n\n### Create a node factory\n\nCall `createNodeFactory` with a type name.\n\n```js\nimport createNodeHelpers from 'gatsby-node-helpers'\n\nconst {\n createNodeFactory,\n generateNodeId,\n generateTypeName,\n} = createNodeHelpers({\n typePrefix: `Shopify`,\n})\n\nconst PRODUCT_TYPE = `Product`\nconst PRODUCT_VARIANT_TYPE = `ProductVariant`\n\nexport const ProductNode = createNodeFactory(PRODUCT_TYPE, node => {\n if (node.variants) {\n const variants = node.variants.edges.map(edge => edge.node)\n\n // Set additional fields\n const variantPrices = variants\n .map(variant => Number.parseFloat(variant.price))\n .filter(Boolean)\n node.minPrice = Math.min(...variantPrices) || 0\n node.maxPrice = Math.max(...variantPrices) || 0\n\n // Set children\n node.children = variants.map(variant =>\n generateNodeId(PRODUCT_VARIANT_TYPE, variant.id),\n )\n\n // Remove unnecessary fields\n delete node.variants\n }\n\n return node\n})\n\nexport const ProductVariantNode = createNodeFactory(PRODUCT_VARIANT_TYPE)\n```\n\n### Use the node factory in your `gatsby-node.js`\n\n`ProductNode` accepts an object and returns a new object to be passed to\nGatsby's `createNode` action creator.\n\nIt handles setting up Gatsby's internal fields, including the content digest and\nnode type.\n\n```js\n// gatsby-node.js\n\nimport { ProductNode, ProductVariantNode } from './nodes'\nimport { getAllProducts } from './api'\n\nexports.sourceNodes = async ({ boundActionCreators }) => {\n const { createNode } = boundActionCreators\n\n const products = await getAllProducts()\n\n products.forEach(product => {\n const productNode = ProductNode(product)\n createNode(productNode)\n\n product.variants.edges.forEach(edge => {\n const variant = edge.node\n const productVariantNode = ProductVariantNode(variant, {\n parent: productNode.id,\n })\n createNode(productVariantNode)\n })\n })\n}\n```\n\n## API\n\n### `createNodeHelpers`\n\n**Default export** of the package.\n\n```js\n({\n sourceId?: String,\n typePrefix: String,\n conflictFieldPrefix?: String\n}) => ({\n createNodeFactory: (type: String, middleware?: Node => Node) => (obj: Object, overrides?: Object),\n generateNodeId: (type: String, id: String) => String,\n generateTypeName: (type: String) => String\n})\n```\n\n#### Inputs\n\nThe following options are provided as an object.\n\n##### `sourceId?: String` - Optional (default: `__SOURCE__`)\n\nDefault source parent ID. If not defined, the node is set as a top-level node.\n\n##### `typePrefix: String` - **Required**\n\nPrefix for all nodes. Used a namespace for node type names and IDs. Must be\nPascalCase.\n\n##### `conflictFieldPrefix?: String` - Optional (default: camelcased `typePrefix`)\n\nPrefix for all fields conflicting with Gatsby's internal fields:\n\n* `id`\n* `children`\n* `parent`\n* `fields`\n* `internal`\n\n#### Outputs\n\nThe following outputs are provided as an object.\n\n##### `createNodeFactory: (type: String, middleware?: Node => Node) => (obj: Object, overrides?: Object)`\n\nJump to documentation: [`createNodeFactory`](#createnodefactory)\n\n##### `generateNodeId: (type: String, id: String) => String`\n\nJump to documentation: [`generateNodeId`](#generatenodeid)\n\n##### `generateTypeName: (type: String) => String`\n\nJump to documentation: [`generateTypeName`](#generatetypename)\n\n---\n\nThe following functions are generated by `createNodeHelpers`.\n\n### `createNodeFactory`\n\n```js\n;(type: String, middleware?: Node => Node) => (\n obj: Object,\n overrides?: Object,\n) => Node\n```\n\n#### Inputs\n\n##### `type: String` - **Required**\n\nThe type of the node the resulting function will create.\n\n##### `middleware?: Node => Node` - Optional (default: identity function)\n\nAllows for modifying the node beyond the default Gatsby fields. This function\nrecieves the Node object and must return the Node object, with modifications if\nnecessary.\n\nThe middleware function is called at the following point:\n\n1. Clone the input object and add Gatsby internal fields.\n2. **HERE =>**: Run Node through middleware, modifiying fields as necessary.\n3. Merge node with overrides provided to `createNodeFactory`'s resulting\n function.\n\nTypical uses of the middleware function is setting up the `children` field,\nadding new fields based on the object, and removing unecessary fields.\n\n#### Outputs\n\n##### `(obj: Object, overrides?: Object) => Node`\n\nFactory function to create a Gatsby `createNode` compatible object.\n\nIt takes in an object, sets it up for Gatsby using the previously defined\noptions (see Inputs above), merges any overrides provided, and returns an\nobject.\n\nBy default, the input object is kept intact, with the following exceptions:\n\n| Field | Description |\n| ------------------------ | ------------------------------------------------------------------------- |\n| `id` | A generated string containing `typePrefix`, `type`, and the original `id` |\n| `parent` | `sourceId` set in `createNodeHelpers` (`__SOURCE__` by default) |\n| `children` | `[]` by default |\n| `internal.type` | A generated string containing `typePrefix` and `type` |\n| `internal.contentDigest` | MD5 hash of the object including the above added fields |\n\nThe `overrides` parameter allows for a final chance to override any node field.\nThe object is merged directly with no modifications.\n\n### `generateNodeId`\n\n```js\n;(type: String, id: String) => String\n```\n\nFunction that takes in a node type and node ID and returns a formatted string.\nIt is used internally to create a node's ID.\n\nBecause it is used internally to create a node's ID, it can be useful when\nsetting `obj.parent` and `obj.children` in a middleware function or overrides\nobject. The result will always be the same as long as the same type and ID are\nprovided.\n\n#### Inputs\n\n##### `type: String` - **Required**\n\nType of the node.\n\n##### `id: String` - **Required**\n\nID of the node. Must be unique scoped to the type.\n\n#### Outputs\n\n##### `String`\n\nA formatted string containing `typePrefix`, `type` and `id`. Used internally to\nconsistently generate node IDs.\n\n### `generateTypeName`\n\n```js\n(type: String): String\n```\n\n#### Inputs\n\n##### `type: String` - **Required**\n\nType of the node.\n\n#### Outputs\n\n##### `String`\n\nA formatted string containing `typePrefix` and `type`. Used internally to\nconsistently generate node type names.\n\n[gatsby-source-plugins]: https://www.gatsbyjs.org/docs/create-source-plugin/\n","owner":{"name":"angeloashmore","avatar":"https://github.com/angeloashmore.png","link":"https://github.com/angeloashmore"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1511517378282,"modified":1526187483960,"lastPublisher":{"name":"angeloashmore","email":"angeloashmore@me.com","avatar":"https://gravatar.com/avatar/7504e0b621ce6cd4f76f811dba32fb46","link":"https://www.npmjs.com/~angeloashmore"},"owners":[{"name":"angeloashmore","email":"angeloashmore@me.com","avatar":"https://gravatar.com/avatar/7504e0b621ce6cd4f76f811dba32fb46","link":"https://www.npmjs.com/~angeloashmore"}],"lastCrawl":"2019-06-24T10:14:55.442Z","_searchInternal":{"concatenatedName":"gatsbynodehelpers","alternativeNames":["gatsbynodehelpers","gatsby node helpers","gatsby-node-helpers"],"downloadsMagnitude":6,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":0,"objectID":"gatsby-node-helpers","_highlightResult":{"name":{"value":"gatsby-node-helpers","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby node helper functions to aid node creation.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"angeloashmore","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"angeloashmore","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbynodehelpers","matchLevel":"none","matchedWords":[]},{"value":"gatsby node helpers","matchLevel":"none","matchedWords":[]},{"value":"gatsby-node-helpers","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-remark-prismjs","downloadsLast30Days":97330,"downloadsRatio":0.0002132610640059227,"humanDownloadsLast30Days":"97.3k","popular":false,"version":"3.3.0","versions":{"1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:14.409Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:47.770Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:32:23.654Z","1.0.0-alpha14":"2017-05-06T01:18:21.806Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:07.114Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:10.294Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:14.733Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:44:08.778Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:55:13.068Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:12:09.142Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:36.545Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:34:08.276Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:33.017Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:38.329Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:30:02.561Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:44.128Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:22:08.866Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:41.169Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:33.327Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:29:56.379Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:06:02.681Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:27:11.717Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:42:55.952Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:40:07.739Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:48.027Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:47:47.557Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:24.617Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:25.643Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:37:56.190Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:16:52.653Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:36.782Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:48.667Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:51.134Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:38:02.518Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:39:09.856Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:34:04.701Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:24.806Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:52:09.988Z","1.0.0-alpha20":"2017-06-06T02:01:12.596Z","1.0.0-alpha21":"2017-06-07T06:50:35.520Z","1.0.0-alpha.22":"2017-06-08T04:28:03.709Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:14.897Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:31.268Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:52.090Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:27.560Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:26:03.056Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:07:39.101Z","1.0.0-beta.1":"2017-06-15T20:25:58.870Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:24.271Z","1.0.0-beta.2":"2017-06-16T18:00:27.621Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:32.666Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:42.083Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:36:03.316Z","1.0.0-beta.3":"2017-06-21T18:04:54.243Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:20.909Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:44.040Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:52.373Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:09.169Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:57.025Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:45.002Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:49.042Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:46.726Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:27.658Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:32.078Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:11.227Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:22:04.062Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:28.442Z","1.0.0-beta.6":"2017-07-02T06:43:10.448Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:41:01.393Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:43.463Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:42.876Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:17.381Z","1.0.0":"2017-07-06T19:43:38.018Z","1.0.1":"2017-07-06T19:49:03.748Z","1.2.0":"2017-07-13T22:53:37.645Z","1.2.1":"2017-08-19T01:52:40.796Z","1.3.0-alpha.22c8a6f1":"2017-08-24T16:12:33.593Z","2.0.0":"2017-08-25T18:07:05.471Z","1.2.2":"2017-08-25T18:21:58.606Z","1.2.3":"2017-08-29T22:42:45.670Z","1.2.4":"2017-08-29T22:51:14.567Z","1.2.5":"2017-08-30T22:58:48.591Z","1.2.6":"2017-08-30T23:49:10.027Z","1.2.7":"2017-08-31T23:41:55.551Z","1.2.8":"2017-09-09T17:31:59.848Z","1.3.0-alpha.76b32701":"2017-09-15T18:01:46.091Z","1.3.0-alpha.93f2e2a2":"2017-09-16T11:50:50.597Z","1.3.0-alpha.5db7a275":"2017-09-16T13:46:40.565Z","1.3.0-alpha.1460dad9":"2017-09-18T12:29:29.170Z","1.2.9":"2017-10-30T23:07:42.243Z","1.2.10":"2017-11-29T00:09:59.612Z","1.2.11":"2017-12-10T00:45:38.872Z","1.3.0-alpha.f20ac0ed":"2018-01-11T18:39:27.712Z","1.3.0-alpha.a0a09c94":"2018-01-11T18:48:20.242Z","1.3.0-alpha.b50f2063":"2018-01-11T18:55:24.057Z","1.3.0-alpha.03b9df85":"2018-01-12T14:36:35.492Z","1.3.0-alpha.e9df8e57":"2018-01-12T14:47:46.246Z","1.3.0-alpha.8c822451":"2018-01-12T15:01:13.325Z","1.3.0-alpha.e5586916":"2018-01-12T15:22:47.587Z","1.3.0-alpha.9da1bca1":"2018-01-12T18:07:54.482Z","1.2.12":"2018-01-16T20:09:19.971Z","1.3.0-alpha.aeb05561":"2018-01-18T01:53:22.667Z","1.3.0-alpha.7b47e00d":"2018-01-18T02:10:19.921Z","1.3.0-alpha.f5c1df61":"2018-01-18T17:30:47.062Z","1.3.0-alpha.926cb6da":"2018-01-21T01:42:37.736Z","1.3.0-alpha.3f307d61":"2018-01-21T02:23:20.339Z","1.3.0-alpha.d1544e1b":"2018-01-25T00:14:48.235Z","1.2.13":"2018-02-07T21:36:53.322Z","1.2.14":"2018-02-08T00:04:53.070Z","1.3.0-alpha.53bbd4cd":"2018-02-10T20:35:14.364Z","1.3.0-alpha.2b695217":"2018-02-10T22:37:10.862Z","1.3.0-alpha.32ef58da":"2018-02-11T03:45:07.994Z","1.3.0-alpha.5182142b":"2018-02-11T04:13:07.124Z","1.2.15":"2018-02-13T01:12:22.990Z","1.3.0-alpha.6ab84875":"2018-02-15T02:07:13.629Z","1.3.0-alpha.9d4de2a6":"2018-02-15T20:32:56.039Z","1.3.0-alpha.9e381f74":"2018-02-15T21:13:01.712Z","1.3.0-alpha.dd504153":"2018-02-15T21:30:15.920Z","1.3.0-alpha.b68b7f5c":"2018-02-15T22:01:17.530Z","1.3.0-alpha.bb258cb5":"2018-02-16T00:30:04.502Z","1.3.0-alpha.e28a1c8e":"2018-02-16T01:11:28.324Z","1.3.0-alpha.067e672c":"2018-02-17T02:45:40.091Z","1.3.0-alpha.d0b8dd9e":"2018-02-17T19:05:44.402Z","1.2.16-0":"2018-02-17T19:31:27.932Z","1.3.0-alpha.e66c6c9c":"2018-02-27T01:25:32.846Z","1.2.16":"2018-02-28T20:40:28.596Z","1.2.17":"2018-03-02T20:33:49.483Z","1.3.0-alpha.2cbec6d6":"2018-03-03T06:47:06.890Z","1.2.16-1":"2018-03-03T07:24:32.074Z","1.3.0-alpha.f98688ee":"2018-03-07T02:26:13.285Z","1.3.0-alpha.9fe50b00":"2018-03-08T03:04:46.742Z","1.2.18":"2018-03-13T06:17:11.819Z","1.3.0-alpha.34eda94b":"2018-03-17T21:22:39.639Z","1.3.0-alpha.12622d64":"2018-03-18T00:00:48.226Z","1.3.0-alpha.84bd71b4":"2018-03-18T00:40:39.866Z","1.2.19":"2018-03-19T23:45:34.393Z","1.2.20":"2018-03-20T01:39:15.850Z","1.3.0-alpha.6ad61a13":"2018-03-21T17:50:10.731Z","1.3.0-alpha.5f47082e":"2018-03-23T22:48:17.372Z","1.2.16-2":"2018-03-23T23:19:41.034Z","1.2.21":"2018-03-24T17:45:53.942Z","1.3.0-alpha.95fcd4af":"2018-03-29T02:23:13.738Z","1.3.0-alpha.20252dc3":"2018-03-29T02:45:03.589Z","1.2.22":"2018-04-02T22:39:35.518Z","1.2.23":"2018-04-03T20:02:48.589Z","1.3.0-alpha.4a09f745":"2018-04-05T22:15:16.636Z","1.2.24":"2018-04-07T21:10:24.548Z","1.3.0-alpha.76793cd8":"2018-04-07T22:12:56.867Z","2.0.1":"2018-04-16T18:53:24.516Z","1.3.0-alpha.5c9569c0":"2018-04-19T16:57:49.665Z","1.3.0-alpha.523a4286":"2018-04-19T23:52:57.359Z","1.3.0-alpha.5421f383":"2018-04-20T06:53:45.870Z","1.3.0-alpha.e9c3027b":"2018-04-20T17:57:41.907Z","1.2.16-3":"2018-04-22T01:54:53.186Z","2.0.2":"2018-04-24T17:48:35.985Z","1.2.16-4":"2018-04-25T16:26:03.985Z","1.2.16-5":"2018-04-26T18:20:19.120Z","1.2.16-6":"2018-05-11T21:44:41.636Z","1.2.16-8":"2018-05-15T20:22:54.785Z","1.2.16-9":"2018-05-18T15:36:01.047Z","2.0.3":"2018-05-30T14:58:02.904Z","1.2.16-10":"2018-05-31T14:06:57.811Z","1.2.16-11":"2018-05-31T17:19:55.545Z","2.0.3-2":"2018-06-11T15:26:05.181Z","2.0.3-3":"2018-06-11T16:56:19.567Z","3.0.0-alpha.e328d33f":"2018-06-16T19:33:35.034Z","3.0.0-alpha.80a21f04":"2018-06-16T19:37:47.100Z","3.0.0-alpha.2":"2018-06-16T23:33:32.065Z","2.0.4":"2018-06-17T01:53:26.840Z","3.0.0-beta.0":"2018-06-17T06:54:12.355Z","3.0.0-beta.1":"2018-06-17T08:13:10.851Z","3.0.0-beta.2":"2018-06-20T20:45:44.920Z","2.0.0-beta.3":"2018-06-27T13:05:35.561Z","3.0.0-beta.3":"2018-06-27T13:05:48.014Z","2.0.5":"2018-07-18T14:25:01.415Z","3.0.0-beta.4":"2018-07-21T16:00:23.015Z","3.0.0-beta.5":"2018-07-27T19:00:51.626Z","3.0.0-beta.6":"2018-08-15T08:41:08.624Z","3.0.0-beta.7":"2018-08-15T18:37:28.456Z","3.0.0-beta.8":"2018-08-20T19:52:59.299Z","3.0.0-rc.0":"2018-08-21T00:59:22.906Z","3.0.0-rc.1":"2018-08-29T17:08:17.498Z","3.0.0-rc.2":"2018-08-29T18:29:42.193Z","3.0.0":"2018-09-17T20:42:50.359Z","3.0.1":"2018-09-26T10:38:59.100Z","3.0.2":"2018-10-12T19:37:03.358Z","3.0.3":"2018-10-29T15:24:39.767Z","3.1.0":"2018-11-26T14:18:27.229Z","3.1.1":"2018-11-29T12:14:33.197Z","3.1.2":"2018-11-30T03:57:40.742Z","3.1.3":"2018-12-03T16:48:57.897Z","3.1.4":"2018-12-06T16:04:08.483Z","3.2.0":"2018-12-31T15:21:02.416Z","3.2.2":"2019-01-24T23:13:45.500Z","3.2.3":"2019-01-29T13:26:28.646Z","3.2.4":"2019-02-01T12:25:38.702Z","3.2.5":"2019-03-11T15:25:19.632Z","3.2.6":"2019-03-18T21:22:32.229Z","3.2.7":"2019-04-04T19:07:46.759Z","3.2.8":"2019-04-09T15:46:33.816Z","3.2.9":"2019-05-02T13:37:39.249Z","3.2.10":"2019-06-05T19:41:50.605Z","3.2.11":"2019-06-07T18:34:04.283Z","3.3.0":"2019-06-20T13:49:36.787Z"},"tags":{"latest":"3.3.0"},"description":"Adds syntax highlighting to code blocks at build time using PrismJS","dependencies":{"@babel/runtime":"^7.0.0","parse-numeric-range":"^0.0.2","unist-util-visit":"^1.3.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4","prismjs":"^1.15.0","remark":"^9.0.0"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-remark-prismjs","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-remark-prismjs","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-remark-prismjs","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-remark-prismjs\n\nAdds syntax highlighting to code blocks in markdown files using\n[PrismJS](http://prismjs.com/).\n\n## Install\n\n`npm install --save gatsby-transformer-remark gatsby-remark-prismjs prismjs`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nplugins: [\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [\n {\n resolve: `gatsby-remark-prismjs`,\n options: {\n // Class prefix for <pre> tags containing syntax highlighting;\n // defaults to 'language-' (eg <pre class=\"language-js\">).\n // If your site loads Prism into the browser at runtime,\n // (eg for use with libraries like react-live),\n // you may use this to prevent Prism from re-processing syntax.\n // This is an uncommon use-case though;\n // If you're unsure, it's best to use the default value.\n classPrefix: \"language-\",\n // This is used to allow setting a language for inline code\n // (i.e. single backticks) by creating a separator.\n // This separator is a string and will do no white-space\n // stripping.\n // A suggested value for English speakers is the non-ascii\n // character '›'.\n inlineCodeMarker: null,\n // This lets you set up language aliases. For example,\n // setting this to '{ sh: \"bash\" }' will let you use\n // the language \"sh\" which will highlight using the\n // bash highlighter.\n aliases: {},\n // This toggles the display of line numbers globally alongside the code.\n // To use it, add the following line in src/layouts/index.js\n // right after importing the prism color scheme:\n // `require(\"prismjs/plugins/line-numbers/prism-line-numbers.css\");`\n // Defaults to false.\n // If you wish to only show line numbers on certain code blocks,\n // leave false and use the {numberLines: true} syntax below\n showLineNumbers: false,\n // If setting this to true, the parser won't handle and highlight inline\n // code used in markdown i.e. single backtick code like `this`.\n noInlineHighlight: false,\n // This adds a new language definition to Prism or extend an already\n // existing language definition. More details on this option can be\n // found under the header \"Add new language definition or extend an\n // existing language\" below.\n languageExtensions: [\n {\n language: \"superscript\",\n extend: \"javascript\",\n definition: {\n superscript_types: /(SuperType)/,\n },\n insertBefore: {\n function: {\n superscript_keywords: /(superif|superelse)/,\n },\n },\n },\n ],\n },\n },\n ],\n },\n },\n]\n```\n\n### Include CSS\n\n#### Required: Pick a PrismJS theme or create your own\n\nPrismJS ships with a number of [themes][5] (previewable on the [PrismJS\nwebsite][6]) that you can easily include in your Gatsby site, or you can build\nyour own by copying and modifying an example (which is what we've done for\n[gatsbyjs.org](https://gatsbyjs.org)).\n\nTo load a theme, just require its CSS file in your `gatsby-browser.js` file, e.g.\n\n```javascript\n// gatsby-browser.js\nrequire(\"prismjs/themes/prism-solarizedlight.css\")\n```\n\n#### Optional: Add line highlighting styles\n\nIf you want to highlight lines of code, you also need to add some additional CSS\nthat targets our _custom line highlighting implementation_ (which slightly\ndiffers from PrismJS's own plugin for that – more on that later).\n\nFor line highlights similar to PrismJS's, try:\n\n```css\n.gatsby-highlight-code-line {\n background-color: #feb;\n display: block;\n margin-right: -1em;\n margin-left: -1em;\n padding-right: 1em;\n padding-left: 0.75em;\n border-left: 0.25em solid #f99;\n}\n```\n\nThis should work out quite nicely for the \"Solarized Light\" PrismJS theme we\njust added in the previous part. However, you will notice that when a\nhighlighted line runs wider than the surrounding code block container (causing a\nhorizontal scrollbar), its background won't be drawn for the initially hidden,\noverflowing part. :(\n\nWe saw others fix that problem and decided to do so, too. Just add the following\nCSS along your PrismJS theme and the styles for `.gatsby-highlight-code-line`:\n\n```css\n/**\n * Add back the container background-color, border-radius, padding, margin\n * and overflow that we removed from <pre>.\n */\n.gatsby-highlight {\n background-color: #fdf6e3;\n border-radius: 0.3em;\n margin: 0.5em 0;\n padding: 1em;\n overflow: auto;\n}\n\n/**\n * Remove the default PrismJS theme background-color, border-radius, margin,\n * padding and overflow.\n * 1. Make the element just wide enough to fit its content.\n * 2. Always fill the visible space in .gatsby-highlight.\n * 3. Adjust the position of the line numbers\n */\n.gatsby-highlight pre[class*=\"language-\"] {\n background-color: transparent;\n margin: 0;\n padding: 0;\n overflow: initial;\n float: left; /* 1 */\n min-width: 100%; /* 2 */\n}\n```\n\n#### Optional: Add line numbering\n\nIf you want to add line numbering alongside your code, you need to\nimport the corresponding CSS file from PrismJS, right after importing your\ncolorscheme in `gatsby-browser.js`:\n\n```javascript\n// gatsby-browser.js\nrequire(\"prismjs/plugins/line-numbers/prism-line-numbers.css\")\n```\n\nThen add in the corresponding CSS:\n\n```css\n/**\n * If you already use line highlighting\n */\n\n/* Adjust the position of the line numbers */\n.gatsby-highlight pre[class*=\"language-\"].line-numbers {\n padding-left: 2.8em;\n}\n\n/**\n * If you only want to use line numbering\n */\n\n.gatsby-highlight {\n background-color: #fdf6e3;\n border-radius: 0.3em;\n margin: 0.5em 0;\n padding: 1em;\n overflow: auto;\n}\n\n.gatsby-highlight pre[class*=\"language-\"].line-numbers {\n padding: 0;\n padding-left: 2.8em;\n overflow: initial;\n}\n```\n\n### Usage in Markdown\n\nThis is some beautiful code:\n\n ```javascript\n // In your gatsby-config.js\n plugins: [\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [\n `gatsby-remark-prismjs`,\n ]\n }\n }\n ]\n ```\n\n### Line numbering\n\nTo see the line numbers alongside your code, you can use the `numberLines` option:\n\n ```javascript{numberLines: true}\n // In your gatsby-config.js\n plugins: [\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [\n `gatsby-remark-prismjs`,\n ]\n }\n }\n ]\n ```\n\nYou can also start numbering at any index you wish (here, numbering\nwill start at index 5):\n\n ```javascript{numberLines: 5}\n // In your gatsby-config.js\n plugins: [\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [\n `gatsby-remark-prismjs`,\n ]\n }\n }\n ]\n ```\n\n### Line highlighting\n\nYou can also add line highlighting. It adds a span around lines of code with a\nspecial class `.gatsby-highlight-code-line` that you can target with styles. See\nthis README for more info.\n\nTo highlight lines, you can use one of the following directives as comments in your\ncode:\n\n- `highlight-line` highlights the current line;\n- `highlight-next-line` highlights the next line;\n- `highlight-start` highlights the lines until the matching `hightlight-end`;\n- `highlight-range{1, 4-6}` will highlight the next line, and the fourth, fifth and sixth lines.\n\n````\n```jsx\nclass FlavorForm extends React.Component { // highlight-line\n constructor(props) {\n super(props);\n this.state = {value: 'coconut'};\n\n this.handleChange = this.handleChange.bind(this);\n this.handleSubmit = this.handleSubmit.bind(this);\n }\n\n handleChange(event) {\n // highlight-next-line\n this.setState({value: event.target.value});\n }\n\n // highlight-start\n handleSubmit(event) {\n alert('Your favorite flavor is: ' + this.state.value);\n event.preventDefault();\n }\n // highlight-end\n\n render() {\n return (\n { /* highlight-range{1,4-9,12} */ }\n <form onSubmit={this.handleSubmit}>\n <label>\n Pick your favorite flavor:\n <select value={this.state.value} onChange={this.handleChange}>\n <option value=\"grapefruit\">Grapefruit</option>\n <option value=\"lime\">Lime</option>\n <option value=\"coconut\">Coconut</option>\n <option value=\"mango\">Mango</option>\n </select>\n </label>\n <input type=\"submit\" value=\"Submit\" />\n </form>\n );\n }\n}\n```\n````\n\nYou can also specify the highlighted lines outside of the code block.\nIn the following code snippet, lines 1 and 4 through 6 will get the line\nhighlighting. The line range parsing is done with\n<https://www.npmjs.com/package/parse-numeric-range>.\n\n````\n```javascript{1,4-6}\n// In your gatsby-config.js\nplugins: [\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [\n `gatsby-remark-prismjs`,\n ]\n }\n }\n]\n```\n````\n\n### Line hiding\n\nAs well as highlighting lines, it's possible to _hide_ lines from the rendered output. Often this is handy when using `gatsby-remark-prismjs` along with [`gatsby-remark-embed-snippet`](https://www.gatsbyjs.org/packages/gatsby-remark-embed-snippet/).\n\nAs with highlighting lines, you can control which lines to hide by adding directives as comments in your source code.\n\nThe available directives are:\n\n- `hide-line` hides the current line;\n- `hide-next-line` hides the next line;\n- `hide-start` hides the lines until the matching `hide-end`;\n- `hide-range{1, 4-6}` will hide the next line, and the fourth, fifth and sixth lines.\n\nThe hide-line directives will always be hidden too. Check out [the using-remark example site](https://using-remark.gatsbyjs.org/embed-snippets/) to see how this looks on a live site.\n\n### Inline code blocks\n\nIn addition to fenced code blocks, inline code blocks will be passed through\nPrismJS as well.\n\nIf you set the `inlineCodeMarker`, then you can also specify a format style.\n\nHere's an example of how to use this if the `inlineCodeMarker` was set to `±`:\n\n I can highlight `css±.some-class { background-color: red }` with CSS syntax.\n\nThis will be rendered in a `<code class=language-css>` with just the (syntax\nhighlighted) text of `.some-class { background-color: red }`\n\n### Disabling syntax highlighting\n\nIf you need to prevent any escaping or highlighting, you can use the `none`\nlanguage; the inner contents will not be changed at all.\n\n### Add new language definition or extend an existing language\n\nYou can provide a language extension by giving a single object or an array of\nlanguage extension objects as the `languageExtensions` option.\n\nA language extension object looks like this:\n\n```javascript\nlanguageExtensions: [\n {\n language: \"superscript\",\n extend: \"javascript\",\n definition: {\n superscript_types: /(SuperType)/,\n },\n insertBefore: {\n function: {\n superscript_keywords: /(superif|superelse)/,\n },\n },\n },\n]\n```\n\nused options:\n\n- `language` (optional) The name of the new language.\n- `extend` (optional) The language you wish to extend.\n- `definition` (optional) This is the Prism language definition.\n- `insertBefore` (optional) Is used to define where in the language definition we want to insert our extension.\n\nMore information of the format can be found here:\nhttps://prismjs.com/extending.html\n\nNote:\n\n- One of the parameters `language` and `extend` is needed.\n- If only `language` is given, a new language will be defined from scratch.\n- If only `extend` is given, an extension will be made to the given language.\n- If both `language` and `extend` is given, a new language that extends the `extend` language will\n be defined.\n\nIn case a language is extended, note that the definitions will not be merged.\nIf the extended language defintion and the given definition contains the same\ntoken, the original pattern will be overwritten.\n\nOne of the parameters `definition` and `insertBefore` needs to be defined.\n`insertBefore` needs to be combined with `definition` or `extend` (otherwise\nthere will not be any language definition tokens to insert before).\n\nIn addition to this extension parameters the css also needs to be updated to\nget a style for the new tokens. Prism will wrap the matched tokens with a\n`span` element and give it the classes `token` and the token name you defined.\nIn the example above we would match `superif` and `superelse`. In the html\nit would result in the following when a match is found:\n\n```html\n<span class=\"token superscript_keywords\">superif</span>\n```\n\n## Implementation notes\n\n### Line highlighting\n\nPlease note that we do _not_ use PrismJS's\n[line highlighting plugin](http://prismjs.com/plugins/line-highlight/). Here's\nwhy:\n\n- [PrismJS plugins][3] assume you're running things client side, but we are\n _build-time folks_.\n- PrismJS's line highlighting plugin [implementation][1] does not allow for\n solid background colors or 100% wide backgrounds that are drawn beyond the\n _visible part_ of the container when content is overflowing.\n\nOur approach follows the [Pygments-based][2] implementation of the [React\nTutorial/Documentation][4] for line highlights:\n\n- It uses a wrapper element `<div class=\"gatsby-highlight\">` around the\n PrismJS-formatted `<pre><code>`-blocks.\n- Highlighted lines are wrapped in `<span class=\"gatsby-highlight-code-line\">`.\n- We insert a linebreak before the closing tag of `.gatsby-highlight-code-line`\n so it ends up at the start of the following line.\n\nWith all of this in place, we can apply `float:left; min-width:100%` to `<pre>`,\nthrow our overflow and background on `.gatsby-highlight`, and use\n`display:block` on `.gatsby-highlight-code-line` – all of this coming together\nto facilitate the desired line highlight behavior.\n\n### Line numbering\n\nBecause [the line numbering PrismJS plugin][7] runs client-side, a few adaptations were required to make it work:\n\n- A class `.line-numbers` is dynamically added to the `<pre>` element.\n- A new node `<span class=\"line-numbers-rows\">` is added right before the closing `</pre>`\n containing as many empty `<span>`s as there are lines.\n\nSee the [client-side PrismJS implementation][8] for reference.\n\n[1]: https://github.com/PrismJS/prism/tree/8eb0ab6f76484ca47fa7acbf77657fab17b03ca7/plugins/line-highlight\n[2]: https://github.com/facebook/react/blob/00ba97a354e841701b4b83983c3a3904895e7b87/docs/_config.yml#L10\n[3]: http://prismjs.com/#plugins\n[4]: https://facebook.github.io/react/tutorial/tutorial.html\n[5]: https://github.com/PrismJS/prism/tree/1d5047df37aacc900f8270b1c6215028f6988eb1/themes\n[6]: http://prismjs.com/\n[7]: https://prismjs.com/plugins/line-numbers/\n[8]: https://github.com/PrismJS/prism/blob/master/plugins/line-numbers/prism-line-numbers.js#L69-L115\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","prismjs","remark"],"computedKeywords":[],"computedMetadata":{},"created":1494008774409,"modified":1561038580000,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:17.152Z","_searchInternal":{"concatenatedName":"gatsbyremarkprismjs","alternativeNames":["gatsbyremarkprismjs","gatsby remark prismjs","gatsby-remark-prismjs"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-remark-prismjs/CHANGELOG.md","jsDelivrHits":35,"objectID":"gatsby-remark-prismjs","_highlightResult":{"name":{"value":"gatsby-remark-prismjs","matchLevel":"none","matchedWords":[]},"description":{"value":"Adds syntax highlighting to code blocks at build time using PrismJS","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"prismjs","matchLevel":"none","matchedWords":[]},{"value":"remark","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyremarkprismjs","matchLevel":"none","matchedWords":[]},{"value":"gatsby remark prismjs","matchLevel":"none","matchedWords":[]},{"value":"gatsby-remark-prismjs","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-typography","downloadsLast30Days":86257,"downloadsRatio":0.0001889988656936081,"humanDownloadsLast30Days":"86.3k","popular":false,"version":"2.3.0","versions":{"1.6.0":"2017-08-01T00:40:38.993Z","1.6.1":"2017-08-01T03:16:40.861Z","1.6.2":"2017-08-01T16:54:26.633Z","1.6.3":"2017-08-02T17:10:59.507Z","1.7.0":"2017-08-03T23:03:40.372Z","1.7.1":"2017-08-04T17:58:39.736Z","1.7.2":"2017-08-05T01:30:23.017Z","1.7.3":"2017-08-11T20:03:06.709Z","1.7.4":"2017-08-14T21:24:31.134Z","1.7.5":"2017-08-14T22:46:11.449Z","1.7.6":"2017-08-19T01:52:36.018Z","1.8.0-alpha.22c8a6f1":"2017-08-24T16:12:31.276Z","2.0.0":"2017-08-25T18:07:03.787Z","1.7.7":"2017-08-25T18:21:56.251Z","1.7.8":"2017-08-30T22:58:45.363Z","1.7.9":"2017-08-31T23:41:44.246Z","1.8.0-alpha.76b32701":"2017-09-15T18:01:30.385Z","1.8.0-alpha.93f2e2a2":"2017-09-16T11:50:36.539Z","1.8.0-alpha.5db7a275":"2017-09-16T13:46:26.283Z","1.8.0-alpha.1460dad9":"2017-09-18T12:29:13.373Z","1.7.10":"2017-09-26T20:01:16.190Z","1.8.0-alpha.f20ac0ed":"2018-01-11T18:39:16.935Z","1.8.0-alpha.a0a09c94":"2018-01-11T18:48:09.665Z","1.8.0-alpha.b50f2063":"2018-01-11T18:55:15.164Z","1.8.0-alpha.03b9df85":"2018-01-12T14:36:23.034Z","1.8.0-alpha.e9df8e57":"2018-01-12T14:47:38.313Z","1.8.0-alpha.8c822451":"2018-01-12T15:01:04.156Z","1.8.0-alpha.e5586916":"2018-01-12T15:22:39.847Z","1.8.0-alpha.9da1bca1":"2018-01-12T18:07:42.025Z","1.8.0-alpha.aeb05561":"2018-01-18T01:53:12.865Z","1.8.0-alpha.7b47e00d":"2018-01-18T02:10:12.592Z","1.8.0-alpha.f5c1df61":"2018-01-18T17:30:37.113Z","1.8.0-alpha.926cb6da":"2018-01-21T01:42:27.685Z","1.8.0-alpha.3f307d61":"2018-01-21T02:23:09.727Z","1.7.11":"2018-01-23T19:19:17.226Z","1.8.0-alpha.d1544e1b":"2018-01-25T00:14:34.611Z","1.7.12":"2018-01-26T00:33:22.630Z","1.7.13":"2018-01-29T18:16:32.135Z","2.1.0-alpha.53bbd4cd":"2018-02-10T20:35:00.315Z","2.1.0-alpha.2b695217":"2018-02-10T22:36:59.708Z","2.1.0-alpha.32ef58da":"2018-02-11T03:44:58.417Z","2.1.0-alpha.5182142b":"2018-02-11T04:12:55.656Z","1.7.14":"2018-02-13T01:12:14.406Z","2.1.0-alpha.6ab84875":"2018-02-15T02:07:04.522Z","2.1.0-alpha.9d4de2a6":"2018-02-15T20:32:44.205Z","2.1.0-alpha.9e381f74":"2018-02-15T21:12:51.625Z","2.1.0-alpha.dd504153":"2018-02-15T21:30:02.319Z","2.1.0-alpha.b68b7f5c":"2018-02-15T22:01:03.381Z","2.1.0-alpha.bb258cb5":"2018-02-16T00:29:53.914Z","2.1.0-alpha.e28a1c8e":"2018-02-16T01:11:21.248Z","2.1.0-alpha.067e672c":"2018-02-17T02:45:30.652Z","2.1.0-alpha.d0b8dd9e":"2018-02-17T19:05:27.275Z","2.0.1-0":"2018-02-17T19:31:18.935Z","2.1.0-alpha.e66c6c9c":"2018-02-27T01:25:15.707Z","1.7.15":"2018-02-27T02:09:28.737Z","1.7.16":"2018-02-28T20:40:19.581Z","1.7.17":"2018-03-02T19:54:40.352Z","2.1.0-alpha.2cbec6d6":"2018-03-03T06:46:54.967Z","2.0.1-1":"2018-03-03T07:24:20.859Z","2.1.0-alpha.f98688ee":"2018-03-07T02:26:03.160Z","2.1.0-alpha.9fe50b00":"2018-03-08T03:04:38.556Z","1.7.18":"2018-03-08T05:23:53.032Z","2.1.0-alpha.34eda94b":"2018-03-17T21:22:32.137Z","2.1.0-alpha.12622d64":"2018-03-18T00:00:35.482Z","2.1.0-alpha.84bd71b4":"2018-03-18T00:40:28.798Z","2.1.0-alpha.6ad61a13":"2018-03-21T17:49:54.926Z","2.1.0-alpha.5f47082e":"2018-03-23T22:48:04.042Z","2.0.1-2":"2018-03-23T23:19:26.816Z","2.1.0-alpha.95fcd4af":"2018-03-29T02:22:56.660Z","2.1.0-alpha.20252dc3":"2018-03-29T02:44:42.874Z","2.1.0-alpha.4a09f745":"2018-04-05T22:15:07.903Z","2.1.0-alpha.76793cd8":"2018-04-07T22:12:43.087Z","2.1.0-alpha.5c9569c0":"2018-04-19T16:57:33.713Z","2.1.0-alpha.523a4286":"2018-04-19T23:52:41.496Z","2.1.0-alpha.5421f383":"2018-04-20T06:53:25.430Z","2.1.0-alpha.e9c3027b":"2018-04-20T17:57:22.551Z","2.0.1-3":"2018-04-22T01:54:30.719Z","2.0.1-4":"2018-04-25T16:25:53.849Z","2.0.1-5":"2018-04-26T18:20:05.236Z","2.0.1-6":"2018-05-02T01:58:06.927Z","2.0.1-7":"2018-05-11T21:44:26.536Z","2.0.1-9":"2018-05-15T20:29:57.944Z","2.0.1-10":"2018-05-31T14:05:37.602Z","2.0.1-11":"2018-05-31T17:18:38.846Z","2.0.1-12":"2018-06-11T15:25:27.117Z","2.0.1-13":"2018-06-11T16:55:48.949Z","2.2.0-alpha.8ac171a1":"2018-06-16T19:25:52.357Z","2.2.0-alpha.e328d33f":"2018-06-16T19:33:17.760Z","2.2.0-alpha.80a21f04":"2018-06-16T19:37:31.027Z","2.2.0-alpha.2":"2018-06-16T23:33:13.700Z","1.7.19":"2018-06-17T01:53:14.404Z","2.2.0-beta.0":"2018-06-17T06:54:05.260Z","2.2.0-beta.1":"2018-06-17T08:13:04.782Z","2.2.0-beta.2":"2018-06-20T20:45:38.416Z","2.2.0-beta.3":"2018-07-21T16:00:18.085Z","2.2.0-rc.0":"2018-08-21T00:59:03.190Z","2.2.0-rc.1":"2018-08-29T17:08:10.603Z","2.2.0-rc.2":"2018-08-29T18:29:20.953Z","2.2.0-rc.3":"2018-09-01T02:39:49.496Z","2.2.0":"2018-09-17T20:42:29.850Z","2.2.1":"2018-10-29T15:24:26.443Z","2.2.2":"2018-11-29T12:14:17.677Z","2.2.3":"2018-12-21T13:06:32.155Z","2.2.4":"2018-12-21T16:02:19.135Z","2.2.5":"2019-01-06T05:00:21.398Z","2.2.6":"2019-01-28T13:12:49.013Z","2.2.7":"2019-02-01T12:25:25.992Z","2.2.8":"2019-03-05T01:17:18.464Z","2.2.9":"2019-03-11T15:25:01.622Z","2.2.10":"2019-03-13T20:24:48.832Z","2.2.11":"2019-04-08T11:06:17.929Z","2.2.12":"2019-04-09T14:39:52.642Z","2.2.13":"2019-04-12T01:35:59.457Z","2.3.0":"2019-06-20T13:49:22.847Z"},"tags":{"latest":"2.3.0"},"description":"Gatsby plugin to setup server rendering of Typography.js&#39; CSS","dependencies":{"@babel/runtime":"^7.0.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4","react":"^16.8.6","react-dom":"^16.8.6","react-typography":"^0.16.18","typography":"^0.16.18"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-typography","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-typography","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-typography","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-typography\n\nA Gatsby plugin for utilizing the [Typography](https://kyleamathews.github.io/typography.js/) library with minimal configuration.\n\nSee it in action in the [Tutorial](https://www.gatsbyjs.org/tutorial/part-three/)\n([source](https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-typography))\n\n## Install\n\n`npm install --save gatsby-plugin-typography react-typography typography`\n\n## Why to use\n\nA typical `typography.js` file utilizing one of its themes might look like this:\n\n```javascript\nimport Typography from \"typography\"\nimport grandViewTheme from \"typography-theme-grand-view\"\n\nconst typography = new Typography(grandViewTheme)\n\n// Export helper functions\nexport const { scale, rhythm, options } = typography\nexport default typography\n```\n\nYou then have to take the exported stylesheets and inline them in your entry file. Since a theme comes with two fonts, you also have to make sure you have the fonts available somehow.\n\nBy using `gatsby-plugin-typography` and specifying the path to your `typography.js` file via the `pathToConfigModule` option (see below), the inclusion of your typography styles _and_ any relevant fonts is taken care of by a pair of helper methods under the hood, keeping your typography-related config in a single location and your entry file sparse.\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-typography`,\n options: {\n pathToConfigModule: `src/utils/typography`,\n },\n },\n ],\n}\n```\n\n## Options\n\n- `pathToConfigModule`: (string) The path to the file in which you export your typography configuration.\n- `omitGoogleFont`: (boolean, default: `false`) Typography includes [a helper](https://github.com/KyleAMathews/typography.js/blob/e7e71c82f63c7a146eb1b5ac7017695359dd9cba/packages/react-typography/src/GoogleFont.js) that makes a request to Google's font CDN for the fonts you need. You might, however, want to inject the fonts into JS or use a CDN of your choosing. Setting this value to `true` will make `gatsby-plugin-typography` skip the inclusion of this helper. **You will have to include the appropriate fonts yourself.**\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","typography","typography.js"],"computedKeywords":[],"computedMetadata":{},"created":1501548038993,"modified":1561038566683,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:06.931Z","_searchInternal":{"concatenatedName":"gatsbyplugintypography","alternativeNames":["gatsbyplugintypography","gatsby plugin typography","gatsby-plugin-typography"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-typography/CHANGELOG.md","jsDelivrHits":56,"objectID":"gatsby-plugin-typography","_highlightResult":{"name":{"value":"gatsby-plugin-typography","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin to setup server rendering of Typography.js' CSS","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"typography","matchLevel":"none","matchedWords":[]},{"value":"typography.js","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyplugintypography","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin typography","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-typography","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-catch-links","downloadsLast30Days":85554,"downloadsRatio":0.0001874585129966373,"humanDownloadsLast30Days":"85.6k","popular":false,"version":"2.1.0","versions":{"1.0.0-alpha12-alpha.117c94f8":"2017-02-14T00:02:27.692Z","1.0.0-alpha12-alpha.373740a8":"2017-02-14T00:36:17.032Z","1.0.0-alpha12-alpha.bdc68bfd":"2017-02-17T22:20:13.780Z","1.0.0-alpha12-alpha.faff3fa9":"2017-02-17T22:26:10.518Z","1.0.0-alpha12-alpha.a82bd105":"2017-02-18T00:07:22.257Z","1.0.0-alpha12-alpha.d452aed2":"2017-02-20T19:10:02.785Z","1.0.0-alpha12-alpha.40e6a4d1":"2017-02-20T19:29:46.032Z","1.0.0-alpha12-alpha.f4d91ef3":"2017-02-20T20:05:26.228Z","1.0.0-alpha12-alpha.659f61a4":"2017-02-20T23:23:39.055Z","1.0.0-alpha12-alpha.e1a3cfed":"2017-02-20T23:29:19.792Z","1.0.0-alpha12-alpha.70258e9c":"2017-02-22T00:46:30.858Z","1.0.0-alpha12":"2017-02-22T01:12:40.677Z","1.0.0-alpha12-alpha.209952c2":"2017-02-22T18:42:58.142Z","1.0.0-alpha12-alpha.8f812d13":"2017-02-22T19:08:49.634Z","1.0.0-alpha12-alpha.10a12536":"2017-02-22T22:35:29.065Z","1.0.0-alpha12-alpha.d82af48f":"2017-03-06T18:43:00.135Z","1.0.0-alpha12-alpha.9a2a3c59":"2017-03-06T19:06:19.826Z","1.0.0-alpha12-alpha.72e8aced":"2017-03-06T20:02:10.389Z","1.0.0-alpha12-alpha.04c05494":"2017-03-06T20:30:44.929Z","1.0.0-alpha12-alpha.352b3448":"2017-03-06T22:18:18.211Z","1.0.0-alpha12-alpha.f205e4d4":"2017-03-06T22:26:00.687Z","1.0.0-alpha12-alpha.3a216f9f":"2017-03-07T21:32:53.216Z","1.0.0-alpha12-alpha.3f98b323":"2017-03-08T03:20:32.096Z","1.0.0-alpha12-alpha.cfc93fc7":"2017-03-08T03:46:22.464Z","1.0.0-alpha12-alpha.e22dfd31":"2017-03-13T19:58:01.532Z","1.0.0-alpha12-alpha.3e72cc6f":"2017-03-13T20:13:40.358Z","1.0.0-alpha12-alpha.c8cb2100":"2017-03-13T22:29:17.234Z","1.0.0-alpha12-alpha.4ba57c84":"2017-03-14T19:05:06.947Z","1.0.0-alpha12-alpha.a7e9d9c0":"2017-03-14T19:18:20.678Z","1.0.0-alpha12-alpha.75167f51":"2017-03-15T01:04:19.596Z","1.0.0-alpha12-alpha.4af3700e":"2017-03-15T23:20:19.865Z","1.0.0-alpha12-alpha.dfc40de1":"2017-03-17T22:35:17.328Z","1.0.0-alpha12-alpha.f32320b1":"2017-03-20T21:35:05.222Z","1.0.0-alpha12-alpha.547467c5":"2017-03-20T21:48:12.259Z","1.0.0-alpha12-alpha.3d7a5eb6":"2017-03-21T01:49:49.382Z","1.0.0-alpha12-alpha.b3dbfd2b":"2017-03-21T18:21:56.160Z","1.0.0-alpha12-alpha.4575c38e":"2017-03-21T20:12:42.677Z","1.0.0-alpha12-alpha.1b1c742b":"2017-03-21T22:05:21.418Z","1.0.0-alpha12-alpha.545e4a03":"2017-03-21T22:09:07.752Z","1.0.0-alpha12-alpha.4f30010e":"2017-03-21T22:12:18.917Z","1.0.0-alpha12-alpha.e1f27e45":"2017-03-23T18:18:25.561Z","1.0.0-alpha12-alpha.d37d5d32":"2017-03-24T23:55:51.900Z","1.0.0-alpha12-alpha.81355cc0":"2017-03-27T16:11:46.098Z","1.0.0-alpha12-alpha.dbf1a599":"2017-03-27T16:28:29.914Z","1.0.0-alpha12-alpha.10141fd4":"2017-03-27T17:58:48.053Z","1.0.0-alpha12-alpha.6e55cfe7":"2017-03-27T18:39:53.319Z","1.0.0-alpha12-alpha.d7d6ef64":"2017-03-27T22:38:15.883Z","1.0.0-alpha12-alpha.dffeaa1f":"2017-03-28T13:15:05.533Z","1.0.0-alpha12-alpha.c155b956":"2017-03-28T13:39:18.918Z","1.0.0-alpha12-alpha.80e93d69":"2017-03-28T14:40:05.704Z","1.0.0-alpha12-alpha.4e93d2cf":"2017-03-28T19:06:23.651Z","1.0.0-alpha12-alpha.351006cf":"2017-03-28T22:13:11.019Z","1.0.0-alpha12-alpha.0b4b912a":"2017-04-10T22:34:05.935Z","1.0.0-alpha12-alpha.1fdb9004":"2017-04-11T00:38:25.457Z","1.0.0-alpha12-alpha.51e1923f":"2017-04-18T18:41:18.745Z","1.0.0-alpha12-alpha.571b4bbd":"2017-04-19T00:37:08.451Z","1.0.0-alpha12-alpha.c0bba969":"2017-04-19T20:36:03.476Z","1.0.0-alpha12-alpha.89d880ee":"2017-04-21T00:30:37.732Z","1.0.0-alpha12-alpha.b66dd8d3":"2017-04-21T00:37:25.867Z","1.0.0-alpha12-alpha.577b9e82":"2017-04-22T00:34:33.777Z","1.0.0-alpha12-alpha.8370739a":"2017-04-23T03:15:38.146Z","1.0.0-alpha13":"2017-04-24T22:09:14.952Z","1.0.0-alpha13-alpha.c6e3cbb2":"2017-04-26T19:36:49.951Z","1.0.0-alpha13-alpha.91dbde54":"2017-04-26T21:08:48.198Z","1.0.0-alpha13-alpha.ec011f40":"2017-04-27T00:57:56.309Z","1.0.0-alpha13-alpha.537d11c6":"2017-04-27T04:11:20.156Z","1.0.0-alpha13-alpha.0189ea42":"2017-04-28T22:29:23.612Z","1.0.0-alpha13-alpha.215cabc2":"2017-05-01T23:02:00.814Z","1.0.0-alpha13-alpha.526805ab":"2017-05-03T22:17:23.175Z","1.0.0-alpha13-alpha.0f0222b8":"2017-05-04T16:09:09.778Z","1.0.0-alpha13-alpha.7d186994":"2017-05-04T16:29:38.684Z","1.0.0-alpha13-alpha.a3ef328b":"2017-05-04T19:51:50.783Z","1.0.0-alpha13-alpha.84bd4b24":"2017-05-04T20:33:19.773Z","1.0.0-alpha13-alpha.7efda7f0":"2017-05-04T23:03:09.346Z","1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:02.292Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:33.367Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:32:09.469Z","1.0.0-alpha14":"2017-05-06T01:18:08.959Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:00.504Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:00.567Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:02.361Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:43:53.656Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:54:49.714Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:11:51.913Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:24.781Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:33:55.985Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:17.169Z","1.0.0-alpha15":"2017-05-16T09:12:40.457Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:17.139Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:29:38.807Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:29.214Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:21:55.900Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:27.734Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:19.867Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:29:43.079Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:05:45.126Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:26:58.283Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:42:42.676Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:39:57.820Z","1.0.0-alpha16":"2017-05-26T09:30:20.926Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:37.081Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:47:37.884Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:17.105Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:14.777Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:37:43.167Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:16:38.304Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:23.512Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:37.577Z","1.0.0-alpha17":"2017-06-02T18:44:51.147Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:35.736Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:37:50.317Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:38:50.613Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:33:45.266Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:05.140Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:51:49.402Z","1.0.0-alpha.22":"2017-06-08T04:27:44.903Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:00.217Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:16.228Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:31.771Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:05.990Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:25:33.173Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:07:11.186Z","1.0.0-beta.1":"2017-06-15T20:25:41.221Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:16:58.122Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:12.767Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:21.268Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:35:36.149Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:03.629Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:21.289Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:35.690Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:18:48.433Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:45.360Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:31.747Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:36.278Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:30.778Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:10.913Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:18.605Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:10:52.732Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:21:49.713Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:11.611Z","1.0.0-beta.6":"2017-07-02T06:42:53.571Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:40:39.244Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:26.083Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:25.109Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:29:58.538Z","1.0.0":"2017-07-06T19:43:19.527Z","1.0.1":"2017-07-06T19:48:46.424Z","1.0.2":"2017-08-05T19:09:40.529Z","1.0.3":"2017-08-11T14:03:00.212Z","1.0.4":"2017-08-11T20:02:43.195Z","1.0.5":"2017-08-19T01:52:01.860Z","1.1.0-alpha.22c8a6f1":"2017-08-24T16:12:10.620Z","2.0.0":"2017-08-25T18:06:46.649Z","1.0.6":"2017-08-25T18:21:40.996Z","1.0.7":"2017-08-30T22:58:24.730Z","1.0.8":"2017-08-31T23:41:02.211Z","1.1.0-alpha.76b32701":"2017-09-15T18:00:18.041Z","1.1.0-alpha.2e1e7782":"2017-09-15T18:12:02.757Z","1.1.0-alpha.93f2e2a2":"2017-09-16T11:49:29.709Z","1.1.0-alpha.5db7a275":"2017-09-16T13:45:27.808Z","1.1.0-alpha.1460dad9":"2017-09-18T12:28:11.653Z","1.0.9":"2017-10-02T22:15:49.739Z","1.0.10":"2017-11-28T02:23:10.617Z","1.0.11":"2017-11-28T20:22:57.545Z","1.0.12":"2017-11-28T23:37:33.329Z","1.0.13":"2017-11-29T00:09:11.356Z","1.0.14":"2017-12-10T00:45:14.768Z","1.1.0-alpha.f20ac0ed":"2018-01-11T18:38:35.996Z","1.1.0-alpha.a0a09c94":"2018-01-11T18:47:37.782Z","1.1.0-alpha.b50f2063":"2018-01-11T18:54:42.525Z","1.1.0-alpha.03b9df85":"2018-01-12T14:35:47.724Z","1.1.0-alpha.e9df8e57":"2018-01-12T14:47:04.443Z","1.1.0-alpha.8c822451":"2018-01-12T15:00:35.425Z","1.1.0-alpha.e5586916":"2018-01-12T15:22:03.708Z","1.1.0-alpha.9da1bca1":"2018-01-12T18:07:04.742Z","1.1.0-alpha.aeb05561":"2018-01-18T01:52:38.031Z","1.1.0-alpha.7b47e00d":"2018-01-18T02:09:46.101Z","1.1.0-alpha.f5c1df61":"2018-01-18T17:29:58.981Z","1.1.0-alpha.926cb6da":"2018-01-21T01:41:57.725Z","1.1.0-alpha.3f307d61":"2018-01-21T02:22:32.470Z","1.0.15":"2018-01-23T19:17:08.411Z","1.1.0-alpha.d1544e1b":"2018-01-25T00:13:55.041Z","1.1.0-alpha.53bbd4cd":"2018-02-10T20:34:10.095Z","1.1.0-alpha.2b695217":"2018-02-10T22:36:20.731Z","1.1.0-alpha.32ef58da":"2018-02-11T03:44:17.118Z","1.1.0-alpha.5182142b":"2018-02-11T04:11:58.338Z","1.0.16":"2018-02-13T01:11:40.292Z","1.1.0-alpha.6ab84875":"2018-02-15T02:06:17.632Z","1.1.0-alpha.9d4de2a6":"2018-02-15T20:31:59.271Z","2.1.0-alpha.9e381f74":"2018-02-15T21:12:13.478Z","2.1.0-alpha.dd504153":"2018-02-15T21:29:05.512Z","2.1.0-alpha.b68b7f5c":"2018-02-15T22:00:16.851Z","2.1.0-alpha.bb258cb5":"2018-02-16T00:29:18.762Z","2.1.0-alpha.e28a1c8e":"2018-02-16T01:10:47.015Z","2.1.0-alpha.067e672c":"2018-02-17T02:44:48.980Z","2.1.0-alpha.d0b8dd9e":"2018-02-17T19:04:47.719Z","2.0.1-0":"2018-02-17T19:30:39.051Z","1.0.17":"2018-02-21T20:41:20.452Z","2.1.0-alpha.e66c6c9c":"2018-02-27T01:24:26.152Z","1.0.18":"2018-02-28T20:39:30.478Z","1.0.19":"2018-03-02T19:54:40.347Z","2.1.0-alpha.2cbec6d6":"2018-03-03T06:46:13.866Z","2.0.1-1":"2018-03-03T07:23:12.298Z","2.1.0-alpha.f98688ee":"2018-03-07T02:25:23.423Z","2.1.0-alpha.9fe50b00":"2018-03-08T03:04:04.590Z","2.1.0-alpha.34eda94b":"2018-03-17T21:21:58.100Z","2.1.0-alpha.12622d64":"2018-03-17T23:59:41.422Z","2.1.0-alpha.84bd71b4":"2018-03-18T00:39:21.702Z","2.1.0-alpha.6ad61a13":"2018-03-21T17:48:58.804Z","2.1.0-alpha.5f47082e":"2018-03-23T22:47:04.694Z","2.0.1-2":"2018-03-23T23:18:31.464Z","2.1.0-alpha.95fcd4af":"2018-03-29T02:21:50.292Z","2.1.0-alpha.20252dc3":"2018-03-29T02:43:31.039Z","2.1.0-alpha.4a09f745":"2018-04-05T22:14:35.160Z","2.1.0-alpha.76793cd8":"2018-04-07T22:11:50.122Z","2.1.0-alpha.5c9569c0":"2018-04-19T16:56:16.812Z","2.1.0-alpha.523a4286":"2018-04-19T23:51:04.773Z","2.1.0-alpha.5421f383":"2018-04-20T06:52:15.668Z","2.1.0-alpha.e9c3027b":"2018-04-20T17:55:36.988Z","2.0.1-3":"2018-04-22T01:53:23.016Z","2.0.1-4":"2018-04-25T16:24:40.262Z","2.0.1-5":"2018-04-26T18:18:52.147Z","1.0.22":"2018-05-04T00:19:26.648Z","2.0.1-6":"2018-05-11T21:42:53.418Z","2.0.1-8":"2018-05-15T19:53:12.467Z","2.0.1-9":"2018-05-18T15:34:54.532Z","2.0.1-10":"2018-05-31T14:03:05.111Z","2.0.1-11":"2018-05-31T17:03:53.477Z","2.0.1-12":"2018-06-11T15:21:38.374Z","2.0.1-13":"2018-06-11T16:53:55.632Z","1.0.23":"2018-06-14T09:03:56.648Z","2.0.1-14":"2018-06-14T12:39:30.394Z","2.0.2-alpha.1":"2018-06-16T19:08:21.005Z","2.1.0-alpha.8ac171a1":"2018-06-16T19:24:54.184Z","2.1.0-alpha.e328d33f":"2018-06-16T19:32:19.549Z","2.1.0-alpha.80a21f04":"2018-06-16T19:36:34.466Z","2.0.2-alpha.2":"2018-06-16T23:32:17.207Z","1.0.24":"2018-06-17T01:53:04.461Z","2.0.2-alpha.3":"2018-06-17T02:55:58.329Z","2.0.2-alpha.4":"2018-06-17T05:04:02.275Z","2.0.2-beta.0":"2018-06-17T06:53:42.092Z","2.0.2-beta.1":"2018-06-17T08:12:39.906Z","2.0.2-beta.2":"2018-06-20T20:45:15.925Z","2.0.2-beta.3":"2018-07-17T12:44:30.553Z","2.0.2-beta.4":"2018-07-21T15:59:58.639Z","2.0.2-beta.5":"2018-08-01T13:08:06.826Z","2.0.2-beta.6":"2018-08-03T21:02:05.901Z","2.0.2-beta.7":"2018-08-04T18:35:59.973Z","2.0.2-beta.8":"2018-08-14T13:55:28.993Z","2.0.2-beta.9":"2018-08-15T08:41:08.354Z","2.0.2-beta.10":"2018-08-17T11:26:35.893Z","2.0.2-beta.11":"2018-08-20T19:52:44.940Z","2.0.2-rc.0":"2018-08-21T00:58:03.798Z","2.0.2-rc.1":"2018-08-29T18:28:23.479Z","2.0.2":"2018-09-17T20:41:15.005Z","2.0.3":"2018-09-24T12:38:29.300Z","1.0.25":"2018-09-28T10:31:48.526Z","1.0.26":"2018-10-05T11:44:25.954Z","2.0.4":"2018-10-05T23:41:01.998Z","2.0.5":"2018-10-16T21:08:02.048Z","2.0.6":"2018-10-29T15:23:33.891Z","2.0.7":"2018-11-08T01:36:53.051Z","2.0.8":"2018-11-09T00:16:54.527Z","2.0.9":"2018-11-29T12:13:05.048Z","2.0.10":"2019-02-01T12:24:46.924Z","2.0.11":"2019-02-12T18:01:20.858Z","2.0.12":"2019-02-28T11:32:14.978Z","2.0.13-alpha.0":"2019-03-04T07:13:39.057Z","2.0.13":"2019-03-11T15:24:00.262Z","2.0.12-asset-prefix.218":"2019-03-28T16:32:30.618Z","2.0.12-asset-prefix.226":"2019-04-30T20:53:52.431Z","2.0.14":"2019-05-14T20:03:30.717Z","2.0.15":"2019-05-22T14:47:32.381Z","2.1.0":"2019-06-20T13:48:33.982Z"},"tags":{"latest":"2.1.0","latest-v1":"1.0.26","asset-prefix":"2.0.12-asset-prefix.226"},"description":"Intercepts local links from markdown and other non-react pages and does a client-side pushState to avoid the browser having to refresh the page.","dependencies":{"@babel/runtime":"^7.0.0","escape-string-regexp":"^1.0.5"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-catch-links","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-catch-links","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-catch-links","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-catch-links\n\nThis plugin intercepts all local links that have not been created in React using [`gatsby-link`](https://gatsbyjs.org/docs/gatsby-link), and replaces their behavior with that of the `gatsby-link` [`navigate`](https://gatsbyjs.org/docs/gatsby-link/#programmatic-navigation). This avoids the browser having to refresh the whole page when navigating between local pages, preserving the Single Page Application (SPA) feel.\n\nExample use cases:\n\n- A markdown file with relative links (transformed\n to `a` tags by\n [`gatsby-transformer-remark`](/packages/gatsby-transformer-remark/))\n- An `a` tag that has been created by a Content Management System (CMS) WYSIWYG editor\n\n## Installation\n\n```\nnpm install --save gatsby-plugin-catch-links\n```\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nplugins: [`gatsby-plugin-catch-links`]\n```\n\n## Examples\n\n- Check out this live example [_Using Remark_](https://using-remark.gatsbyjs.org/copy-linked-files-intercepting-local-links/#intercepting-local-links) to see this plugin in action. The full source code for this example can be found here [here](https://github.com/gatsbyjs/gatsby/tree/master/examples/using-remark).\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1487030547692,"modified":1561038516618,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:14:55.587Z","_searchInternal":{"concatenatedName":"gatsbyplugincatchlinks","alternativeNames":["gatsbyplugincatchlinks","gatsby plugin catch links","gatsby-plugin-catch-links"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-catch-links/CHANGELOG.md","jsDelivrHits":175,"objectID":"gatsby-plugin-catch-links","_highlightResult":{"name":{"value":"gatsby-plugin-catch-links","matchLevel":"none","matchedWords":[]},"description":{"value":"Intercepts local links from markdown and other non-react pages and does a client-side pushState to avoid the browser having to refresh the page.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyplugincatchlinks","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin catch links","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-catch-links","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-robots-txt","downloadsLast30Days":83107,"downloadsRatio":0.0001820968585876936,"humanDownloadsLast30Days":"83.1k","popular":false,"version":"1.4.0","versions":{"1.0.0":"2018-04-22T10:38:47.242Z","1.0.1":"2018-04-22T14:24:51.683Z","1.0.2":"2018-04-29T14:20:32.131Z","1.1.0":"2018-07-07T22:15:42.232Z","1.2.0":"2018-07-23T20:01:59.118Z","1.3.0":"2018-07-31T19:50:39.728Z","1.4.0":"2019-01-26T20:08:15.632Z"},"tags":{"latest":"1.4.0"},"description":"Gatsby plugin that automatically creates robots.txt for your site","dependencies":{"@babel/runtime":"^7.3.1","generate-robotstxt":"^6.0.0"},"devDependencies":{"@babel/cli":"^7.2.3","@babel/plugin-proposal-object-rest-spread":"^7.3.1","@babel/plugin-transform-runtime":"^7.2.0","@babel/preset-env":"^7.3.1","babel-eslint":"^10.0.1","eslint":"^5.12.1","eslint-plugin-babel":"^5.3.0","eslint-plugin-markdown":"^1.0.0","jest":"^24.0.0","memory-fs":"^0.4.1","prettier":"^1.16.1","semantic-release":"^15.13.3","travis-deploy-once":"^5.0.11"},"repository":{"url":"https://github.com/mdreizin/gatsby-plugin-robots-txt","project":"gatsby-plugin-robots-txt","user":"mdreizin","host":"github.com","path":"","head":"2da7db0c22c44a12bf67acc5ff8a9ce4b6168248","branch":"2da7db0c22c44a12bf67acc5ff8a9ce4b6168248"},"githubRepo":{"user":"mdreizin","project":"gatsby-plugin-robots-txt","path":"","head":"2da7db0c22c44a12bf67acc5ff8a9ce4b6168248"},"gitHead":"2da7db0c22c44a12bf67acc5ff8a9ce4b6168248","readme":"[![NPM version](https://img.shields.io/npm/v/gatsby-plugin-robots-txt.svg)](https://www.npmjs.org/package/gatsby-plugin-robots-txt)\n[![Travis build status](https://travis-ci.org/mdreizin/gatsby-plugin-robots-txt.svg?branch=master)](https://travis-ci.org/mdreizin/gatsby-plugin-robots-txt)\n[![AppVeyor build status](https://ci.appveyor.com/api/projects/status/ow75w9pjm7kf3wps/branch/master?svg=true)](https://ci.appveyor.com/project/mdreizin/gatsby-plugin-robots-txt/branch/master)\n[![Maintainability](https://api.codeclimate.com/v1/badges/03b12a836565bd04674c/maintainability)](https://codeclimate.com/github/mdreizin/gatsby-plugin-robots-txt/maintainability)\n[![Test Coverage](https://api.codeclimate.com/v1/badges/03b12a836565bd04674c/test_coverage)](https://codeclimate.com/github/mdreizin/gatsby-plugin-robots-txt/test_coverage)\n[![Dependency Status](https://img.shields.io/david/mdreizin/gatsby-plugin-robots-txt.svg)](https://david-dm.org/mdreizin/gatsby-plugin-robots-txt)\n[![Development Dependency Status](https://img.shields.io/david/dev/mdreizin/gatsby-plugin-robots-txt.svg)](https://david-dm.org/mdreizin/gatsby-plugin-robots-txt#info=devDependencies)\n[![Greenkeeper badge](https://badges.greenkeeper.io/mdreizin/gatsby-plugin-robots-txt.svg)](https://greenkeeper.io/)\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fmdreizin%2Fgatsby-plugin-robots-txt.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.com%2Fmdreizin%2Fgatsby-plugin-robots-txt?ref=badge_shield)\n\n# gatsby-plugin-robots-txt\n\n> Create `robots.txt` for your Gatsby site.\n\n## Install\n\n`yarn add gatsby-plugin-robots-txt`\n\nor\n\n`npm install --save gatsby-plugin-robots-txt`\n\n## How To Use\n\n`gatsby-config.js`\n\n```js\nmodule.exports = {\n siteMetadata: {\n siteUrl: 'https://www.example.com'\n },\n plugins: ['gatsby-plugin-robots-txt']\n};\n```\n\n## Options\n\nThis plugin uses [`generate-robotstxt`](https://github.com/itgalaxy/generate-robotstxt#usage) to generate content of `robots.txt` and it has the following options:\n\n| Name | Type | Default | Description |\n| :----------: | :--------: | :-----------------------------------: | :----------------------------------------------------------------------------: |\n| `host` | `String` | `${siteMetadata.siteUrl}` | Host of your site |\n| `sitemap` | `String` | `${siteMetadata.siteUrl}/sitemap.xml` | Path to `sitemap.xml` |\n| `policy` | `Policy[]` | `[]` | List of [`Policy`](https://github.com/itgalaxy/generate-robotstxt#usage) rules |\n| `configFile` | `String` | `undefined` | Path to external config file |\n| `output` | `String` | `/robots.txt` | Path where to create the `robots.txt` |\n\n`gatsby-config.js`\n\n```js\nmodule.exports = {\n plugins: [\n {\n resolve: 'gatsby-plugin-robots-txt',\n options: {\n host: 'https://www.example.com',\n sitemap: 'https://www.example.com/sitemap.xml',\n policy: [{ userAgent: '*', allow: '/' }]\n }\n }\n ]\n};\n```\n\n### `env`-option\n\nYou can use the `env` option to set specific options in specific environment:\n\n`gatsby-config.js`\n\n```js\nmodule.exports = {\n plugins: [\n {\n resolve: 'gatsby-plugin-robots-txt',\n options: {\n host: 'https://www.example.com',\n sitemap: 'https://www.example.com/sitemap.xml',\n env: {\n development: {\n policy: [{ userAgent: '*', disallow: ['/'] }]\n },\n production: {\n policy: [{ userAgent: '*', allow: '/' }]\n }\n }\n }\n }\n ]\n};\n```\n\nThe `env` key will be taken from `process.env.NODE_ENV`, when this is not available then it defaults to `development`.\n\nYou can resolve the `env` key by using `resolveEnv` function:\n\n`gatsby-config.js`\n\n```js\nmodule.exports = {\n plugins: [\n {\n resolve: 'gatsby-plugin-robots-txt',\n options: {\n host: 'https://www.example.com',\n sitemap: 'https://www.example.com/sitemap.xml',\n resolveEnv: () => process.env.GATSBY_ENV,\n env: {\n development: {\n policy: [{ userAgent: '*', disallow: ['/'] }]\n },\n production: {\n policy: [{ userAgent: '*', allow: '/' }]\n }\n }\n }\n }\n ]\n};\n```\n\n### `configFile`-option\n\nYou can use the `configFile` option to set specific external configuration:\n\n`gatsby-config.js`\n\n```js\nmodule.exports = {\n plugins: [\n {\n resolve: 'gatsby-plugin-robots-txt',\n options: {\n configFile: 'robots-txt.config.js'\n }\n }\n ]\n};\n```\n\n`robots-txt.config.js`\n\n```js\nmodule.exports = {\n host: 'https://www.example.com',\n sitemap: 'https://www.example.com/sitemap.xml',\n policy: [{ userAgent: '*' }]\n};\n```\n\n#### Netlify\n\nIf you would like to disable crawlers for [deploy-previews](https://www.netlify.com/blog/2016/07/20/introducing-deploy-previews-in-netlify/) you can use the following snippet:\n\n`gatsby-config.js`\n\n```js\nconst {\n NODE_ENV,\n URL: NETLIFY_SITE_URL = 'https://www.example.com',\n DEPLOY_PRIME_URL: NETLIFY_DEPLOY_URL = NETLIFY_SITE_URL,\n CONTEXT: NETLIFY_ENV = NODE_ENV\n} = process.env;\nconst isNetlifyProduction = NETLIFY_ENV === 'production';\nconst siteUrl = isNetlifyProduction ? NETLIFY_SITE_URL : NETLIFY_DEPLOY_URL;\n\nmodule.exports = {\n siteMetadata: {\n siteUrl\n },\n plugins: [\n {\n resolve: 'gatsby-plugin-robots-txt',\n options: {\n resolveEnv: () => NETLIFY_ENV,\n env: {\n production: {\n policy: [{ userAgent: '*' }]\n },\n 'branch-deploy': {\n policy: [{ userAgent: '*', disallow: ['/'] }],\n sitemap: null,\n host: null\n },\n 'deploy-preview': {\n policy: [{ userAgent: '*', disallow: ['/'] }],\n sitemap: null,\n host: null\n }\n }\n }\n }\n ]\n};\n```\n\n### Query\nBy default the site URL will come from the Gatsby node `site.siteMeta.siteUrl`. Like in [Gatsby's sitemap plugin](https://www.gatsbyjs.org/packages/gatsby-plugin-sitemap/) an optional GraphQL query can be used to provide a different value from another data source as long as it returns the same shape:\n\n`gatsby-config.js`\n\n```js\nmodule.exports = {\n plugins: [\n {\n resolve: 'gatsby-plugin-robots-txt',\n options: {\n query: `{\n site: MyCustomDataSource {\n siteMetadata {\n siteUrl\n }\n }\n }`\n }\n }\n ]\n};\n```\n\n## License\n\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fmdreizin%2Fgatsby-plugin-robots-txt.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Fmdreizin%2Fgatsby-plugin-robots-txt?ref=badge_large)\n","owner":{"name":"mdreizin","avatar":"https://github.com/mdreizin.png","link":"https://github.com/mdreizin"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1524393527151,"modified":1548533298101,"lastPublisher":{"name":"mdreizin","email":"marat.dreizin@gmail.com","avatar":"https://gravatar.com/avatar/cf1dba3adddf45902af811bd23424a01","link":"https://www.npmjs.com/~mdreizin"},"owners":[{"name":"mdreizin","email":"marat.dreizin@gmail.com","avatar":"https://gravatar.com/avatar/cf1dba3adddf45902af811bd23424a01","link":"https://www.npmjs.com/~mdreizin"}],"lastCrawl":"2019-06-24T10:15:06.764Z","_searchInternal":{"concatenatedName":"gatsbypluginrobotstxt","alternativeNames":["gatsbypluginrobotstxt","gatsby plugin robots txt","gatsby-plugin-robots-txt"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":0,"objectID":"gatsby-plugin-robots-txt","_highlightResult":{"name":{"value":"gatsby-plugin-robots-txt","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin that automatically creates robots.txt for your site","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"mdreizin","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"mdreizin","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginrobotstxt","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin robots txt","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-robots-txt","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-feed","downloadsLast30Days":79355,"downloadsRatio":0.0001738758012348710,"humanDownloadsLast30Days":"79.4k","popular":false,"version":"2.3.1","versions":{"1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:08.569Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:51:52.074Z","1.0.0-alpha20":"2017-06-06T02:01:12.295Z","1.0.0-alpha.22":"2017-06-08T04:27:47.420Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:02.615Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:18.631Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:34.825Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:09.546Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:25:37.815Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:07:13.147Z","1.0.0-alpha.23":"2017-06-14T00:30:10.582Z","1.0.0-beta.1":"2017-06-15T20:25:43.605Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:02.807Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:15.959Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:24.916Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:35:40.459Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:06.242Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:24.334Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:37.844Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:18:51.433Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:47.084Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:33.565Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:38.542Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:33.142Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:12.898Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:20.517Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:10:55.372Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:21:51.139Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:11.625Z","1.0.0-beta.6":"2017-07-02T06:42:53.510Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:40:40.308Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:26.082Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:25.067Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:29:58.578Z","1.0.0":"2017-07-06T19:43:19.619Z","1.0.1":"2017-07-06T19:48:46.446Z","1.0.9":"2017-07-10T00:16:19.148Z","1.3.0":"2017-07-19T06:31:55.160Z","1.3.1":"2017-07-19T19:32:31.245Z","1.3.2":"2017-08-02T17:10:56.019Z","1.3.3":"2017-08-11T14:03:05.022Z","1.3.4":"2017-08-11T20:02:48.125Z","1.3.5":"2017-08-19T01:52:06.700Z","1.3.6":"2017-08-22T15:39:35.725Z","1.4.0-alpha.22c8a6f1":"2017-08-24T16:12:13.455Z","2.0.0":"2017-08-25T18:06:49.009Z","1.3.7":"2017-08-25T18:21:43.177Z","1.3.8":"2017-08-30T22:58:28.414Z","1.3.9":"2017-08-31T23:41:16.023Z","1.4.0-alpha.76b32701":"2017-09-15T18:00:31.039Z","1.4.0-alpha.2e1e7782":"2017-09-15T18:12:15.990Z","1.4.0-alpha.93f2e2a2":"2017-09-16T11:49:41.576Z","1.4.0-alpha.5db7a275":"2017-09-16T13:45:38.195Z","1.4.0-alpha.1460dad9":"2017-09-18T12:28:22.009Z","1.3.10":"2017-10-24T01:06:51.194Z","1.3.11":"2017-10-25T20:07:53.438Z","1.3.12":"2017-11-07T08:15:40.301Z","1.3.13":"2017-11-10T18:58:25.204Z","1.3.14":"2017-11-29T00:09:18.418Z","1.3.15":"2017-12-10T00:45:18.450Z","1.4.0-alpha.f20ac0ed":"2018-01-11T18:38:43.044Z","1.4.0-alpha.a0a09c94":"2018-01-11T18:47:42.787Z","1.4.0-alpha.b50f2063":"2018-01-11T18:54:48.121Z","1.4.0-alpha.03b9df85":"2018-01-12T14:35:52.891Z","1.4.0-alpha.e9df8e57":"2018-01-12T14:47:09.700Z","1.4.0-alpha.8c822451":"2018-01-12T15:00:39.538Z","1.4.0-alpha.e5586916":"2018-01-12T15:22:10.290Z","1.4.0-alpha.9da1bca1":"2018-01-12T18:07:11.622Z","1.4.0-alpha.aeb05561":"2018-01-18T01:52:42.503Z","1.4.0-alpha.7b47e00d":"2018-01-18T02:09:50.075Z","1.4.0-alpha.f5c1df61":"2018-01-18T17:30:05.258Z","1.4.0-alpha.926cb6da":"2018-01-21T01:42:03.138Z","1.4.0-alpha.3f307d61":"2018-01-21T02:22:37.560Z","1.3.16":"2018-01-23T19:17:20.129Z","1.4.0-alpha.d1544e1b":"2018-01-25T00:14:01.676Z","1.3.17":"2018-02-06T16:49:13.320Z","1.4.0-alpha.53bbd4cd":"2018-02-10T20:34:15.692Z","1.4.0-alpha.2b695217":"2018-02-10T22:36:27.315Z","1.4.0-alpha.32ef58da":"2018-02-11T03:44:24.303Z","1.4.0-alpha.5182142b":"2018-02-11T04:12:07.910Z","1.3.18":"2018-02-13T01:11:46.143Z","1.4.0-alpha.6ab84875":"2018-02-15T02:06:26.178Z","1.4.0-alpha.9d4de2a6":"2018-02-15T20:32:07.653Z","1.4.0-alpha.1a8f691e":"2018-02-15T21:00:50.603Z","1.4.0-alpha.9e381f74":"2018-02-15T21:12:19.797Z","1.4.0-alpha.dd504153":"2018-02-15T21:29:18.989Z","1.4.0-alpha.b68b7f5c":"2018-02-15T22:00:25.145Z","1.4.0-alpha.bb258cb5":"2018-02-16T00:29:24.623Z","1.4.0-alpha.e28a1c8e":"2018-02-16T01:10:51.788Z","1.4.0-alpha.067e672c":"2018-02-17T02:44:55.294Z","1.4.0-alpha.d0b8dd9e":"2018-02-17T19:04:52.798Z","1.3.19-0":"2018-02-17T19:30:46.521Z","1.4.0-alpha.e66c6c9c":"2018-02-27T01:24:37.087Z","1.3.19":"2018-02-28T20:39:39.266Z","1.4.0-alpha.2cbec6d6":"2018-03-03T06:46:19.726Z","1.3.19-1":"2018-03-03T07:23:19.560Z","1.4.0-alpha.f98688ee":"2018-03-07T02:25:29.684Z","1.4.0-alpha.9fe50b00":"2018-03-08T03:04:08.870Z","1.3.20":"2018-03-08T22:56:27.114Z","1.4.0-alpha.34eda94b":"2018-03-17T21:22:04.667Z","1.4.0-alpha.12622d64":"2018-03-17T23:59:50.440Z","1.4.0-alpha.84bd71b4":"2018-03-18T00:39:30.158Z","1.4.0-alpha.6ad61a13":"2018-03-21T17:49:07.253Z","1.4.0-alpha.5f47082e":"2018-03-23T22:47:13.783Z","1.3.19-2":"2018-03-23T23:18:39.547Z","1.4.0-alpha.95fcd4af":"2018-03-29T02:22:01.077Z","1.4.0-alpha.20252dc3":"2018-03-29T02:43:43.572Z","1.4.0-alpha.4a09f745":"2018-04-05T22:14:41.366Z","1.4.0-alpha.76793cd8":"2018-04-07T22:11:57.191Z","1.3.21":"2018-04-19T16:33:00.112Z","1.4.0-alpha.5c9569c0":"2018-04-19T16:56:34.287Z","1.4.0-alpha.523a4286":"2018-04-19T23:51:22.965Z","1.4.0-alpha.5421f383":"2018-04-20T06:52:23.989Z","1.4.0-alpha.e9c3027b":"2018-04-20T17:55:52.995Z","1.3.19-3":"2018-04-22T01:53:31.484Z","1.3.19-4":"2018-04-25T16:24:53.535Z","1.3.19-5":"2018-04-26T18:19:04.723Z","1.3.22":"2018-05-10T15:20:54.613Z","1.3.19-6":"2018-05-11T21:43:08.693Z","1.3.19-8":"2018-05-15T19:53:35.378Z","1.3.19-9":"2018-05-18T15:35:08.608Z","1.3.23":"2018-05-31T12:38:12.447Z","1.3.19-10":"2018-05-31T14:03:20.971Z","1.3.19-11":"2018-05-31T17:04:29.320Z","1.3.24":"2018-05-31T18:45:58.861Z","1.3.19-12":"2018-06-11T15:21:49.273Z","1.3.19-13":"2018-06-11T16:54:13.150Z","1.3.25":"2018-06-14T09:03:58.765Z","1.3.19-14":"2018-06-14T12:39:30.976Z","2.0.0-alpha.1":"2018-06-16T19:08:27.940Z","2.0.0-alpha.8ac171a1":"2018-06-16T19:25:02.489Z","2.0.0-alpha.e328d33f":"2018-06-16T19:32:31.316Z","2.0.0-alpha.80a21f04":"2018-06-16T19:36:41.381Z","2.0.0-alpha.2":"2018-06-16T23:32:27.338Z","2.0.0-beta.0":"2018-06-17T06:53:45.413Z","2.0.0-beta.1":"2018-06-17T08:12:43.216Z","2.0.0-beta.2":"2018-06-20T20:45:19.185Z","2.0.0-beta.3":"2018-06-25T20:19:27.951Z","2.0.0-beta.4":"2018-07-21T16:00:01.178Z","2.0.0-rc.0":"2018-08-21T00:58:12.453Z","2.0.0-rc.1":"2018-08-29T17:08:10.432Z","2.0.0-rc.2":"2018-08-29T18:28:30.152Z","2.0.5":"2018-09-17T20:41:26.728Z","2.0.6":"2018-10-01T12:56:03.740Z","2.0.7":"2018-10-05T23:41:01.918Z","2.0.8":"2018-10-09T14:24:22.185Z","2.0.9":"2018-10-29T15:23:38.371Z","2.0.10":"2018-11-29T12:13:20.319Z","2.0.11":"2018-12-01T22:52:42.958Z","2.0.12":"2019-01-28T16:58:27.711Z","2.0.13":"2019-02-01T12:24:55.079Z","2.0.14":"2019-02-25T23:55:58.474Z","2.0.15-alpha.0":"2019-03-04T07:13:41.503Z","2.0.15":"2019-03-11T15:24:07.775Z","2.1.0":"2019-03-21T16:48:23.448Z","2.0.14-asset-prefix.357":"2019-03-28T16:32:30.823Z","2.1.1":"2019-04-17T01:40:56.265Z","2.1.2":"2019-04-30T07:05:50.202Z","2.0.14-asset-prefix.365":"2019-04-30T20:53:52.541Z","2.0.14-asset-prefix.371":"2019-04-30T21:51:13.660Z","2.0.14-asset-prefix.372":"2019-04-30T21:54:39.587Z","2.2.0":"2019-05-02T19:09:52.249Z","2.2.1":"2019-05-22T14:47:32.384Z","2.2.2":"2019-05-31T07:41:39.623Z","2.2.3":"2019-06-07T18:34:03.837Z","2.3.0":"2019-06-20T13:48:39.809Z","2.3.1":"2019-06-24T10:31:52.537Z"},"tags":{"latest":"2.3.1","asset-prefix":"2.0.14-asset-prefix.372"},"description":"Creates an RSS feed for your Gatsby site.","dependencies":{"@babel/runtime":"^7.0.0","@hapi/joi":"^14.0.0","fs-extra":"^7.0.1","lodash.merge":"^4.6.0","rss":"^1.2.2"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-feed","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-feed","head":"023135d6c30dc93eb46edb563c03e89134b3733e","branch":"023135d6c30dc93eb46edb563c03e89134b3733e"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-feed","head":"023135d6c30dc93eb46edb563c03e89134b3733e"},"gitHead":"023135d6c30dc93eb46edb563c03e89134b3733e","readme":"# gatsby-plugin-feed\n\nCreate an RSS feed (or multiple feeds) for your Gatsby site.\n\n## Install\n\n`npm install --save gatsby-plugin-feed`\n\n## How to Use\n\n```javascript\n// In your gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-feed`,\n options: {\n query: `\n {\n site {\n siteMetadata {\n title\n description\n siteUrl\n site_url: siteUrl\n }\n }\n }\n `,\n feeds: [\n {\n serialize: ({ query: { site, allMarkdownRemark } }) => {\n return allMarkdownRemark.edges.map(edge => {\n return Object.assign({}, edge.node.frontmatter, {\n description: edge.node.excerpt,\n date: edge.node.frontmatter.date,\n url: site.siteMetadata.siteUrl + edge.node.fields.slug,\n guid: site.siteMetadata.siteUrl + edge.node.fields.slug,\n custom_elements: [{ \"content:encoded\": edge.node.html }],\n })\n })\n },\n query: `\n {\n allMarkdownRemark(\n sort: { order: DESC, fields: [frontmatter___date] },\n ) {\n edges {\n node {\n excerpt\n html\n fields { slug }\n frontmatter {\n title\n date\n }\n }\n }\n }\n }\n `,\n output: \"/rss.xml\",\n title: \"Your Site's RSS Feed\",\n // optional configuration to insert feed reference in pages:\n // if `string` is used, it will be used to create RegExp and then test if pathname of\n // current page satisfied this regular expression;\n // if not provided or `undefined`, all pages will have feed reference inserted\n match: \"^/blog/\",\n },\n ],\n },\n },\n ],\n}\n```\n\nEach feed must include `output`, `query`, and `title`. Additionally, it is strongly recommended to pass a custom `serialize` function, otherwise an internal serialize function will be used which may not exactly match your particular use case.\n\n`match` is an optional configuration, indicating which pages will have feed reference included. The accepted types of `match` are `string` or `undefined`. By default, when `match` is not configured, all pages will have feed reference inserted. If `string` is provided, it will be used to build a RegExp and then to test whether `pathname` of current page satisifed this regular expression. Only pages that satisifed this rule will have feed reference included.\n\nAll additional options are passed through to the [`rss`][rss] utility. For more info on those additional options, [explore the `itemOptions` section of the `rss` package](https://www.npmjs.com/package/rss#itemoptions).\n\nCheck out an example of [how you could implement](https://www.gatsbyjs.org/docs/adding-an-rss-feed/) to your own site, with a custom `serialize` function, and additional functionality.\n\n_NOTE: This plugin only generates the `xml` file(s) when run in `production` mode! To test your feed, run: `gatsby build && gatsby serve`._\n\n[rss]: https://www.npmjs.com/package/rss\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["atom","feed","gatsby","gatsby-plugin","rss"],"computedKeywords":[],"computedMetadata":{},"created":1496704628569,"modified":1561372318188,"lastPublisher":{"name":"pieh","email":"misiek.piechowiak@gmail.com","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T20:19:30.829Z","_searchInternal":{"concatenatedName":"gatsbypluginfeed","alternativeNames":["gatsbypluginfeed","gatsby plugin feed","gatsby-plugin-feed"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-feed/CHANGELOG.md","jsDelivrHits":30,"objectID":"gatsby-plugin-feed","_highlightResult":{"name":{"value":"gatsby-plugin-feed","matchLevel":"none","matchedWords":[]},"description":{"value":"Creates an RSS feed for your Gatsby site.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"atom","matchLevel":"none","matchedWords":[]},{"value":"feed","matchLevel":"none","matchedWords":[]},{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"rss","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginfeed","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin feed","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-feed","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-create-client-paths","downloadsLast30Days":74468,"downloadsRatio":0.0001631678302105523,"humanDownloadsLast30Days":"74.5k","popular":false,"version":"2.1.1","versions":{"1.0.1":"2017-12-21T18:05:40.112Z","1.1.0-alpha.f20ac0ed":"2018-01-11T18:38:35.659Z","1.1.0-alpha.a0a09c94":"2018-01-11T18:47:37.729Z","1.1.0-alpha.b50f2063":"2018-01-11T18:54:42.686Z","1.0.2":"2018-01-11T23:09:44.201Z","1.1.0-alpha.03b9df85":"2018-01-12T14:35:47.322Z","1.1.0-alpha.e9df8e57":"2018-01-12T14:47:04.165Z","1.1.0-alpha.8c822451":"2018-01-12T15:00:37.142Z","1.1.0-alpha.e5586916":"2018-01-12T15:22:03.361Z","1.1.0-alpha.9da1bca1":"2018-01-12T18:07:05.044Z","1.1.0-alpha.aeb05561":"2018-01-18T01:52:38.295Z","1.1.0-alpha.7b47e00d":"2018-01-18T02:09:45.673Z","1.1.0-alpha.f5c1df61":"2018-01-18T17:29:58.602Z","1.0.3":"2018-01-19T16:06:14.263Z","1.1.0-alpha.926cb6da":"2018-01-21T01:41:58.837Z","1.1.0-alpha.3f307d61":"2018-01-21T02:22:32.029Z","1.0.4":"2018-01-23T19:17:13.371Z","1.1.0-alpha.d1544e1b":"2018-01-25T00:13:55.606Z","1.1.0-alpha.53bbd4cd":"2018-02-10T20:34:14.478Z","1.1.0-alpha.2b695217":"2018-02-10T22:36:24.715Z","1.1.0-alpha.32ef58da":"2018-02-11T03:44:23.644Z","1.1.0-alpha.5182142b":"2018-02-11T04:12:02.460Z","1.0.5":"2018-02-13T01:11:41.364Z","1.1.0-alpha.6ab84875":"2018-02-15T02:06:22.469Z","1.1.0-alpha.9d4de2a6":"2018-02-15T20:32:04.553Z","1.1.0-alpha.1a8f691e":"2018-02-15T21:00:42.855Z","1.1.0-alpha.9e381f74":"2018-02-15T21:12:15.907Z","1.1.0-alpha.dd504153":"2018-02-15T21:29:16.327Z","1.1.0-alpha.b68b7f5c":"2018-02-15T22:00:18.674Z","1.1.0-alpha.bb258cb5":"2018-02-16T00:29:19.623Z","1.1.0-alpha.e28a1c8e":"2018-02-16T01:10:48.368Z","1.1.0-alpha.067e672c":"2018-02-17T02:44:51.854Z","1.1.0-alpha.d0b8dd9e":"2018-02-17T19:04:50.053Z","1.0.6-0":"2018-02-17T19:30:44.797Z","1.1.0-alpha.e66c6c9c":"2018-02-27T01:24:27.822Z","1.0.6":"2018-02-28T20:39:31.055Z","1.1.0-alpha.2cbec6d6":"2018-03-03T06:46:15.726Z","1.0.6-1":"2018-03-03T07:23:14.059Z","1.1.0-alpha.f98688ee":"2018-03-07T02:25:24.958Z","1.0.7":"2018-03-07T18:06:10.636Z","1.1.0-alpha.9fe50b00":"2018-03-08T03:04:05.777Z","1.1.0-alpha.34eda94b":"2018-03-17T21:21:59.896Z","1.1.0-alpha.12622d64":"2018-03-17T23:59:43.477Z","1.1.0-alpha.84bd71b4":"2018-03-18T00:39:28.991Z","1.1.0-alpha.6ad61a13":"2018-03-21T17:49:05.670Z","1.1.0-alpha.5f47082e":"2018-03-23T22:47:13.838Z","1.0.6-2":"2018-03-23T23:18:38.169Z","1.0.8":"2018-03-24T17:45:40.194Z","1.1.0-alpha.95fcd4af":"2018-03-29T02:21:58.432Z","1.1.0-alpha.20252dc3":"2018-03-29T02:43:41.433Z","1.1.0-alpha.4a09f745":"2018-04-05T22:14:37.063Z","1.1.0-alpha.76793cd8":"2018-04-07T22:11:56.118Z","1.1.0-alpha.5c9569c0":"2018-04-19T16:56:32.180Z","1.1.0-alpha.523a4286":"2018-04-19T23:51:21.621Z","1.1.0-alpha.5421f383":"2018-04-20T06:52:21.973Z","1.1.0-alpha.e9c3027b":"2018-04-20T17:55:40.647Z","1.0.6-3":"2018-04-22T01:53:26.708Z","1.0.6-4":"2018-04-25T16:24:47.920Z","1.0.6-5":"2018-05-11T21:43:03.465Z","1.0.6-7":"2018-05-15T19:53:20.989Z","1.0.6-8":"2018-05-31T14:03:14.356Z","1.0.6-9":"2018-05-31T17:04:12.962Z","1.0.6-10":"2018-06-11T15:21:16.032Z","1.0.6-11":"2018-06-11T16:53:59.489Z","2.0.0-alpha.1":"2018-06-16T19:08:21.106Z","2.0.0-alpha.8ac171a1":"2018-06-16T19:25:00.681Z","2.0.0-alpha.e328d33f":"2018-06-16T19:32:25.994Z","2.0.0-alpha.80a21f04":"2018-06-16T19:36:38.669Z","2.0.0-alpha.2":"2018-06-16T23:32:25.305Z","2.0.0-beta.0":"2018-06-17T06:53:43.310Z","2.0.0-beta.1":"2018-06-17T08:12:42.689Z","2.0.0-beta.2":"2018-06-20T20:45:17.494Z","2.0.0-beta.3":"2018-07-21T16:00:00.964Z","2.0.0-beta.4":"2018-08-06T11:24:57.358Z","2.0.0-rc.0":"2018-08-21T00:58:07.880Z","2.0.0-rc.1":"2018-08-29T18:28:27.044Z","2.0.0":"2018-09-17T20:41:20.508Z","2.0.1":"2018-10-18T19:17:17.391Z","2.0.2":"2018-10-29T15:23:35.298Z","2.0.3":"2018-11-29T12:13:10.248Z","2.0.4":"2019-02-01T12:24:49.808Z","2.0.5":"2019-03-11T15:24:02.448Z","2.1.0":"2019-06-20T13:48:35.610Z","2.1.1":"2019-06-21T08:59:12.683Z"},"tags":{"latest":"2.1.1"},"description":"Gatsby-plugin for creating paths that exist only on the client","dependencies":{"@babel/runtime":"^7.0.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-create-client-paths","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-create-client-paths","head":"c9ea948f068c3ba0be11adae4570900445be0922","branch":"c9ea948f068c3ba0be11adae4570900445be0922"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-create-client-paths","head":"c9ea948f068c3ba0be11adae4570900445be0922"},"gitHead":"c9ea948f068c3ba0be11adae4570900445be0922","readme":"# gatsby-plugin-create-client-paths\n\nUse this plugin to simplify creating a “hybrid” Gatsby app with both statically rendered pages as well as \"client-paths\". These paths exist on the client only and do not correspond to index.html files in an app's built assets.\n\n## Usage\n\nInstall:\n\n```\nnpm install --save gatsby-plugin-create-client-paths\n```\n\nThen configure via `gatsby-config.js`:\n\n```\n {\n resolve: `gatsby-plugin-create-client-paths`,\n options: { prefixes: [`/app/*`] },\n },\n```\n\nIn this example, all paths prefixed by `/app/` will render the route described\nin `src/pages/app.js`.\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1513879540112,"modified":1561107556336,"lastPublisher":{"name":"wardpeet","email":"ward@coding-tech.com","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:14:55.655Z","_searchInternal":{"concatenatedName":"gatsbyplugincreateclientpaths","alternativeNames":["gatsbyplugincreateclientpaths","gatsby plugin create client paths","gatsby-plugin-create-client-paths"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-create-client-paths/CHANGELOG.md","jsDelivrHits":32,"objectID":"gatsby-plugin-create-client-paths","_highlightResult":{"name":{"value":"gatsby-plugin-create-client-paths","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby-plugin for creating paths that exist only on the client","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyplugincreateclientpaths","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin create client paths","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-create-client-paths","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-emotion","downloadsLast30Days":71070,"downloadsRatio":0.0001557224269896325,"humanDownloadsLast30Days":"71.1k","popular":false,"version":"4.1.0","versions":{"1.1.0":"2017-07-12T03:17:53.854Z","1.1.1":"2017-08-11T20:02:48.585Z","1.1.2":"2017-08-19T01:52:06.406Z","1.2.0-alpha.22c8a6f1":"2017-08-24T16:12:13.309Z","2.0.0":"2017-08-25T18:06:48.872Z","1.1.3":"2017-08-25T18:21:43.236Z","1.1.4":"2017-08-30T22:58:27.908Z","1.1.5":"2017-08-31T23:41:08.644Z","1.1.6":"2017-09-09T17:02:25.254Z","1.2.0-alpha.76b32701":"2017-09-15T18:00:30.106Z","1.2.0-alpha.2e1e7782":"2017-09-15T18:12:14.834Z","1.2.0-alpha.93f2e2a2":"2017-09-16T11:49:40.415Z","1.1.7":"2017-09-16T12:19:00.207Z","1.2.0-alpha.5db7a275":"2017-09-16T13:45:37.404Z","1.2.0-alpha.1460dad9":"2017-09-18T12:28:20.431Z","1.1.8":"2017-09-28T03:59:28.682Z","1.1.9":"2017-11-29T00:09:17.904Z","1.1.10":"2017-12-10T00:45:15.073Z","1.2.0-alpha.f20ac0ed":"2018-01-11T18:38:41.774Z","1.2.0-alpha.a0a09c94":"2018-01-11T18:47:42.454Z","1.2.0-alpha.b50f2063":"2018-01-11T18:54:47.442Z","1.2.0-alpha.03b9df85":"2018-01-12T14:35:51.692Z","1.2.0-alpha.e9df8e57":"2018-01-12T14:47:08.666Z","1.2.0-alpha.8c822451":"2018-01-12T15:00:38.873Z","1.2.0-alpha.e5586916":"2018-01-12T15:22:09.264Z","1.2.0-alpha.9da1bca1":"2018-01-12T18:07:11.666Z","1.2.0-alpha.aeb05561":"2018-01-18T01:52:42.258Z","1.2.0-alpha.7b47e00d":"2018-01-18T02:09:49.107Z","1.2.0-alpha.f5c1df61":"2018-01-18T17:30:04.154Z","1.2.0-alpha.926cb6da":"2018-01-21T01:42:01.683Z","1.2.0-alpha.3f307d61":"2018-01-21T02:22:36.412Z","1.1.11":"2018-01-23T19:17:16.312Z","1.2.0-alpha.d1544e1b":"2018-01-25T00:14:00.243Z","1.2.0-alpha.53bbd4cd":"2018-02-10T20:34:14.691Z","1.2.0-alpha.2b695217":"2018-02-10T22:36:25.212Z","1.2.0-alpha.32ef58da":"2018-02-11T03:44:23.361Z","1.2.0-alpha.5182142b":"2018-02-11T04:12:03.116Z","1.1.12":"2018-02-13T01:11:44.936Z","1.2.0-alpha.6ab84875":"2018-02-15T02:06:22.435Z","1.2.0-alpha.9d4de2a6":"2018-02-15T20:32:05.957Z","1.2.0-alpha.1a8f691e":"2018-02-15T21:00:48.415Z","1.2.0-alpha.9e381f74":"2018-02-15T21:12:17.275Z","1.2.0-alpha.dd504153":"2018-02-15T21:29:16.600Z","1.2.0-alpha.b68b7f5c":"2018-02-15T22:00:19.628Z","1.2.0-alpha.bb258cb5":"2018-02-16T00:29:20.014Z","1.2.0-alpha.e28a1c8e":"2018-02-16T01:10:50.029Z","1.2.0-alpha.067e672c":"2018-02-17T02:44:52.467Z","1.2.0-alpha.d0b8dd9e":"2018-02-17T19:04:50.350Z","1.1.13-0":"2018-02-17T19:30:46.241Z","1.1.13":"2018-02-24T21:05:03.318Z","1.2.0-alpha.e66c6c9c":"2018-02-27T01:24:30.096Z","1.1.14":"2018-02-28T16:25:00.281Z","1.1.15":"2018-02-28T20:39:38.096Z","2.0.0-alpha.2cbec6d6":"2018-03-03T06:46:17.584Z","2.0.0-alpha.1":"2018-03-03T07:23:16.353Z","2.0.0-alpha.f98688ee":"2018-03-07T02:25:24.407Z","1.1.16":"2018-03-07T18:06:14.868Z","2.0.0-alpha.9fe50b00":"2018-03-08T03:04:06.885Z","2.0.0-alpha.34eda94b":"2018-03-17T21:21:59.984Z","2.0.0-alpha.12622d64":"2018-03-17T23:59:44.921Z","2.0.0-alpha.84bd71b4":"2018-03-18T00:39:29.265Z","2.0.0-alpha.6ad61a13":"2018-03-21T17:49:06.605Z","2.0.0-alpha.5f47082e":"2018-03-23T22:47:13.797Z","2.0.0-alpha.2":"2018-03-23T23:18:38.575Z","2.0.0-alpha.95fcd4af":"2018-03-29T02:21:59.655Z","2.0.0-alpha.20252dc3":"2018-03-29T02:43:41.934Z","2.0.0-alpha.4a09f745":"2018-04-05T22:14:40.244Z","2.0.0-alpha.76793cd8":"2018-04-07T22:11:56.474Z","2.0.0-alpha.5c9569c0":"2018-04-19T16:56:32.996Z","2.0.0-alpha.523a4286":"2018-04-19T23:51:22.065Z","2.0.0-alpha.5421f383":"2018-04-20T06:52:23.509Z","2.0.0-alpha.e9c3027b":"2018-04-20T17:55:49.545Z","2.0.0-alpha.3":"2018-04-22T01:53:28.734Z","2.0.0-alpha.4":"2018-04-25T16:24:49.180Z","2.0.0-alpha.5":"2018-04-26T18:18:55.611Z","2.0.0-alpha.6":"2018-05-11T21:43:04.491Z","2.0.0-alpha.8":"2018-05-15T19:53:29.803Z","1.1.17":"2018-05-31T12:38:11.604Z","2.0.0-alpha.9":"2018-05-31T14:03:14.713Z","2.0.0-alpha.10":"2018-05-31T17:04:07.306Z","2.0.0-alpha.11":"2018-06-11T15:21:34.206Z","2.0.0-alpha.12":"2018-06-11T16:54:00.002Z","2.0.0-alpha.13":"2018-06-16T19:08:25.450Z","2.0.0-alpha.8ac171a1":"2018-06-16T19:25:01.544Z","2.0.0-alpha.e328d33f":"2018-06-16T19:32:28.113Z","2.0.0-alpha.80a21f04":"2018-06-16T19:36:39.495Z","2.0.0-alpha.14":"2018-06-16T23:32:26.073Z","2.0.0-beta.0":"2018-06-17T06:53:43.800Z","2.0.0-beta.1":"2018-06-17T08:12:42.909Z","2.0.0-beta.2":"2018-06-20T20:45:17.893Z","2.0.0-beta.3":"2018-07-21T16:00:01.103Z","2.0.0-beta.4":"2018-08-20T19:52:44.652Z","2.0.0-rc.0":"2018-08-21T00:58:09.023Z","2.0.0-rc.1":"2018-08-29T18:28:28.691Z","2.0.0-rc.2":"2018-09-11T09:53:24.461Z","2.0.0-rc.3":"2018-09-11T10:48:36.530Z","2.0.0-rc.4":"2018-09-11T11:22:59.948Z","2.0.0-rc.5":"2018-09-11T12:12:03.241Z","2.0.5":"2018-09-17T20:41:21.395Z","2.0.6":"2018-10-29T15:23:36.540Z","2.0.7":"2018-11-29T12:13:15.432Z","3.0.0":"2018-12-04T19:19:45.939Z","3.0.1":"2018-12-05T21:36:43.685Z","4.0.0":"2018-12-19T18:02:16.404Z","4.0.1":"2018-12-19T20:17:17.488Z","4.0.2":"2019-02-01T12:24:53.145Z","4.0.3":"2019-02-01T19:02:50.300Z","4.0.4":"2019-02-20T22:19:29.410Z","4.0.5-alpha.0":"2019-03-04T07:13:40.904Z","4.0.5":"2019-03-11T13:49:31.330Z","4.0.6":"2019-03-11T15:24:04.694Z","4.0.7":"2019-05-24T22:12:51.474Z","4.1.0":"2019-06-20T13:48:39.506Z"},"tags":{"latest":"4.1.0"},"description":"Gatsby plugin to add support for Emotion","dependencies":{"@babel/runtime":"^7.0.0","@emotion/babel-preset-css-prop":"^10.0.5"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-emotion","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-emotion","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-emotion","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-emotion\n\nProvide support for using the css-in-js library\n[Emotion](https://github.com/emotion-js/emotion) including server side\nrendering.\n\n**This plugin supports Emotion v10+**\n\nOlder versions should use versions of this plugin which support Emotion 8 and 9. Check out the Emotion 10 [migration\nguide](https://emotion.sh/docs/migrating-to-emotion-10#incremental-migration) for more information on how to upgrade.\n\n## Install\n\n```\nnpm install --save gatsby-plugin-emotion @emotion/core @emotion/styled\n```\n\n## How to use\n\nAdd the plugin to your `gatsby-config.js`.\n\n```js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-emotion`,\n options: {\n // Accepts all options defined by `babel-plugin-emotion` plugin.\n },\n },\n ],\n}\n```\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","emotion","css-in-js"],"computedKeywords":[],"computedMetadata":{},"created":1499829473854,"modified":1561038523633,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:14:55.694Z","_searchInternal":{"concatenatedName":"gatsbypluginemotion","alternativeNames":["gatsbypluginemotion","gatsby plugin emotion","gatsby-plugin-emotion"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-emotion/CHANGELOG.md","jsDelivrHits":78,"objectID":"gatsby-plugin-emotion","_highlightResult":{"name":{"value":"gatsby-plugin-emotion","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin to add support for Emotion","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"emotion","matchLevel":"none","matchedWords":[]},{"value":"css-in-js","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginemotion","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin emotion","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-emotion","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-remark-smartypants","downloadsLast30Days":69873,"downloadsRatio":0.0001530996642893850,"humanDownloadsLast30Days":"69.9k","popular":false,"version":"2.1.0","versions":{"1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:14.921Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:50.463Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:32:24.048Z","1.0.0-alpha14":"2017-05-06T01:18:23.649Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:11.895Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:10.945Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:14.677Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:44:11.668Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:55:12.428Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:12:09.672Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:37.953Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:34:13.209Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:39.166Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:41.414Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:30:07.799Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:48.763Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:22:11.913Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:45.327Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:37.605Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:29:59.905Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:06:04.008Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:27:16.184Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:42:59.642Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:40:10.383Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:51.004Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:47:50.804Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:26.922Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:27.629Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:37:57.950Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:16:54.276Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:38.660Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:50.362Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:53.935Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:38:04.498Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:39:12.778Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:34:07.824Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:28.569Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:52:11.321Z","1.0.0-alpha.22":"2017-06-08T04:28:03.806Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:17.083Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:33.393Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:54.793Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:28.204Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:26:05.343Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:07:54.781Z","1.0.0-beta.1":"2017-06-15T20:26:01.346Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:26.793Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:35.207Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:45.487Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:36:06.584Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:23.439Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:47.075Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:54.568Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:11.381Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:58.675Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:46.556Z","1.0.0-beta.4":"2017-06-23T23:12:19.006Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:50.785Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:48.357Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:26.837Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:33.589Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:12.772Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:22:03.987Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:28.626Z","1.0.0-beta.6":"2017-07-02T06:43:13.016Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:41:04.248Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:44.549Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:42.960Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:17.353Z","1.0.0":"2017-07-06T19:43:40.076Z","1.0.1":"2017-07-06T19:49:05.810Z","1.4.1":"2017-07-26T17:34:03.535Z","1.4.2":"2017-08-11T14:03:24.904Z","1.4.3":"2017-08-19T01:52:40.698Z","1.5.0-alpha.22c8a6f1":"2017-08-24T16:12:36.716Z","2.0.0":"2017-08-25T18:07:07.220Z","1.4.4":"2017-08-25T18:22:00.848Z","1.4.5":"2017-08-29T00:05:49.661Z","1.4.6":"2017-08-30T22:58:48.487Z","1.4.7":"2017-08-31T23:42:03.077Z","1.5.0-alpha.76b32701":"2017-09-15T18:01:50.068Z","1.5.0-alpha.93f2e2a2":"2017-09-16T11:50:52.657Z","1.5.0-alpha.5db7a275":"2017-09-16T13:46:42.765Z","1.5.0-alpha.1460dad9":"2017-09-18T12:29:28.877Z","1.4.8":"2017-10-02T22:15:58.581Z","1.4.9":"2017-11-29T00:10:01.361Z","1.4.10":"2017-12-10T00:45:41.647Z","1.5.0-alpha.f20ac0ed":"2018-01-11T18:39:30.219Z","1.5.0-alpha.a0a09c94":"2018-01-11T18:48:21.481Z","1.5.0-alpha.b50f2063":"2018-01-11T18:55:25.861Z","1.5.0-alpha.03b9df85":"2018-01-12T14:36:38.616Z","1.5.0-alpha.e9df8e57":"2018-01-12T14:47:49.789Z","1.5.0-alpha.8c822451":"2018-01-12T15:01:13.905Z","1.5.0-alpha.e5586916":"2018-01-12T15:22:49.429Z","1.5.0-alpha.9da1bca1":"2018-01-12T18:08:00.553Z","1.5.0-alpha.aeb05561":"2018-01-18T01:53:23.267Z","1.5.0-alpha.7b47e00d":"2018-01-18T02:10:21.752Z","1.5.0-alpha.f5c1df61":"2018-01-18T17:30:53.755Z","1.5.0-alpha.926cb6da":"2018-01-21T01:42:40.059Z","1.5.0-alpha.3f307d61":"2018-01-21T02:23:23.573Z","1.5.0-alpha.d1544e1b":"2018-01-25T00:14:50.809Z","1.5.0-alpha.53bbd4cd":"2018-02-10T20:35:16.438Z","1.5.0-alpha.2b695217":"2018-02-10T22:37:11.486Z","1.5.0-alpha.32ef58da":"2018-02-11T03:45:10.454Z","1.5.0-alpha.5182142b":"2018-02-11T04:13:13.190Z","1.4.11":"2018-02-13T01:12:23.690Z","1.5.0-alpha.6ab84875":"2018-02-15T02:07:15.800Z","1.5.0-alpha.9d4de2a6":"2018-02-15T20:32:57.893Z","1.5.0-alpha.9e381f74":"2018-02-15T21:13:04.156Z","1.5.0-alpha.dd504153":"2018-02-15T21:30:15.733Z","1.5.0-alpha.b68b7f5c":"2018-02-15T22:01:19.528Z","1.5.0-alpha.bb258cb5":"2018-02-16T00:30:06.295Z","1.5.0-alpha.e28a1c8e":"2018-02-16T01:11:31.898Z","1.5.0-alpha.067e672c":"2018-02-17T02:45:43.026Z","1.5.0-alpha.d0b8dd9e":"2018-02-17T19:05:47.113Z","1.4.12-0":"2018-02-17T19:31:29.985Z","1.5.0-alpha.e66c6c9c":"2018-02-27T01:25:34.684Z","1.4.12":"2018-02-28T20:40:31.982Z","1.5.0-alpha.2cbec6d6":"2018-03-03T06:47:08.546Z","1.4.12-1":"2018-03-03T07:24:35.756Z","1.5.0-alpha.f98688ee":"2018-03-07T02:26:13.796Z","1.5.0-alpha.9fe50b00":"2018-03-08T03:04:48.690Z","1.5.0-alpha.34eda94b":"2018-03-17T21:22:43.060Z","1.5.0-alpha.12622d64":"2018-03-18T00:00:49.178Z","1.5.0-alpha.84bd71b4":"2018-03-18T00:40:45.382Z","1.5.0-alpha.6ad61a13":"2018-03-21T17:50:13.582Z","1.5.0-alpha.5f47082e":"2018-03-23T22:48:16.669Z","1.4.12-2":"2018-03-23T23:19:40.626Z","1.5.0-alpha.95fcd4af":"2018-03-29T02:23:15.294Z","1.5.0-alpha.20252dc3":"2018-03-29T02:45:03.291Z","1.5.0-alpha.4a09f745":"2018-04-05T22:15:18.912Z","1.5.0-alpha.76793cd8":"2018-04-07T22:13:00.818Z","1.5.0-alpha.5c9569c0":"2018-04-19T16:57:56.404Z","1.5.0-alpha.523a4286":"2018-04-19T23:53:05.067Z","1.5.0-alpha.5421f383":"2018-04-20T06:53:48.785Z","1.5.0-alpha.e9c3027b":"2018-04-20T17:57:48.861Z","1.4.12-3":"2018-04-22T01:54:55.390Z","1.4.12-4":"2018-04-24T00:44:12.472Z","1.4.12-5":"2018-04-25T16:26:10.403Z","1.4.12-6":"2018-04-26T18:20:22.826Z","1.4.12-7":"2018-05-11T21:44:44.711Z","1.4.12-9":"2018-05-15T20:22:24.532Z","1.4.12-10":"2018-05-31T14:07:48.373Z","1.4.12-11":"2018-05-31T17:20:14.115Z","1.4.12-12":"2018-06-11T15:26:08.472Z","1.4.12-13":"2018-06-11T16:56:36.565Z","2.0.0-alpha.e328d33f":"2018-06-16T19:33:38.102Z","2.0.0-alpha.80a21f04":"2018-06-16T19:37:49.971Z","2.0.0-alpha.2":"2018-06-16T23:33:37.404Z","2.0.0-beta.0":"2018-06-17T06:54:14.966Z","2.0.0-beta.1":"2018-06-17T08:13:11.641Z","2.0.0-beta.2":"2018-06-20T20:45:47.161Z","2.0.0-beta.3":"2018-07-21T16:00:24.737Z","2.0.0-rc.0":"2018-08-21T00:59:26.537Z","2.0.0-rc.1":"2018-08-29T18:29:47.154Z","2.0.5":"2018-09-17T20:42:51.952Z","2.0.6":"2018-10-29T15:24:41.830Z","2.0.7":"2018-11-29T12:14:39.604Z","2.0.8":"2019-02-01T12:25:40.723Z","2.0.9":"2019-03-11T15:25:21.848Z","2.1.0":"2019-06-20T13:49:39.479Z"},"tags":{"latest":"2.1.0"},"description":"Use retext-smartypants to auto-enhance typography of markdown","dependencies":{"@babel/runtime":"^7.0.0","retext":"^5.0.0","retext-smartypants":"^3.0.0","unist-util-visit":"^1.3.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-remark-smartypants","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-remark-smartypants","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-remark-smartypants","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-remark-smartypants\n\nReplaces “dumb” punctuation marks with “smart” punctuation marks using the\n[retext-smartypants](https://github.com/wooorm/retext-smartypants) plugin.\n\n## Install\n\n`npm install --save gatsby-remark-smartypants`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nplugins: [\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [`gatsby-remark-smartypants`],\n },\n },\n]\n```\n\n### Options\n\nValid `remark-smartypants` options may passed to the plugin. For more on vaild\noptions refer to the\n[remark-smartypants API](https://github.com/wooorm/retext-smartypants#api) .\n\n```javascript\n// In your gatsby-config.js\nplugins: [\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [\n {\n resolve: \"gatsby-remark-smartypants\",\n options: {\n dashes: \"oldschool\",\n },\n },\n ],\n },\n },\n]\n```\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","smartypants"],"computedKeywords":[],"computedMetadata":{},"created":1494008774921,"modified":1561038582294,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:17.183Z","_searchInternal":{"concatenatedName":"gatsbyremarksmartypants","alternativeNames":["gatsbyremarksmartypants","gatsby remark smartypants","gatsby-remark-smartypants"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-remark-smartypants/CHANGELOG.md","jsDelivrHits":20,"objectID":"gatsby-remark-smartypants","_highlightResult":{"name":{"value":"gatsby-remark-smartypants","matchLevel":"none","matchedWords":[]},"description":{"value":"Use retext-smartypants to auto-enhance typography of markdown","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"smartypants","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyremarksmartypants","matchLevel":"none","matchedWords":[]},{"value":"gatsby remark smartypants","matchLevel":"none","matchedWords":[]},{"value":"gatsby-remark-smartypants","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-remark-responsive-iframe","downloadsLast30Days":68997,"downloadsRatio":0.0001461146130474796,"humanDownloadsLast30Days":"69k","popular":false,"version":"2.2.1","versions":{"1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:12.483Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:47.842Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:32:20.538Z","1.0.0-alpha14":"2017-05-06T01:18:19.471Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:07.067Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:14.128Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:14.913Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:44:12.162Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:55:13.024Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:12:06.823Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:36.783Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:34:18.162Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:33.704Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:38.335Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:30:07.650Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:43.384Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:22:08.402Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:45.237Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:37.518Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:30:00.064Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:06:03.201Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:27:16.106Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:42:57.202Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:40:08.266Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:51.023Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:47:50.383Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:26.861Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:26.588Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:37:56.206Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:16:52.641Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:36.968Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:49.566Z","1.0.0-alpha19":"2017-06-03T02:02:27.718Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:51.452Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:38:03.459Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:39:09.766Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:34:04.969Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:28.341Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:52:11.197Z","1.0.0-alpha.22":"2017-06-08T04:28:03.835Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:14.867Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:31.550Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:52.082Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:28.035Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:26:04.308Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:08:20.731Z","1.0.0-beta.1":"2017-06-15T20:25:58.778Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:24.857Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:32.629Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:42.307Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:36:03.401Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:24.523Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:45.791Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:52.374Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:09.170Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:58.002Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:45.330Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:49.827Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:46.918Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:26.589Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:32.064Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:12.702Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:22:03.960Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:28.362Z","1.0.0-beta.6":"2017-07-02T06:43:11.516Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:41:03.164Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:43.786Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:42.931Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:17.263Z","1.0.0":"2017-07-06T19:43:38.022Z","1.0.1":"2017-07-06T19:49:04.249Z","1.3.0":"2017-07-19T06:31:58.189Z","1.4.1":"2017-07-26T17:34:03.917Z","1.4.2":"2017-08-11T14:03:24.840Z","1.4.3":"2017-08-19T01:52:40.959Z","1.5.0-alpha.22c8a6f1":"2017-08-24T16:12:33.714Z","2.0.0":"2017-08-25T18:07:07.004Z","1.4.4":"2017-08-25T18:21:59.153Z","1.4.5":"2017-08-29T00:05:49.126Z","1.4.6":"2017-08-30T22:58:48.349Z","1.4.7":"2017-08-31T23:41:55.256Z","1.5.0-alpha.76b32701":"2017-09-15T18:01:48.402Z","1.5.0-alpha.93f2e2a2":"2017-09-16T11:50:50.130Z","1.5.0-alpha.5db7a275":"2017-09-16T13:46:40.470Z","1.5.0-alpha.1460dad9":"2017-09-18T12:29:28.732Z","1.4.8":"2017-10-02T22:15:55.175Z","1.4.9":"2017-10-20T20:00:47.138Z","1.4.10":"2017-10-24T00:58:24.734Z","1.4.11":"2017-10-25T19:43:24.284Z","1.4.12":"2017-10-25T20:59:25.676Z","1.4.13":"2017-10-26T06:26:22.608Z","1.4.14":"2017-11-07T08:15:51.870Z","1.4.15":"2017-11-29T00:10:01.500Z","1.4.16":"2017-12-10T00:45:40.807Z","1.5.0-alpha.f20ac0ed":"2018-01-11T18:39:27.586Z","1.5.0-alpha.a0a09c94":"2018-01-11T18:48:19.242Z","1.5.0-alpha.b50f2063":"2018-01-11T18:55:24.053Z","1.5.0-alpha.03b9df85":"2018-01-12T14:36:35.937Z","1.5.0-alpha.e9df8e57":"2018-01-12T14:47:47.630Z","1.5.0-alpha.8c822451":"2018-01-12T15:01:13.430Z","1.5.0-alpha.e5586916":"2018-01-12T15:22:48.692Z","1.5.0-alpha.9da1bca1":"2018-01-12T18:07:54.044Z","1.5.0-alpha.aeb05561":"2018-01-18T01:53:21.851Z","1.5.0-alpha.7b47e00d":"2018-01-18T02:10:20.302Z","1.5.0-alpha.f5c1df61":"2018-01-18T17:30:53.621Z","1.5.0-alpha.926cb6da":"2018-01-21T01:42:38.576Z","1.5.0-alpha.3f307d61":"2018-01-21T02:23:20.579Z","1.5.0-alpha.d1544e1b":"2018-01-25T00:14:47.968Z","1.5.0-alpha.53bbd4cd":"2018-02-10T20:35:14.893Z","1.5.0-alpha.2b695217":"2018-02-10T22:37:10.764Z","1.5.0-alpha.32ef58da":"2018-02-11T03:45:09.892Z","1.5.0-alpha.5182142b":"2018-02-11T04:13:09.050Z","1.4.17":"2018-02-13T01:12:22.581Z","1.5.0-alpha.6ab84875":"2018-02-15T02:07:15.349Z","1.5.0-alpha.9d4de2a6":"2018-02-15T20:32:56.600Z","1.5.0-alpha.9e381f74":"2018-02-15T21:13:02.463Z","1.5.0-alpha.dd504153":"2018-02-15T21:30:15.788Z","1.5.0-alpha.b68b7f5c":"2018-02-15T22:01:16.690Z","1.5.0-alpha.bb258cb5":"2018-02-16T00:30:05.289Z","1.5.0-alpha.e28a1c8e":"2018-02-16T01:11:31.313Z","1.5.0-alpha.067e672c":"2018-02-17T02:45:41.349Z","1.5.0-alpha.d0b8dd9e":"2018-02-17T19:05:44.298Z","1.4.18-0":"2018-02-17T19:31:27.722Z","1.5.0-alpha.e66c6c9c":"2018-02-27T01:25:31.652Z","1.4.18":"2018-02-28T20:40:31.477Z","1.5.0-alpha.2cbec6d6":"2018-03-03T06:47:06.533Z","1.4.18-1":"2018-03-03T07:24:33.608Z","1.5.0-alpha.f98688ee":"2018-03-07T02:26:12.528Z","1.5.0-alpha.9fe50b00":"2018-03-08T03:04:48.537Z","1.5.0-alpha.34eda94b":"2018-03-17T21:22:40.767Z","1.5.0-alpha.12622d64":"2018-03-18T00:00:48.000Z","1.5.0-alpha.84bd71b4":"2018-03-18T00:40:43.693Z","1.5.0-alpha.6ad61a13":"2018-03-21T17:50:11.637Z","1.5.0-alpha.5f47082e":"2018-03-23T22:48:16.806Z","1.4.18-2":"2018-03-23T23:19:40.669Z","1.5.0-alpha.95fcd4af":"2018-03-29T02:23:15.337Z","1.5.0-alpha.20252dc3":"2018-03-29T02:45:02.402Z","1.5.0-alpha.4a09f745":"2018-04-05T22:15:16.699Z","1.5.0-alpha.76793cd8":"2018-04-07T22:12:58.339Z","1.5.0-alpha.5c9569c0":"2018-04-19T16:57:51.898Z","1.5.0-alpha.523a4286":"2018-04-19T23:53:02.022Z","1.5.0-alpha.5421f383":"2018-04-20T06:53:45.632Z","1.5.0-alpha.e9c3027b":"2018-04-20T17:57:46.013Z","1.4.18-3":"2018-04-22T01:54:54.090Z","1.4.18-4":"2018-04-25T16:26:09.883Z","1.4.18-5":"2018-04-26T18:20:18.172Z","1.4.18-6":"2018-05-11T21:44:41.950Z","1.4.18-8":"2018-05-15T20:24:10.966Z","1.4.19":"2018-05-30T14:58:02.609Z","1.4.18-9":"2018-05-31T14:07:26.861Z","1.4.18-10":"2018-05-31T17:20:05.025Z","1.4.18-11":"2018-06-11T15:26:05.202Z","1.4.18-12":"2018-06-11T16:56:22.943Z","2.0.0-alpha.e328d33f":"2018-06-16T19:33:38.166Z","2.0.0-alpha.80a21f04":"2018-06-16T19:37:49.275Z","2.0.0-alpha.2":"2018-06-16T23:33:34.174Z","1.4.20":"2018-06-17T01:53:28.291Z","2.0.0-beta.0":"2018-06-17T06:54:13.991Z","2.0.0-beta.1":"2018-06-17T08:13:10.949Z","2.0.0-beta.2":"2018-06-20T20:45:47.283Z","2.0.0-beta.3":"2018-07-21T16:00:23.951Z","2.0.0-rc.0":"2018-08-21T00:59:26.881Z","2.0.0-rc.1":"2018-08-29T18:29:46.640Z","2.0.0-rc.5":"2018-09-11T12:12:34.553Z","2.0.5":"2018-09-17T20:42:51.572Z","2.0.6":"2018-10-29T15:24:41.528Z","2.0.7":"2018-11-29T12:14:34.331Z","2.0.8":"2018-12-21T13:06:32.128Z","2.0.9":"2019-02-01T12:25:39.724Z","2.0.10":"2019-03-11T15:25:22.759Z","2.1.0":"2019-03-14T20:52:39.865Z","2.1.1":"2019-03-15T15:58:02.155Z","2.2.0":"2019-06-20T13:49:38.847Z","2.2.1":"2019-06-25T08:42:28.042Z"},"tags":{"latest":"2.2.1"},"description":"Make iframes in Markdown processed by Remark responsive","dependencies":{"@babel/runtime":"^7.0.0","bluebird":"^3.5.0","cheerio":"^1.0.0-rc.2","lodash":"^4.17.10","unist-util-visit":"^1.3.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4","remark":"^10.0.1","remark-mdx":"^1.0.14","semver":"^6.0.0","unist-util-find":"^1.0.1"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-remark-responsive-iframe","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-remark-responsive-iframe","head":"3e8578c97862d1715045b289ab118f6653b7feb9","branch":"3e8578c97862d1715045b289ab118f6653b7feb9"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-remark-responsive-iframe","head":"3e8578c97862d1715045b289ab118f6653b7feb9"},"gitHead":"3e8578c97862d1715045b289ab118f6653b7feb9","readme":"# gatsby-remark-responsive-iframe\n\nWraps iframes or objects (e.g. embedded YouTube videos) within markdown files in\na responsive elastic container with a fixed aspect ratio. This ensures that the\niframe or object will scale proportionally and to the full width of its\ncontainer.\n\n## Install\n\n`npm install --save gatsby-remark-responsive-iframe`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nplugins: [\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [`gatsby-remark-responsive-iframe`],\n },\n },\n]\n```\n\n### Usage in Markdown\n\nThis plugin requires both `width` and `height` attributes to be set on the\niframe or object tag so that the correct aspect ratio can be calculated. Both\nunitless and pixel values are supported. If any other value is detected (for\nexample a percentage width), the wrapper will not be applied.\n\nExample usage:\n\n This is a beautiful iframe:\n\n <iframe src=\"http://www.example.com/\" width=\"600\" height=\"400\"></iframe>\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","remark"],"computedKeywords":[],"computedMetadata":{},"created":1494008772483,"modified":1561452152016,"lastPublisher":{"name":"wardpeet","email":"ward@coding-tech.com","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-25T08:42:34.167Z","_searchInternal":{"concatenatedName":"gatsbyremarkresponsiveiframe","alternativeNames":["gatsbyremarkresponsiveiframe","gatsby remark responsive iframe","gatsby-remark-responsive-iframe"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-remark-responsive-iframe/CHANGELOG.md","jsDelivrHits":0,"objectID":"gatsby-remark-responsive-iframe","_highlightResult":{"name":{"value":"gatsby-remark-responsive-iframe","matchLevel":"none","matchedWords":[]},"description":{"value":"Make iframes in Markdown processed by Remark responsive","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"remark","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyremarkresponsiveiframe","matchLevel":"none","matchedWords":[]},{"value":"gatsby remark responsive iframe","matchLevel":"none","matchedWords":[]},{"value":"gatsby-remark-responsive-iframe","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-transformer-json","downloadsLast30Days":67153,"downloadsRatio":0.0001471398359312620,"humanDownloadsLast30Days":"67.2k","popular":false,"version":"2.2.0","versions":{"1.0.0-alpha12-alpha.51e1923f":"2017-04-18T18:41:27.392Z","1.0.0-alpha12-alpha.571b4bbd":"2017-04-19T00:37:17.212Z","1.0.0-alpha12-alpha.c0bba969":"2017-04-19T20:36:11.340Z","1.0.0-alpha12-alpha.89d880ee":"2017-04-21T00:30:44.997Z","1.0.0-alpha12-alpha.b66dd8d3":"2017-04-21T00:37:32.477Z","1.0.0-alpha12-alpha.577b9e82":"2017-04-22T00:34:41.958Z","1.0.0-alpha12-alpha.8370739a":"2017-04-23T03:15:47.378Z","1.0.0-alpha13":"2017-04-24T22:09:19.947Z","1.0.0-alpha13-alpha.c6e3cbb2":"2017-04-26T19:36:58.467Z","1.0.0-alpha13-alpha.91dbde54":"2017-04-26T21:08:52.767Z","1.0.0-alpha13-alpha.ec011f40":"2017-04-27T00:58:08.157Z","1.0.0-alpha13-alpha.537d11c6":"2017-04-27T04:11:32.067Z","1.0.0-alpha13-alpha.0189ea42":"2017-04-28T22:29:31.949Z","1.0.0-alpha13-alpha.215cabc2":"2017-05-01T23:02:10.815Z","1.0.0-alpha13-alpha.526805ab":"2017-05-03T22:17:36.694Z","1.0.0-alpha13-alpha.0f0222b8":"2017-05-04T16:09:26.113Z","1.0.0-alpha13-alpha.7d186994":"2017-05-04T16:29:51.256Z","1.0.0-alpha13-alpha.a3ef328b":"2017-05-04T19:52:04.479Z","1.0.0-alpha13-alpha.84bd4b24":"2017-05-04T20:33:32.355Z","1.0.0-alpha13-alpha.7efda7f0":"2017-05-04T23:03:17.047Z","1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:21.558Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:50.003Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:32:29.722Z","1.0.0-alpha14":"2017-05-06T01:18:28.403Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:11.706Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:15.851Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:20.891Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:44:19.516Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:55:16.056Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:12:16.572Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:40.859Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:34:24.463Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:43.948Z","1.0.0-alpha15":"2017-05-16T09:12:53.499Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:45.667Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:30:13.346Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:50.895Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:22:14.846Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:50.181Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:42.235Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:30:04.853Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:06:08.451Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:27:20.678Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:43:03.250Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:40:13.261Z","1.0.0-alpha16":"2017-05-26T09:30:30.114Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:53.500Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:47:54.821Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:29.109Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:31.938Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:38:01.933Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:16:58.535Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:42.103Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:54.010Z","1.0.0-alpha17":"2017-06-02T18:45:02.847Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:59.845Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:38:08.480Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:39:18.798Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:34:16.264Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:36.032Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:52:17.843Z","1.0.0-alpha.22":"2017-06-08T04:28:13.141Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:21.219Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:37.643Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:15:00.515Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:36.325Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:26:14.014Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:08:26.715Z","1.0.0-beta.1":"2017-06-15T20:26:06.573Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:35.066Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:40.387Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:51.464Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:36:12.549Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:28.344Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:52.852Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:59.004Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:16.202Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:07:02.243Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:50.368Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:54.398Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:52.387Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:31.848Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:37.368Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:19.606Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:22:09.248Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:35.369Z","1.0.0-beta.6":"2017-07-02T06:43:20.474Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:41:10.797Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:51.277Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:50.776Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:24.988Z","1.0.0":"2017-07-06T19:43:48.985Z","1.0.1":"2017-07-06T19:49:10.740Z","1.0.2":"2017-08-09T14:01:34.233Z","1.0.3":"2017-08-19T01:52:53.147Z","1.1.0-alpha.22c8a6f1":"2017-08-24T16:12:43.884Z","1.0.4":"2017-08-25T18:22:07.758Z","1.0.5":"2017-08-30T22:58:58.533Z","1.0.6":"2017-08-31T23:42:31.512Z","1.1.0-alpha.76b32701":"2017-09-15T18:02:28.809Z","1.1.0-alpha.93f2e2a2":"2017-09-16T11:51:33.510Z","1.1.0-alpha.5db7a275":"2017-09-16T13:47:14.261Z","1.1.0-alpha.1460dad9":"2017-09-18T12:30:01.088Z","1.0.7":"2017-09-18T23:57:53.152Z","1.0.8":"2017-10-02T22:16:09.480Z","1.0.9":"2017-10-08T00:29:53.154Z","1.0.10":"2017-10-12T17:36:35.978Z","1.0.11":"2017-10-12T18:04:56.809Z","1.0.12":"2017-11-09T22:28:34.831Z","1.0.13":"2017-11-29T00:10:28.230Z","1.0.14":"2017-12-10T00:45:54.993Z","1.1.0-alpha.f20ac0ed":"2018-01-11T18:39:47.352Z","1.1.0-alpha.a0a09c94":"2018-01-11T18:48:45.155Z","1.1.0-alpha.b50f2063":"2018-01-11T18:55:41.899Z","1.1.0-alpha.03b9df85":"2018-01-12T14:36:59.524Z","1.1.0-alpha.e9df8e57":"2018-01-12T14:48:10.469Z","1.1.0-alpha.8c822451":"2018-01-12T15:01:29.730Z","1.1.0-alpha.e5586916":"2018-01-12T15:23:08.255Z","1.1.0-alpha.9da1bca1":"2018-01-12T18:08:26.833Z","1.1.0-alpha.aeb05561":"2018-01-18T01:53:42.443Z","1.1.0-alpha.7b47e00d":"2018-01-18T02:10:36.074Z","1.1.0-alpha.f5c1df61":"2018-01-18T17:31:15.947Z","1.1.0-alpha.926cb6da":"2018-01-21T01:43:03.772Z","1.1.0-alpha.3f307d61":"2018-01-21T02:23:44.886Z","1.1.0-alpha.d1544e1b":"2018-01-25T00:15:07.592Z","2.1.0-alpha.53bbd4cd":"2018-02-10T20:35:36.091Z","2.1.0-alpha.2b695217":"2018-02-10T22:37:26.428Z","2.1.0-alpha.32ef58da":"2018-02-11T03:45:28.146Z","2.1.0-alpha.5182142b":"2018-02-11T04:13:31.894Z","1.0.15":"2018-02-13T01:12:42.485Z","2.1.0-alpha.6ab84875":"2018-02-15T02:07:35.539Z","2.1.0-alpha.9d4de2a6":"2018-02-15T20:33:19.978Z","2.1.0-alpha.dd504153":"2018-02-15T21:30:41.918Z","2.1.0-alpha.b68b7f5c":"2018-02-15T22:01:42.562Z","2.1.0-alpha.bb258cb5":"2018-02-16T00:30:22.026Z","2.1.0-alpha.e28a1c8e":"2018-02-16T01:11:48.495Z","2.1.0-alpha.067e672c":"2018-02-17T02:46:01.880Z","2.1.0-alpha.d0b8dd9e":"2018-02-17T19:06:16.613Z","2.0.1-0":"2018-02-17T19:31:47.832Z","2.1.0-alpha.e66c6c9c":"2018-02-27T01:26:09.810Z","1.0.16":"2018-02-28T20:40:55.613Z","2.1.0-alpha.2cbec6d6":"2018-03-03T06:47:27.455Z","2.0.1-1":"2018-03-03T07:25:11.540Z","2.1.0-alpha.f98688ee":"2018-03-07T02:26:31.773Z","2.1.0-alpha.9fe50b00":"2018-03-08T03:05:03.986Z","2.1.0-alpha.34eda94b":"2018-03-17T21:22:58.363Z","2.1.0-alpha.12622d64":"2018-03-18T00:01:13.030Z","2.1.0-alpha.84bd71b4":"2018-03-18T00:41:11.521Z","2.1.0-alpha.6ad61a13":"2018-03-21T17:50:47.625Z","2.1.0-alpha.5f47082e":"2018-03-23T22:48:45.482Z","2.0.1-2":"2018-03-23T23:20:05.087Z","2.1.0-alpha.95fcd4af":"2018-03-29T02:23:59.818Z","2.1.0-alpha.20252dc3":"2018-03-29T02:45:51.166Z","2.1.0-alpha.4a09f745":"2018-04-05T22:15:32.815Z","2.1.0-alpha.76793cd8":"2018-04-07T22:13:20.535Z","2.1.0-alpha.5c9569c0":"2018-04-19T16:58:23.791Z","2.1.0-alpha.523a4286":"2018-04-19T23:53:36.536Z","2.1.0-alpha.5421f383":"2018-04-20T06:54:20.124Z","2.1.0-alpha.e9c3027b":"2018-04-20T17:58:30.922Z","2.0.1-3":"2018-04-22T01:55:42.439Z","2.0.1-4":"2018-04-25T16:26:45.382Z","2.0.1-5":"2018-04-26T18:21:01.729Z","1.0.17":"2018-04-27T22:13:14.256Z","1.0.18":"2018-05-15T18:25:29.313Z","2.0.1-8":"2018-05-15T20:17:28.024Z","2.0.1-9":"2018-05-18T15:36:13.812Z","1.0.19":"2018-05-30T14:58:17.948Z","2.0.1-10":"2018-05-31T14:27:19.553Z","2.0.1-11":"2018-05-31T17:23:27.945Z","2.0.1-12":"2018-06-11T15:27:10.523Z","2.0.1-13":"2018-06-11T16:57:40.072Z","2.2.0-alpha.80a21f04":"2018-06-16T19:38:19.295Z","2.1.1-alpha.2":"2018-06-16T23:34:17.499Z","1.0.20":"2018-06-17T01:53:40.251Z","2.1.1-beta.0":"2018-06-17T06:54:27.405Z","2.1.1-beta.1":"2018-06-17T08:13:23.892Z","2.1.1-beta.2":"2018-06-20T20:45:56.740Z","2.1.1-beta.3":"2018-07-21T16:00:34.609Z","2.1.1-beta.4":"2018-07-27T19:00:53.801Z","2.1.1-beta.5":"2018-08-04T18:36:09.680Z","2.1.1-rc.0":"2018-08-21T00:59:48.584Z","2.1.1-rc.1":"2018-08-29T18:30:20.628Z","2.1.1-rc.2":"2018-09-05T13:12:33.178Z","2.1.1-rc.6":"2018-09-11T12:12:56.972Z","2.1.1":"2018-09-17T20:43:15.534Z","2.1.2":"2018-09-27T08:26:26.675Z","2.1.3":"2018-10-02T16:47:17.393Z","2.1.4":"2018-10-04T20:48:33.061Z","2.1.5":"2018-10-29T15:24:59.683Z","2.1.6":"2018-11-29T12:15:06.500Z","2.1.7":"2019-01-08T18:29:20.215Z","2.1.8":"2019-02-01T12:25:57.027Z","2.1.9":"2019-03-11T13:49:38.942Z","2.1.10":"2019-03-11T15:25:43.883Z","2.1.11":"2019-03-15T15:58:14.884Z","2.2.0":"2019-06-20T13:50:19.739Z"},"tags":{"latest":"2.2.0"},"description":"Gatsby transformer plugin for JSON files","dependencies":{"@babel/runtime":"^7.0.0","bluebird":"^3.5.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-transformer-json","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-transformer-json","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-transformer-json","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-transformer-json\n\nParses raw JSON strings into JavaScript objects e.g. from JSON files. Supports\narrays of objects and single objects.\n\n## Install\n\n`npm install --save gatsby-transformer-json`\n\nIf you want to transform json files, you also need to have `gatsby-source-filesystem` installed and configured so it\npoints to your files.\n\n## How to use\n\nIn your `gatsby-config.js`:\n\n```javascript\nmodule.exports = {\n plugins: [\n `gatsby-transformer-json`,\n {\n resolve: `gatsby-source-filesystem`,\n options: {\n path: `./src/data/`,\n },\n },\n ],\n}\n```\n\n## Parsing algorithm\n\nYou can choose to structure your data as arrays of objects in individual files\nor as single objects spread across multiple files.\n\n### Array of Objects\n\nThe algorithm for arrays is to convert each item in the array into a node.\n\nSo if your project has a `letters.json` with\n\n```json\n[{ \"value\": \"a\" }, { \"value\": \"b\" }, { \"value\": \"c\" }]\n```\n\nThen the following three nodes would be created:\n\n```json\n[{ \"value\": \"a\" }, { \"value\": \"b\" }, { \"value\": \"c\" }]\n```\n\n### Single Object\n\nThe algorithm for single JSON objects is to convert the object defined at the\nroot of the file into a node. The type of the node is based on the name of the\nparent directory.\n\nFor example, let's say your project has a data layout like:\n\n```\ndata/\n letters/\n a.json\n b.json\n c.json\n```\n\nWhere each of `a.json`, `b.json` and `c.json` look like:\n\n```json\n{ \"value\": \"a\" }\n```\n\n```json\n{ \"value\": \"b\" }\n```\n\n```json\n{ \"value\": \"c\" }\n```\n\nThen the following three nodes would be created:\n\n```json\n[\n {\n \"value\": \"a\"\n },\n {\n \"value\": \"b\"\n },\n {\n \"value\": \"c\"\n }\n]\n```\n\n## How to query\n\nRegardless of whether you choose to structure your data in arrays of objects or\nsingle objects, you'd be able to query your letters like:\n\n```graphql\n{\n allLettersJson {\n edges {\n node {\n value\n }\n }\n }\n}\n```\n\nWhich would return:\n\n```javascript\n{\n allLettersJson: {\n edges: [\n {\n node: {\n value: \"a\",\n },\n },\n {\n node: {\n value: \"b\",\n },\n },\n {\n node: {\n value: \"c\",\n },\n },\n ]\n }\n}\n```\n\n## Configuration options\n\n**`typeName`** [string|function][optional]\n\nThe default naming convention documented above can be changed with\neither a static string value (e.g. to be able to query all json with a\nsimple query):\n\n```javascript\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-transformer-json`,\n options: {\n typeName: `Json`, // a fixed string\n },\n },\n ],\n}\n```\n\n```graphql\n{\n allJson {\n edges {\n node {\n value\n }\n }\n }\n}\n```\n\nor a function that receives the following arguments:\n\n- `node`: the graphql node that is being processed, e.g. a File node with\n json content\n- `object`: a single object (either an item from an array or the whole json content)\n- `isArray`: boolean, true if `object` is part of an array\n\n```json\n[\n {\n \"level\": \"info\",\n \"message\": \"hurray\"\n },\n {\n \"level\": \"info\",\n \"message\": \"it works\"\n },\n {\n \"level\": \"warning\",\n \"message\": \"look out\"\n }\n]\n```\n\n```javascript\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-transformer-json`,\n options: {\n typeName: ({ node, object, isArray }) => object.level,\n },\n },\n ],\n}\n```\n\n```graphql\n{\n allInfo {\n edges {\n node {\n message\n }\n }\n }\n}\n```\n\n## Examples\n\nThe [gatsbygram example site](https://github.com/gatsbyjs/gatsby/blob/master/examples/gatsbygram/gatsby-node.js) uses this plugin.\n\n## Troubleshooting\n\nIf some fields are missing or you see the error on build:\n\n> There are conflicting field types in your data. GraphQL schema will omit those fields.\n\nIt's probably because you have arrays of mixed values somewhere. For instance:\n\n```json\n{\n \"stuff\": [25, \"bob\"],\n \"orEven\": [[25, \"bob\"], [23, \"joe\"]]\n}\n```\n\nIf you can rewrite your data with objects, you should be good to go:\n\n```json\n{\n \"stuff\": [{ \"count\": 25, \"name\": \"bob\" }],\n \"orEven\": [{ \"count\": 25, \"name\": \"bob\" }, { \"count\": 23, \"name\": \"joe\" }]\n}\n```\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","json"],"computedKeywords":[],"computedMetadata":{},"created":1492540887392,"modified":1561038625169,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:42.646Z","_searchInternal":{"concatenatedName":"gatsbytransformerjson","alternativeNames":["gatsbytransformerjson","gatsby transformer json","gatsby-transformer-json"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-transformer-json/CHANGELOG.md","jsDelivrHits":50,"objectID":"gatsby-transformer-json","_highlightResult":{"name":{"value":"gatsby-transformer-json","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby transformer plugin for JSON files","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"json","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbytransformerjson","matchLevel":"none","matchedWords":[]},{"value":"gatsby transformer json","matchLevel":"none","matchedWords":[]},{"value":"gatsby-transformer-json","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-react-svg","downloadsLast30Days":63990,"downloadsRatio":0.0001402093443515771,"humanDownloadsLast30Days":"64k","popular":false,"version":"2.1.1","versions":{"1.1.0":"2018-03-06T04:29:47.131Z","1.1.1":"2018-03-14T16:20:42.960Z","2.0.0-beta1":"2018-08-21T02:32:08.332Z","2.0.0":"2018-09-17T22:20:53.762Z","2.1.0":"2019-03-05T16:06:29.330Z","2.1.1":"2019-03-18T17:56:20.775Z"},"tags":{"latest":"2.1.1","next":"2.0.0-beta1"},"description":"Adds svg-react-loader to gatsby webpack config.","dependencies":{"svg-react-loader":"^0.4.4"},"devDependencies":{},"repository":{"url":"https://github.com/jacobmischka/gatsby-plugin-react-svg","project":"gatsby-plugin-react-svg","user":"jacobmischka","host":"github.com","path":"","head":"fac093c65beefb90b8c5567e55aab223dc9d4ea3","branch":"fac093c65beefb90b8c5567e55aab223dc9d4ea3"},"githubRepo":{"user":"jacobmischka","project":"gatsby-plugin-react-svg","path":"","head":"fac093c65beefb90b8c5567e55aab223dc9d4ea3"},"gitHead":"fac093c65beefb90b8c5567e55aab223dc9d4ea3","readme":"# gatsby-plugin-react-svg [![npm version](https://badge.fury.io/js/gatsby-plugin-react-svg.svg)](https://badge.fury.io/js/gatsby-plugin-react-svg)\n\nAdds [`svg-react-loader`](https://github.com/jhamlet/svg-react-loader) to gatsby webpack config.\n\n> **Note**: the plugin can **remove `SVG`s from the built-in `url-loader` config** in case invlaid configuration.\n\n## Install\n\n`npm install --save gatsby-plugin-react-svg`\n\n## How to use\n\n```js\n// In your gatsby-config.js\n\nplugins: [\n {\n resolve: \"gatsby-plugin-react-svg\",\n options: {\n rule: {\n include: /assets/ // See below to configure properly\n }\n }\n }\n];\n```\n\n## Configuration\n\nThe `rule` plugin option can be used to pass [rule options](https://webpack.js.org/configuration/module/#rule). If either `include` or `exclude` options are present, `svg-react-loader` will use them and `url-loader` will be reenabled with the inverse.\n\nThe following configuration uses `svg-react-loader` to process SVGs from a path matching `/assets/`, and `url-loader` to process SVGs from everywhere else.\n\n```js\n{\n resolve: 'gatsby-plugin-react-svg',\n options: {\n rule: {\n include: /assets/\n }\n }\n}\n```\n\nFrom now on you can import SVGs and use them as Components:\n\n```js\nimport Icon from \"./path/assets/icon.svg\";\n\n// ...\n\n<Icon />;\n```\n\nAnother common configuration:\n\n- name SVGs used in React components like `something.inline.svg` and process them with `svg-react-loader`\n- name other SVGs (e.g. used in css/scss) `something.svg` and process them with the default `url-loader`\n\n```js\n{\n resolve: 'gatsby-plugin-react-svg',\n options: {\n rule: {\n include: /\\.inline\\.svg$/\n }\n }\n}\n```\n\nIn React components:\n\n```js\nimport Something from \"./path/something.inline.svg\";\n\n// ...\n\n<Something />;\n```\n\nIn styles file:\n\n```css\n.header-background {\n background-image: url(./path/something.svg);\n}\n```\n\n## Troubleshooting\n\n### I get \"InvalidCharacterError\" overlay in my browser during development\n\nExample of this error:\n```bash\nInvalidCharacterError: Failed to execute 'createElement' on 'Document':\nThe tag name provided ('data:image/svg+xml; ...\n```\n\nIt's likely that you use SVG in you React component, that is processed by `url-loader` instead of `svg-react-loader` due to incorrect configuration.\n\n### I get endless spinner (with an infinite loop in the background) in my browser during development\n\nIt's likely that some of your SVGs used in css/sass files are processed by `svg-react-loader` instead of `url-loader` due to incorrect configuration.\n\n### I get error \"Module parse failed\" in console\n\nExample of this error:\n```bash\nERROR in ./src/images/some-image.png 1:0\nModule parse failed: Unexpected character '�' (1:0)\n```\n\nIn case you see such error, it's likely that you configured `exclude/include` rule options incorrectly. Please check configuration section above.\n","owner":{"name":"jacobmischka","avatar":"https://github.com/jacobmischka.png","link":"https://github.com/jacobmischka"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","svg","react","gatsby-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1520310586955,"modified":1552931783229,"lastPublisher":{"name":"jacobmischka","email":"jacob@mischka.me","avatar":"https://gravatar.com/avatar/ec9a967bc62d66d087910e702658a660","link":"https://www.npmjs.com/~jacobmischka"},"owners":[{"name":"jacobmischka","email":"jacob@mischka.me","avatar":"https://gravatar.com/avatar/ec9a967bc62d66d087910e702658a660","link":"https://www.npmjs.com/~jacobmischka"}],"lastCrawl":"2019-06-24T10:15:06.753Z","_searchInternal":{"concatenatedName":"gatsbypluginreactsvg","alternativeNames":["gatsbypluginreactsvg","gatsby plugin react svg","gatsby-plugin-react-svg"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":21,"objectID":"gatsby-plugin-react-svg","_highlightResult":{"name":{"value":"gatsby-plugin-react-svg","matchLevel":"none","matchedWords":[]},"description":{"value":"Adds svg-react-loader to gatsby webpack config.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"jacobmischka","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"svg","matchLevel":"none","matchedWords":[]},{"value":"react","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"jacobmischka","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginreactsvg","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin react svg","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-react-svg","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-netlify-cms","downloadsLast30Days":58444,"downloadsRatio":0.0001280574296184336,"humanDownloadsLast30Days":"58.4k","popular":false,"version":"4.1.0","versions":{"1.0.0":"2018-01-12T15:31:31.979Z","1.0.1":"2018-01-13T21:32:23.306Z","1.0.2":"2018-01-15T17:30:19.594Z","1.1.0-alpha.aeb05561":"2018-01-18T01:52:54.020Z","1.1.0-alpha.7b47e00d":"2018-01-18T02:09:57.019Z","1.1.0-alpha.f5c1df61":"2018-01-18T17:30:14.106Z","1.0.4":"2018-01-20T01:17:31.420Z","1.1.0-alpha.926cb6da":"2018-01-21T01:42:10.138Z","1.1.0-alpha.3f307d61":"2018-01-21T02:22:45.548Z","1.0.5":"2018-01-23T19:17:40.865Z","1.1.0-alpha.d1544e1b":"2018-01-25T00:14:14.027Z","1.0.6":"2018-02-07T20:24:39.704Z","1.1.0-alpha.53bbd4cd":"2018-02-10T20:34:28.112Z","1.1.0-alpha.2b695217":"2018-02-10T22:36:37.685Z","1.1.0-alpha.32ef58da":"2018-02-11T03:44:36.315Z","1.1.0-alpha.5182142b":"2018-02-11T04:12:23.219Z","1.0.7":"2018-02-13T01:11:54.623Z","1.1.0-alpha.6ab84875":"2018-02-15T02:06:39.071Z","1.1.0-alpha.9d4de2a6":"2018-02-15T20:32:18.628Z","1.1.0-alpha.9e381f74":"2018-02-15T21:12:28.567Z","1.1.0-alpha.dd504153":"2018-02-15T21:29:32.717Z","1.1.0-alpha.b68b7f5c":"2018-02-15T22:00:39.714Z","1.1.0-alpha.bb258cb5":"2018-02-16T00:29:33.982Z","1.1.0-alpha.e28a1c8e":"2018-02-16T01:11:00.042Z","1.1.0-alpha.067e672c":"2018-02-17T02:45:05.613Z","1.1.0-alpha.d0b8dd9e":"2018-02-17T19:05:02.881Z","1.0.8-0":"2018-02-17T19:30:57.988Z","1.0.8":"2018-02-22T23:37:05.472Z","1.0.9":"2018-02-24T00:55:25.956Z","1.0.10":"2018-02-26T19:13:51.120Z","1.1.0-alpha.e66c6c9c":"2018-02-27T01:24:48.283Z","1.0.11":"2018-02-28T20:39:53.674Z","1.1.0-alpha.2cbec6d6":"2018-03-03T06:46:33.849Z","1.0.8-1":"2018-03-03T07:23:48.581Z","1.1.0-alpha.f98688ee":"2018-03-07T02:25:39.070Z","1.0.8-2":"2018-03-07T02:34:36.221Z","1.1.0-alpha.9fe50b00":"2018-03-08T03:04:17.152Z","1.0.12":"2018-03-08T05:23:47.835Z","1.1.0-alpha.34eda94b":"2018-03-17T21:22:12.564Z","1.1.0-alpha.12622d64":"2018-03-18T00:00:05.495Z","1.1.0-alpha.84bd71b4":"2018-03-18T00:39:46.966Z","1.1.0-alpha.6ad61a13":"2018-03-21T17:49:23.140Z","1.1.0-alpha.5f47082e":"2018-03-23T22:47:31.916Z","1.0.8-3":"2018-03-23T23:18:54.013Z","1.1.0-alpha.95fcd4af":"2018-03-29T02:22:19.465Z","1.1.0-alpha.20252dc3":"2018-03-29T02:44:02.161Z","1.1.0-alpha.4a09f745":"2018-04-05T22:14:48.554Z","1.1.0-alpha.76793cd8":"2018-04-07T22:12:11.358Z","2.0.1":"2018-04-14T22:19:44.110Z","1.1.0-alpha.5c9569c0":"2018-04-19T16:56:54.356Z","1.1.0-alpha.523a4286":"2018-04-19T23:51:52.057Z","1.1.0-alpha.5421f383":"2018-04-20T06:52:44.404Z","1.1.0-alpha.e9c3027b":"2018-04-20T17:56:13.824Z","1.0.8-4":"2018-04-22T01:53:54.290Z","1.0.8-5":"2018-04-25T16:25:12.044Z","1.0.8-6":"2018-04-26T18:19:26.345Z","1.0.8-7":"2018-05-11T21:43:41.204Z","1.0.8-9":"2018-05-15T19:54:23.283Z","1.0.8-10":"2018-05-31T14:03:49.940Z","1.0.8-11":"2018-05-31T17:15:55.144Z","1.0.8-12":"2018-06-11T15:22:37.798Z","1.0.8-13":"2018-06-11T16:54:51.303Z","2.0.0-alpha.1":"2018-06-16T19:08:42.071Z","2.0.0-alpha.8ac171a1":"2018-06-16T19:25:20.941Z","2.0.0-alpha.e328d33f":"2018-06-16T19:32:51.642Z","2.0.0-alpha.80a21f04":"2018-06-16T19:37:00.150Z","2.0.0-alpha.2":"2018-06-16T23:32:46.740Z","2.0.0-beta.0":"2018-06-17T06:53:52.326Z","2.0.0-beta.1":"2018-06-17T08:12:53.218Z","2.0.0-beta.2":"2018-06-20T17:16:03.513Z","2.0.0-beta.3":"2018-06-20T20:45:27.026Z","2.0.0-beta.4":"2018-07-06T16:59:37.144Z","2.0.0-beta.5":"2018-07-09T22:12:34.244Z","2.0.0-beta.6":"2018-07-17T18:02:40.270Z","2.0.0-beta.7":"2018-07-21T16:00:08.655Z","3.0.0-beta.1":"2018-07-31T14:24:32.408Z","3.0.0-beta.2":"2018-08-01T13:08:06.630Z","3.0.0-beta.3":"2018-08-04T18:35:59.917Z","3.0.0-beta.4":"2018-08-08T15:31:04.646Z","3.0.0-rc.0":"2018-08-21T00:58:31.515Z","3.0.0-rc.1":"2018-08-29T18:28:51.089Z","3.0.0-rc.2":"2018-09-11T09:53:30.018Z","3.0.0-rc.3":"2018-09-11T10:48:46.421Z","3.0.0-rc.4":"2018-09-11T11:23:05.043Z","3.0.0-rc.5":"2018-09-11T12:12:08.672Z","3.0.0":"2018-09-17T20:41:47.795Z","3.0.1":"2018-09-18T10:08:17.861Z","3.0.2":"2018-09-18T22:22:29.204Z","3.0.3":"2018-09-24T12:55:30.860Z","3.0.4":"2018-10-18T19:17:16.537Z","3.0.5":"2018-10-29T15:23:55.171Z","3.0.6":"2018-11-06T01:40:04.097Z","3.0.7":"2018-11-08T01:37:00.382Z","3.0.8":"2018-11-27T11:46:32.532Z","3.0.9":"2018-11-29T12:13:43.500Z","3.0.10":"2019-01-23T15:14:15.576Z","3.0.11":"2019-01-28T18:14:39.680Z","3.0.12":"2019-01-31T18:48:45.660Z","3.0.13":"2019-03-11T08:54:33.064Z","3.0.14":"2019-03-11T15:24:22.673Z","3.0.15":"2019-03-14T23:19:23.425Z","3.0.16":"2019-03-15T15:57:48.179Z","3.0.17":"2019-03-26T13:15:08.620Z","3.0.18":"2019-04-15T14:37:50.687Z","4.0.0":"2019-05-03T10:29:53.156Z","4.0.1":"2019-05-09T21:19:49.831Z","4.0.2":"2019-06-14T13:50:42.125Z","4.0.3":"2019-06-18T00:04:52.658Z","4.1.0":"2019-06-20T13:48:58.442Z"},"tags":{"latest":"4.1.0"},"description":"A Gatsby plugin which generates the Netlify CMS single page app","dependencies":{"@pieh/friendly-errors-webpack-plugin":"1.7.0-chalk-2","html-webpack-exclude-assets-plugin":"^0.0.7","html-webpack-plugin":"^3.2.0","lodash":"^4.17.10","mini-css-extract-plugin":"^0.4.1","netlify-identity-widget":"^1.4.11","webpack":"^4.16.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4","react":"^16.8.4","react-dom":"^16.8.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-netlify-cms","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-netlify-cms","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-netlify-cms","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-netlify-cms\n\n**Gatsby v1 and Netlify CMS 1.x require [`gatsby-plugin-netlify-cms@^2.0.0`][1].**\n\n**Gatsby v2 and Netlify CMS 2.x require [`gatsby-plugin-netlify-cms@^3.0.0`][2].**\n\n**Gatsby v2 and Netlify CMS (netlify-cms-app) 2.9.x required `gatsby-plugin-netlify-cms@^4.0.0`, which is documented below.**\n\n## Overview\n\nAutomatically generates an `admin/index.html` with a default Netlify CMS implementation.\n\nNetlify CMS is a React single page app for editing git based content via API.\nIts built for non-technical and technical editors alike, and its super easy to\ninstall and configure. For more details, check out the [docs\nsite](https://netlifycms.org).\n\n**Note:** `gatsby-plugin-netlify-cms@^4.0.0` changes the requirement for Netlify CMS to use a new library published `netlify-cms-app@^2.9.x` and is a **breaking change**.\n\n## Install\n\n```shell\nnpm install --save netlify-cms-app gatsby-plugin-netlify-cms\n```\n\n## How to use\n\nAdd the Netlify CMS plugin in your `gatsby-config.js`:\n\n```javascript\nplugins: [`gatsby-plugin-netlify-cms`]\n```\n\nThen add your Netlify CMS [configuration\nfile](https://www.netlifycms.org/docs/add-to-your-site/#configuration) in\n`static/admin/config.yml`.\n\n## Options\n\nNetlify CMS can be configured via the plugin options below. You can learn\nabout how to pass options to plugins in the [Gatsby\ndocs](https://www.gatsbyjs.org/docs/plugins/#how-to-use-gatsby-plugins).\n\n### `modulePath`\n\n(_optional_, type: `string | Array<string>`, default: `undefined`)\n\nIf you need to customize Netlify CMS, e.g. registering [custom\nwidgets](https://www.netlifycms.org/docs/custom-widgets/#registerwidget) or\nstyling the [preview\npane](https://www.netlifycms.org/docs/customization/#registerpreviewstyle),\nyou'll need to do so in a JavaScript module and provide Gatsby with the path to\nyour module via the `modulePath` option. Any styles imported by this module (or\nby the modules that it imports, all the way down the chain) are automatically\napplied to the editor preview pane by the plugin.\n\n```javascript\nplugins: [\n {\n resolve: `gatsby-plugin-netlify-cms`,\n options: {\n /**\n * One convention is to place your Netlify CMS customization code in a\n * `src/cms` directory.\n */\n modulePath: `${__dirname}/src/cms/cms.js`,\n },\n },\n]\n```\n\nThe js module might look like this:\n\n```javascript\n/**\n * The default export of `netlify-cms-app` is an object with all of the Netlify CMS\n * extension registration methods, such as `registerWidget` and\n * `registerPreviewTemplate`.\n */\nimport CMS from \"netlify-cms-app\"\n\n/**\n * Any imported styles will automatically be applied to the editor preview\n * pane, there is no need to use `registerPreviewStyle` for imported styles.\n * All of the example imports below would result in styles being applied to the\n * preview pane.\n */\nimport \"module-that-imports-styles.js\"\nimport \"styles.scss\"\nimport \"../other-styles.css\"\n\n/**\n * Let's say you've created widget and preview components for a custom image\n * gallery widget in separate files:\n */\nimport ImageGalleryWidget from \"./image-gallery-widget.js\"\nimport ImageGalleryPreview from \"./image-gallery-preview.js\"\n\n/**\n * Register the imported widget:\n */\nCMS.registerWidget(`image-gallery`, ImageGalleryWidget, ImageGalleryPreview)\n```\n\n### `manualInit`\n\n(_optional_, type: `boolean`, default: `false`)\n\nSet this to `true` If you need to [manually initialize](https://www.netlifycms.org/docs/beta-features/#manual-initialization) Netlify CMS. The plugin will take care of setting `window.CMS_MANUAL_INIT` to `true`:\n\n```javascript\nplugins: [\n {\n resolve: `gatsby-plugin-netlify-cms`,\n options: {\n manualInit: true,\n },\n },\n]\n```\n\nThe js module might look like this:\n\n```javascript\nimport CMS from \"netlify-cms-app\"\n\n/**\n * Optionally pass in a config object. This object will be merged into `config.yml` if it exists\n */\n\nCMS.init({\n config: {\n backend: {\n name: \"git-gateway\",\n },\n },\n})\n```\n\n### `enableIdentityWidget`\n\n(_optional_, type: `boolean`, default: `true`)\n\n`enableIdentityWidget` is `true` by default, allowing [Netlify\nIdentity](https://www.netlify.com/docs/identity/) to be used without\nconfiguration, but you may need to disable it in some cases, such as when using\na Netlify CMS backend that conflicts. This is currently known to be the case\nwhen using the GitLab backend, but only when using implicit OAuth.\n\n```javascript\nplugins: [\n {\n resolve: `gatsby-plugin-netlify-cms`,\n options: {\n enableIdentityWidget: true,\n },\n },\n]\n```\n\n### `publicPath`\n\n(_optional_, type: `string`, default: `\"admin\"`)\n\nCustomize the path to Netlify CMS on your Gatsby site.\n\n### `htmlTitle`\n\n(_optional_, type: `string`, default: `Content Manager`)\n\nCustomize the value of the `title` tag in your CMS HTML (shows in the browser\nbar).\n\n## Example\n\nHere is the plugin with example values for all options (note that no option is\nrequired):\n\n```javascript\nplugins: [\n {\n resolve: `gatsby-plugin-netlify-cms`,\n options: {\n modulePath: `path/to/custom/script.js`, // default: undefined\n enableIdentityWidget: true,\n publicPath: `admin`,\n htmlTitle: `Content Manager`,\n },\n },\n]\n```\n\n## Support\n\nFor help with integrating Netlify CMS with Gatsby, check out the community\n[Gitter](https://gitter.im/netlify/netlifycms).\n\n[1]: https://github.com/gatsbyjs/gatsby/blob/gatsby-plugin-netlify-cms@2.0.1/packages/gatsby-plugin-netlify-cms/README.md\n[2]: https://github.com/gatsbyjs/gatsby/blob/gatsby-plugin-netlify-cms@3.0.18/packages/gatsby-plugin-netlify-cms/README.md\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","netlify","netlify-cms","cms"],"computedKeywords":[],"computedMetadata":{},"created":1515771091979,"modified":1561038544178,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"shawn@erquh.art","name":"erquhart","avatar":"https://gravatar.com/avatar/49d1a658ac39bdd82d52866b175734c4","link":"https://www.npmjs.com/~erquhart"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:06.634Z","_searchInternal":{"concatenatedName":"gatsbypluginnetlifycms","alternativeNames":["gatsbypluginnetlifycms","gatsby plugin netlify cms","gatsby-plugin-netlify-cms"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-netlify-cms/CHANGELOG.md","jsDelivrHits":0,"objectID":"gatsby-plugin-netlify-cms","_highlightResult":{"name":{"value":"gatsby-plugin-netlify-cms","matchLevel":"none","matchedWords":[]},"description":{"value":"A Gatsby plugin which generates the Netlify CMS single page app","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"netlify","matchLevel":"none","matchedWords":[]},{"value":"netlify-cms","matchLevel":"none","matchedWords":[]},{"value":"cms","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"erquhart","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginnetlifycms","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin netlify cms","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-netlify-cms","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-favicon","downloadsLast30Days":55200,"downloadsRatio":0.0001209494578560252,"humanDownloadsLast30Days":"55.2k","popular":false,"version":"3.1.6","versions":{"1.0.0":"2017-08-08T15:51:53.129Z","1.1.0":"2017-11-05T15:10:51.249Z","2.0.0":"2017-11-06T09:41:31.578Z","2.1.1":"2017-11-30T16:19:33.215Z","3.0.0":"2018-07-24T07:19:12.592Z","3.1.0":"2018-07-24T22:07:22.498Z","3.1.1":"2018-07-26T16:55:16.220Z","3.1.2":"2018-07-26T18:39:09.897Z","3.1.3":"2018-09-03T20:50:23.043Z","3.1.4":"2018-09-04T08:05:06.445Z","3.1.5":"2018-12-17T13:25:46.663Z","3.1.6":"2019-04-03T09:42:46.159Z"},"tags":{"latest":"3.1.6"},"description":"Gatsby plugin to add favicon for all configurations","dependencies":{"favicons-webpack-plugin":"git+https://github.com/Creatiwity/favicons-webpack-plugin.git#0872de414061baaad0a2853c77ae75bc38b8bbbf","html-react-parser":"^0.6.4","lodash":"^4.17.11"},"devDependencies":{},"repository":{"url":"https://github.com/Creatiwity/gatsby-plugin-favicon","project":"gatsby-plugin-favicon","user":"Creatiwity","host":"github.com","path":"","head":"65bf5567efcc240881f1d1b83177579e2c87ee30","branch":"65bf5567efcc240881f1d1b83177579e2c87ee30"},"githubRepo":{"user":"Creatiwity","project":"gatsby-plugin-favicon","path":"","head":"65bf5567efcc240881f1d1b83177579e2c87ee30"},"gitHead":"65bf5567efcc240881f1d1b83177579e2c87ee30","readme":"README.md","owner":{"name":"Creatiwity","avatar":"https://github.com/Creatiwity.png","link":"https://github.com/Creatiwity"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","favicon"],"computedKeywords":[],"computedMetadata":{},"created":1502207513129,"modified":1554284568617,"lastPublisher":{"name":"julienblatecky","email":"julien.blatecky@creatiwity.net","avatar":"https://gravatar.com/avatar/f8fb2cc7a2642c29c79034d43c7b89e3","link":"https://www.npmjs.com/~julienblatecky"},"owners":[{"name":"julienblatecky","email":"julien.blatecky@creatiwity.net","avatar":"https://gravatar.com/avatar/f8fb2cc7a2642c29c79034d43c7b89e3","link":"https://www.npmjs.com/~julienblatecky"}],"lastCrawl":"2019-06-24T10:14:55.711Z","_searchInternal":{"concatenatedName":"gatsbypluginfavicon","alternativeNames":["gatsbypluginfavicon","gatsby plugin favicon","gatsby-plugin-favicon"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":0,"objectID":"gatsby-plugin-favicon","_highlightResult":{"name":{"value":"gatsby-plugin-favicon","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin to add favicon for all configurations","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"Creatiwity","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"favicon","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"julienblatecky","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginfavicon","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin favicon","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-favicon","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-remark-autolink-headers","downloadsLast30Days":51775,"downloadsRatio":0.0001134448945741976,"humanDownloadsLast30Days":"51.8k","popular":false,"version":"2.1.0","versions":{"1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:12.621Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:42.363Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:32:17.262Z","1.0.0-alpha14":"2017-05-06T01:18:19.001Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:04.824Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:08.799Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:10.615Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:44:08.779Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:55:09.506Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:12:03.172Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:34.320Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:34:08.709Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:29.073Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:37.346Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:30:00.499Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:43.878Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:22:07.271Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:40.713Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:33.138Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:29:55.718Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:05:59.419Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:27:11.735Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:42:54.039Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:40:07.007Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:47.945Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:47:47.527Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:24.872Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:25.635Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:37:54.364Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:16:50.328Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:35.195Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:48.417Z","1.0.0-alpha17":"2017-06-02T18:44:59.030Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:36:49.719Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:38:02.436Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:39:09.660Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:34:04.730Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:24.665Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:52:07.508Z","1.0.0-alpha.22":"2017-06-08T04:28:01.215Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:15.012Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:29.238Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:49.333Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:25.145Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:26:01.829Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:07:36.337Z","1.0.0-beta.1":"2017-06-15T20:25:56.562Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:21.154Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:30.266Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:38.885Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:36:00.207Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:20.671Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:44.051Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:50.347Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:09.063Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:56.483Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:43.717Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:48.983Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:45.440Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:24.623Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:31.767Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:10.034Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:22:02.141Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:25.922Z","1.0.0-beta.6":"2017-07-02T06:43:07.866Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:40:59.747Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:41.425Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:40.232Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:14.565Z","1.0.0":"2017-07-06T19:43:34.849Z","1.0.1":"2017-07-06T19:49:01.267Z","1.4.1":"2017-07-26T17:33:57.470Z","1.4.2":"2017-08-11T14:03:19.414Z","1.4.3":"2017-08-11T20:03:08.450Z","1.4.4":"2017-08-19T01:52:36.232Z","1.5.0-alpha.22c8a6f1":"2017-08-24T16:12:31.799Z","2.0.0":"2017-08-25T18:07:05.086Z","1.4.5":"2017-08-25T18:21:57.209Z","1.4.6":"2017-08-30T22:58:45.445Z","1.4.7":"2017-08-31T23:41:46.318Z","1.5.0-alpha.76b32701":"2017-09-15T18:01:38.438Z","1.5.0-alpha.93f2e2a2":"2017-09-16T11:50:39.722Z","1.5.0-alpha.5db7a275":"2017-09-16T13:46:31.384Z","1.5.0-alpha.1460dad9":"2017-09-18T12:29:20.395Z","1.4.8":"2017-11-09T00:53:30.636Z","1.4.9":"2017-11-29T00:09:54.596Z","1.4.10":"2017-12-10T00:45:37.092Z","1.4.11":"2017-12-22T17:55:30.163Z","1.5.0-alpha.f20ac0ed":"2018-01-11T18:39:21.635Z","1.5.0-alpha.a0a09c94":"2018-01-11T18:48:13.992Z","1.5.0-alpha.b50f2063":"2018-01-11T18:55:19.932Z","1.5.0-alpha.03b9df85":"2018-01-12T14:36:27.669Z","1.5.0-alpha.e9df8e57":"2018-01-12T14:47:40.706Z","1.5.0-alpha.8c822451":"2018-01-12T15:01:08.362Z","1.5.0-alpha.e5586916":"2018-01-12T15:22:41.937Z","1.5.0-alpha.9da1bca1":"2018-01-12T18:07:48.569Z","1.5.0-alpha.aeb05561":"2018-01-18T01:53:16.693Z","1.5.0-alpha.7b47e00d":"2018-01-18T02:10:15.555Z","1.5.0-alpha.f5c1df61":"2018-01-18T17:30:42.271Z","1.5.0-alpha.926cb6da":"2018-01-21T01:42:31.124Z","1.5.0-alpha.3f307d61":"2018-01-21T02:23:14.293Z","1.5.0-alpha.d1544e1b":"2018-01-25T00:14:39.888Z","1.5.0-alpha.53bbd4cd":"2018-02-10T20:35:05.236Z","1.5.0-alpha.2b695217":"2018-02-10T22:37:01.362Z","1.5.0-alpha.32ef58da":"2018-02-11T03:45:02.216Z","1.5.0-alpha.5182142b":"2018-02-11T04:12:59.033Z","1.4.12":"2018-02-13T01:12:16.435Z","1.5.0-alpha.6ab84875":"2018-02-15T02:07:05.408Z","1.5.0-alpha.9d4de2a6":"2018-02-15T20:32:49.369Z","1.5.0-alpha.9e381f74":"2018-02-15T21:12:53.666Z","1.5.0-alpha.dd504153":"2018-02-15T21:30:06.334Z","1.5.0-alpha.b68b7f5c":"2018-02-15T22:01:06.845Z","1.5.0-alpha.bb258cb5":"2018-02-16T00:29:58.536Z","1.5.0-alpha.e28a1c8e":"2018-02-16T01:11:22.818Z","1.5.0-alpha.067e672c":"2018-02-17T02:45:32.779Z","1.5.0-alpha.d0b8dd9e":"2018-02-17T19:05:34.695Z","1.4.13-0":"2018-02-17T19:31:21.933Z","1.5.0-alpha.e66c6c9c":"2018-02-27T01:25:18.658Z","1.4.13":"2018-02-28T20:40:20.786Z","1.5.0-alpha.2cbec6d6":"2018-03-03T06:46:59.350Z","1.4.13-1":"2018-03-03T07:24:21.949Z","1.5.0-alpha.f98688ee":"2018-03-07T02:26:06.393Z","1.5.0-alpha.9fe50b00":"2018-03-08T03:04:39.810Z","1.5.0-alpha.34eda94b":"2018-03-17T21:22:33.801Z","1.5.0-alpha.12622d64":"2018-03-18T00:00:37.076Z","1.5.0-alpha.84bd71b4":"2018-03-18T00:40:30.064Z","1.5.0-alpha.6ad61a13":"2018-03-21T17:50:01.483Z","1.5.0-alpha.5f47082e":"2018-03-23T22:48:05.267Z","1.4.13-2":"2018-03-23T23:19:32.237Z","1.4.14":"2018-03-29T02:10:09.964Z","1.4.15":"2018-03-29T02:10:50.516Z","1.5.0-alpha.95fcd4af":"2018-03-29T02:23:00.078Z","1.5.0-alpha.20252dc3":"2018-03-29T02:44:48.170Z","1.4.16":"2018-04-04T15:14:33.492Z","1.5.0-alpha.4a09f745":"2018-04-05T22:15:11.499Z","1.5.0-alpha.76793cd8":"2018-04-07T22:12:49.036Z","1.4.17":"2018-04-19T16:33:44.273Z","1.5.0-alpha.5c9569c0":"2018-04-19T16:57:39.488Z","1.5.0-alpha.523a4286":"2018-04-19T23:52:47.467Z","1.5.0-alpha.5421f383":"2018-04-20T06:53:34.661Z","1.5.0-alpha.e9c3027b":"2018-04-20T17:57:22.513Z","1.4.13-3":"2018-04-22T01:54:34.826Z","1.4.13-4":"2018-04-25T16:25:54.995Z","1.4.13-5":"2018-04-26T18:20:08.000Z","1.4.18":"2018-05-04T00:17:14.060Z","1.4.13-6":"2018-05-11T21:44:26.923Z","1.4.13-8":"2018-05-15T20:29:22.487Z","1.4.13-9":"2018-05-18T15:35:43.485Z","1.4.13-10":"2018-05-31T14:05:55.844Z","1.4.13-11":"2018-05-31T17:18:55.191Z","1.4.13-12":"2018-06-11T15:25:41.876Z","1.4.13-13":"2018-06-11T16:55:59.055Z","2.0.0-alpha.e328d33f":"2018-06-16T19:33:20.071Z","2.0.0-alpha.80a21f04":"2018-06-16T19:37:36.318Z","2.0.0-alpha.2":"2018-06-16T23:33:17.574Z","1.4.19":"2018-06-17T01:53:16.565Z","2.0.0-beta.0":"2018-06-17T06:54:05.990Z","2.0.0-beta.1":"2018-06-17T08:13:05.770Z","2.0.0-beta.2":"2018-06-20T17:16:03.481Z","2.0.0-beta.3":"2018-06-20T20:45:40.440Z","2.0.0-beta.4":"2018-07-21T16:00:18.088Z","2.0.0-beta.5":"2018-07-31T14:24:32.182Z","2.0.0-rc.0":"2018-08-21T00:59:04.828Z","2.0.0-rc.1":"2018-08-29T18:29:25.540Z","2.0.0-rc.2":"2018-09-14T20:48:25.906Z","2.0.5":"2018-09-17T20:42:36.812Z","2.0.6":"2018-09-19T21:24:04.856Z","2.0.7":"2018-10-15T20:29:58.934Z","2.0.8":"2018-10-23T12:19:08.414Z","2.0.9":"2018-10-29T15:24:27.601Z","2.0.10":"2018-11-02T18:09:17.829Z","2.0.11":"2018-11-08T01:37:08.011Z","2.0.12":"2018-11-29T12:14:20.235Z","2.0.13":"2019-02-01T12:25:29.368Z","2.0.14":"2019-02-07T22:45:35.091Z","2.0.15":"2019-02-28T11:32:21.727Z","2.0.16-alpha.0":"2019-03-04T07:14:01.179Z","2.0.16":"2019-03-11T15:25:07.476Z","2.0.17":"2019-06-14T07:27:56.539Z","2.0.18":"2019-06-14T08:30:35.685Z","2.1.0":"2019-06-20T13:49:23.367Z"},"tags":{"latest":"2.1.0"},"description":"Gatsby plugin to autolink headers in markdown processed by Remark","dependencies":{"@babel/runtime":"^7.0.0","github-slugger":"^1.1.1","lodash":"^4.17.11","mdast-util-to-string":"^1.0.2","unist-util-visit":"^1.3.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-remark-autolink-headers","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-remark-autolink-headers","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-remark-autolink-headers","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-remark-autolink-headers\n\nAdds GitHub-style hover links to headers in your markdown files when they're rendered.\n\nThis is a sub-plugin for `gatsby-transformer-remark`. As demoed below, add this plugin to the options of `gatsby-transformer-remark`.\n\n## Install\n\n`npm install --save gatsby-remark-autolink-headers`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [`gatsby-remark-autolink-headers`],\n },\n },\n ],\n}\n```\n\nNote: if you are using `gatsby-remark-prismjs`, make sure that it’s listed after this plugin. Otherwise, you might face an issue described here: https://github.com/gatsbyjs/gatsby/issues/5764.\n\n```javascript\n// good\n{\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [\n `gatsby-remark-autolink-headers`,\n `gatsby-remark-prismjs`,\n ],\n },\n}\n\n// bad\n{\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [\n `gatsby-remark-prismjs`, // should be placed after `gatsby-remark-autolink-headers`\n `gatsby-remark-autolink-headers`,\n ],\n },\n}\n```\n\n## Options\n\n- `offsetY`: Signed integer. Vertical offset value in pixels (optional)\n- `icon`: SVG shape inside a template literal or boolean `false`. Set your own svg or disable icon (optional)\n- `className`: String. Set your own class for the anchor (optional)\n- `maintainCase`: Boolean. Maintains the case for markdown header (optional)\n- `removeAccents`: Boolean. Remove accents from generated headings IDs (optional)\n- `enableCustomId`: Boolean. Enable custom header IDs with `{#id}` (optional)\n\n```javascript\n// In your gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [\n {\n resolve: `gatsby-remark-autolink-headers`,\n options: {\n offsetY: `100`,\n icon: `<svg aria-hidden=\"true\" height=\"20\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"20\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg>`,\n className: `custom-class`,\n maintainCase: true,\n removeAccents: true,\n },\n },\n ],\n },\n },\n ],\n}\n```\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","remark"],"computedKeywords":[],"computedMetadata":{},"created":1494008772621,"modified":1561038567606,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:17.038Z","_searchInternal":{"concatenatedName":"gatsbyremarkautolinkheaders","alternativeNames":["gatsbyremarkautolinkheaders","gatsby remark autolink headers","gatsby-remark-autolink-headers"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-remark-autolink-headers/CHANGELOG.md","jsDelivrHits":125,"objectID":"gatsby-remark-autolink-headers","_highlightResult":{"name":{"value":"gatsby-remark-autolink-headers","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin to autolink headers in markdown processed by Remark","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"remark","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyremarkautolinkheaders","matchLevel":"none","matchedWords":[]},{"value":"gatsby remark autolink headers","matchLevel":"none","matchedWords":[]},{"value":"gatsby-remark-autolink-headers","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-source-graphql","downloadsLast30Days":48580,"downloadsRatio":0.0001064442873667700,"humanDownloadsLast30Days":"48.6k","popular":false,"version":"2.1.0","versions":{"1.0.0":"2018-05-06T15:17:06.412Z","1.1.0":"2018-06-05T20:15:46.731Z","1.1.1":"2018-06-06T15:50:15.104Z","2.0.0-beta.1":"2018-08-03T14:51:52.429Z","2.0.0-beta.2":"2018-08-10T16:12:59.422Z","2.0.0-rc.0":"2018-08-21T00:59:32.880Z","2.0.0-rc.1":"2018-08-29T17:08:19.516Z","2.0.0-rc.2":"2018-08-29T18:29:56.193Z","2.0.0-rc.6":"2018-09-11T12:12:39.784Z","2.0.0":"2018-09-17T20:42:56.745Z","2.0.1":"2018-09-18T10:08:17.885Z","2.0.2":"2018-09-18T19:14:08.127Z","2.0.3":"2018-09-27T08:26:24.257Z","2.0.4":"2018-10-09T14:24:21.709Z","2.0.5":"2018-10-29T15:24:45.636Z","2.0.6":"2018-11-05T20:17:35.686Z","2.0.7":"2018-11-29T12:14:42.341Z","2.0.8":"2018-12-29T15:10:44.497Z","2.0.9":"2019-02-01T10:24:33.422Z","2.0.10":"2019-02-01T12:25:43.876Z","2.0.11":"2019-02-28T11:32:23.242Z","2.0.12-alpha.0":"2019-03-04T07:14:09.401Z","2.0.12":"2019-03-08T13:45:49.546Z","2.0.13":"2019-03-08T14:41:39.697Z","2.0.14":"2019-03-11T15:25:26.951Z","2.0.15":"2019-03-15T15:58:06.033Z","2.0.16":"2019-04-08T11:06:21.643Z","2.0.17":"2019-04-08T18:42:02.768Z","2.0.18":"2019-04-12T18:25:51.021Z","2.0.19":"2019-06-10T07:02:29.232Z","2.1.0":"2019-06-20T13:49:43.328Z"},"tags":{"latest":"2.1.0"},"description":"Gatsby plugin which adds a third-party GraphQL API to Gatsby GraphQL","dependencies":{"@babel/runtime":"^7.0.0","apollo-link":"1.2.1","apollo-link-http":"^1.5.4","graphql":"^14.1.1","graphql-tools":"^3.0.4","invariant":"^2.2.4","node-fetch":"^1.7.3","uuid":"^3.1.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-source-graphql","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-source-graphql","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-source-graphql","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-source-graphql\n\nPlugin for connecting arbitrary GraphQL APIs to Gatsby GraphQL. Remote schemas are stitched together by adding a type that wraps the remote schema Query type and putting it under field of Gatsby GraphQL Query.\n\n- [Example website](https://using-gatsby-source-graphql.netlify.com/)\n- [Example website source](https://github.com/gatsbyjs/gatsby/tree/master/examples/using-gatsby-source-graphql)\n\n## Install\n\n`npm install --save gatsby-source-graphql`\n\n## How to use\n\nFirst, you need a way to pass environment variables to the build process, so secrets and other secured data aren't committed to source control. We recommend using [`dotenv`][dotenv] which will then expose environment variables. [Read more about dotenv and using environment variables here][envvars]. Then we can _use_ these environment variables and configure our plugin.\n\n```javascript\n// In your gatsby-config.js\nmodule.exports = {\n plugins: [\n // Simple config, passing URL\n {\n resolve: \"gatsby-source-graphql\",\n options: {\n // This type will contain remote schema Query type\n typeName: \"SWAPI\",\n // This is field under which it's accessible\n fieldName: \"swapi\",\n // Url to query from\n url: \"https://api.graphcms.com/simple/v1/swapi\",\n },\n },\n // Passing paramaters (passed to apollo-link)\n {\n resolve: \"gatsby-source-graphql\",\n options: {\n typeName: \"GitHub\",\n fieldName: \"github\",\n // Url to query from\n url: \"https://api.github.com/graphql\",\n // HTTP headers\n headers: {\n // Learn about environment variables: https://gatsby.dev/env-vars\n Authorization: `bearer ${process.env.GITHUB_TOKEN}`,\n },\n // Additional options to pass to node-fetch\n fetchOptions: {},\n },\n },\n // Creating arbitrary Apollo Link (for advanced situations)\n {\n resolve: \"gatsby-source-graphql\",\n options: {\n typeName: \"GitHub\",\n fieldName: \"github\",\n // Create Apollo Link manually. Can return a Promise.\n createLink: (pluginOptions) => {\n return createHttpLink({\n uri: 'https://api.github.com/graphql',\n headers: {\n 'Authorization': `bearer ${process.env.GITHUB_TOKEN}`,\n },\n fetch,\n })\n },\n },\n ],\n}\n```\n\n## How to Query\n\n```graphql\n{\n # Field name parameter defines how you can access third party api\n swapi {\n allSpecies {\n name\n }\n }\n github {\n viewer {\n email\n }\n }\n}\n```\n\n## Schema definitions\n\nBy default schema is introspected from the remote schema. Schema is cached in `.cache` in this case and refreshing the schema requires deleting the cache.\n\nTo control schema consumption, you can alternatively construct schema definition by passing `createSchema` callback. This way you could, for example, read schema SDL or introspection JSON. When `createSchema` callback is used, schema isn't cached. `createSchema` can return a Promise to GraphQLSchema instance or GraphQLSchema instance.\n\n```js\nconst fs = require(\"fs\")\nconst { buildSchema, buildClientSchema } = require(\"graphql\")\n\nmodule.exports = {\n plugins: [\n {\n resolve: \"gatsby-source-graphql\",\n options: {\n typeName: \"SWAPI\",\n fieldName: \"swapi\",\n url: \"https://api.graphcms.com/simple/v1/swapi\",\n\n createSchema: async () => {\n const json = JSON.parse(\n fs.readFileSync(`${__dirname}/introspection.json`)\n )\n return buildClientSchema(json.data)\n },\n },\n },\n {\n resolve: \"gatsby-source-graphql\",\n options: {\n typeName: \"SWAPI\",\n fieldName: \"swapi\",\n url: \"https://api.graphcms.com/simple/v1/swapi\",\n\n createSchema: async () => {\n const sdl = fs.readFileSync(`${__dirname}/schema.sdl`).toString()\n return buildSchema(sdl)\n },\n },\n },\n ],\n}\n```\n\n# Refetching data\n\nBy default, `gatsby-source-graphql` will only refetch the data once the server is restarted. It's also possible to configure the plugin to periodically refetch the data. The option is called `refetchInterval` and specifies the timeout in seconds.\n\n```js\nmodule.exports = {\n plugins: [\n // Simple config, passing URL\n {\n resolve: \"gatsby-source-graphql\",\n options: {\n // This type will contain remote schema Query type\n typeName: \"SWAPI\",\n // This is field under which it's accessible\n fieldName: \"swapi\",\n // Url to query from\n url: \"https://api.graphcms.com/simple/v1/swapi\",\n\n // refetch interval in seconds\n refetchInterval: 60,\n },\n },\n ],\n}\n```\n\n[dotenv]: https://github.com/motdotla/dotenv\n[envvars]: https://gatsby.dev/env-vars\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1525619826316,"modified":1561038587538,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"},{"email":"neil.kistner@gmail.com","name":"wyze","avatar":"https://gravatar.com/avatar/1807f989676c17fc05bfca6a34f2875f","link":"https://www.npmjs.com/~wyze"}],"lastCrawl":"2019-06-24T10:15:26.787Z","_searchInternal":{"concatenatedName":"gatsbysourcegraphql","alternativeNames":["gatsbysourcegraphql","gatsby source graphql","gatsby-source-graphql"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-source-graphql/CHANGELOG.md","jsDelivrHits":0,"objectID":"gatsby-source-graphql","_highlightResult":{"name":{"value":"gatsby-source-graphql","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin which adds a third-party GraphQL API to Gatsby GraphQL","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wyze","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbysourcegraphql","matchLevel":"none","matchedWords":[]},{"value":"gatsby source graphql","matchLevel":"none","matchedWords":[]},{"value":"gatsby-source-graphql","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-remark-relative-images","downloadsLast30Days":45717,"downloadsRatio":0.0001001711297971722,"humanDownloadsLast30Days":"45.7k","popular":false,"version":"0.2.2","versions":{"0.0.1":"2018-04-10T13:52:44.551Z","0.0.2":"2018-04-10T13:54:08.761Z","0.0.3":"2018-04-10T20:52:16.966Z","0.0.4":"2018-04-10T20:54:36.308Z","0.0.5":"2018-04-11T13:31:29.914Z","0.0.6":"2018-04-11T13:37:05.123Z","0.1.0":"2018-05-15T00:36:25.138Z","0.1.1":"2018-05-15T14:57:00.065Z","0.1.2":"2018-06-14T14:41:34.023Z","0.2.0":"2018-09-26T18:21:32.056Z","0.2.1":"2018-11-26T16:08:53.712Z","0.2.2":"2019-02-28T14:35:10.608Z"},"tags":{"latest":"0.2.2"},"description":"Convert image src(s) in markdown to be relative to their node&#39;s parent directory. This will help gatsby-remark-images match images outside the node folder. For example, use with NetlifyCMS.","dependencies":{"babel-polyfill":"^6.26.0","cheerio":"1.0.0-rc.2","deep-map":"1.5.0","is-relative-url":"2.0.0","lodash":"4.17.11","slash":"2.0.0","unist-util-select":"1.5.0"},"devDependencies":{"@babel/cli":"7.0.0-beta.44","@babel/core":"7.0.0-beta.44","@babel/preset-env":"7.0.0-beta.44","cross-env":"5.1.4"},"repository":{"url":"https://github.com/danielmahon/gatsby-remark-relative-images","project":"gatsby-remark-relative-images","user":"danielmahon","host":"github.com","path":"","head":"7adb73c8a644b4779e0bcd65a2404b5d742cd003","branch":"7adb73c8a644b4779e0bcd65a2404b5d742cd003"},"githubRepo":{"user":"danielmahon","project":"gatsby-remark-relative-images","path":"","head":"7adb73c8a644b4779e0bcd65a2404b5d742cd003"},"gitHead":"7adb73c8a644b4779e0bcd65a2404b5d742cd003","readme":"# gatsby-remark-relative-images\n\nConvert image src(s) in markdown to be relative to their node's parent directory. This will help [gatsby-remark-images](https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-remark-images) match images outside the node folder. For example, use with NetlifyCMS.\n\nNOTE: This was built for use with NetlifyCMS and should be considered a temporary solution until relative paths are supported. If it works for other use cases then great!\n\n## Install\n\n`npm install --save gatsby-remark-relative-images`\n\n## How to use\n\n```javascript\n// gatsby-config.js\nplugins: [\n // Add static assets before markdown files\n {\n resolve: 'gatsby-source-filesystem',\n options: {\n path: `${__dirname}/static/uploads`,\n name: 'uploads',\n },\n },\n {\n resolve: 'gatsby-source-filesystem',\n options: {\n path: `${__dirname}/src/pages`,\n name: 'pages',\n },\n },\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [\n // gatsby-remark-relative-images must\n // go before gatsby-remark-images\n {\n resolve: `gatsby-remark-relative-images`,\n },\n {\n resolve: `gatsby-remark-images`,\n options: {\n // It's important to specify the maxWidth (in pixels) of\n // the content container as this plugin uses this as the\n // base for generating different widths of each image.\n maxWidth: 590,\n },\n },\n ],\n },\n },\n];\n```\n\n### To convert frontmatter images\n\nUse the exported function `fmImagesToRelative` in your `gatsby-node.js`. This takes every node returned by your gatsby-source plugins and converts any absolute paths in markdown frontmatter data into relative paths if a matching file is found.\n\n```js\n// gatsby-node.js\nconst { fmImagesToRelative } = require('gatsby-remark-relative-images');\n\nexports.onCreateNode = ({ node }) => {\n fmImagesToRelative(node);\n};\n```\n\n## FAQs\n\n### I'm getting the error: Field \"image\" must not have a selection since type \"String\" has no subfields\nThis is a common error when working with Netlify CMS (see issue [gatsby/gatsby#5990](https://github.com/gatsbyjs/gatsby/issues/5990)).\n\nThe application must include the `media` with `gatsby-source-filesystem` to include all the uploaded media and to make it available on build time. **Note:** The media folder must be included **before** the other content.\n\nFor example, an application that is using NetlifyCMS and this plugin, and has a content folder with markdown that comes from Netlify. Here's how the `gatsby-config.js` should look like:\n\n```js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-source-filesystem`,\n options: {\n path: `${__dirname}/static/assets`,\n name: 'assets',\n },\n },\n {\n resolve: `gatsby-source-filesystem`,\n options: {\n path: `${__dirname}/src/content`,\n name: 'content',\n },\n },\n `gatsby-transformer-sharp`,\n `gatsby-plugin-sharp`,\n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [\n `gatsby-remark-relative-images`,\n {\n resolve: `gatsby-remark-images`,\n options: {},\n },\n ],\n },\n },\n `gatsby-plugin-netlify-cms`,\n ],\n}\n```\n\n","owner":{"name":"danielmahon","avatar":"https://github.com/danielmahon.png","link":"https://github.com/danielmahon"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","image","markdown","relative","netlifycms","remark","responsive images"],"computedKeywords":[],"computedMetadata":{},"created":1523368364498,"modified":1551364515054,"lastPublisher":{"name":"danielmahon","email":"daniel@mahonstudios.com","avatar":"https://gravatar.com/avatar/d25d95f5c641f83b6a152471277c4d45","link":"https://www.npmjs.com/~danielmahon"},"owners":[{"name":"danielmahon","email":"daniel@mahonstudios.com","avatar":"https://gravatar.com/avatar/d25d95f5c641f83b6a152471277c4d45","link":"https://www.npmjs.com/~danielmahon"}],"lastCrawl":"2019-06-24T10:15:17.154Z","_searchInternal":{"concatenatedName":"gatsbyremarkrelativeimages","alternativeNames":["gatsbyremarkrelativeimages","gatsby remark relative images","gatsby-remark-relative-images"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":0,"objectID":"gatsby-remark-relative-images","_highlightResult":{"name":{"value":"gatsby-remark-relative-images","matchLevel":"none","matchedWords":[]},"description":{"value":"Convert image src(s) in markdown to be relative to their node's parent directory. This will help gatsby-remark-images match images outside the node folder. For example, use with NetlifyCMS.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"danielmahon","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"image","matchLevel":"none","matchedWords":[]},{"value":"markdown","matchLevel":"none","matchedWords":[]},{"value":"relative","matchLevel":"none","matchedWords":[]},{"value":"netlifycms","matchLevel":"none","matchedWords":[]},{"value":"remark","matchLevel":"none","matchedWords":[]},{"value":"responsive images","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"danielmahon","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyremarkrelativeimages","matchLevel":"none","matchedWords":[]},{"value":"gatsby remark relative images","matchLevel":"none","matchedWords":[]},{"value":"gatsby-remark-relative-images","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-layout","downloadsLast30Days":44982,"downloadsRatio":0.0000985606614724588,"humanDownloadsLast30Days":"45k","popular":false,"version":"1.1.0","versions":{"1.0.0-beta.1":"2018-08-16T21:53:46.722Z","1.0.0-beta.2":"2018-08-20T19:52:50.841Z","1.0.0-beta.3":"2018-08-21T00:38:50.796Z","1.0.0-rc.0":"2018-08-21T00:58:28.075Z","1.0.0-rc.1":"2018-08-29T18:28:44.075Z","1.0.0-rc.2":"2018-09-01T02:39:49.344Z","1.0.0-rc.3":"2018-09-03T23:55:33.427Z","1.0.0-rc.4":"2018-09-07T22:43:31.853Z","1.0.0":"2018-09-17T20:41:42.026Z","1.0.1":"2018-09-18T10:08:17.858Z","1.0.2":"2018-09-24T13:15:46.924Z","1.0.3":"2018-10-01T21:11:53.627Z","1.0.4":"2018-10-23T17:56:51.763Z","1.0.5":"2018-10-29T15:23:49.868Z","1.0.6":"2018-10-30T18:26:07.839Z","1.0.7":"2018-11-05T20:17:31.843Z","1.0.8":"2018-11-08T01:36:54.671Z","1.0.9":"2018-11-14T20:23:46.006Z","1.0.10":"2018-11-29T12:13:35.938Z","1.0.11":"2018-12-21T20:38:34.016Z","1.0.12":"2019-01-31T18:48:47.140Z","1.0.13":"2019-03-11T15:24:19.577Z","1.0.14":"2019-03-27T14:04:40.433Z","1.0.15":"2019-04-23T20:57:32.972Z","1.1.0":"2019-06-20T13:48:52.052Z"},"tags":{"latest":"1.1.0"},"description":"Reimplements the behavior of layout components in gatsby@1, which was removed in version 2.","dependencies":{"@babel/runtime":"^7.0.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.0.5"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-layout","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-layout","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-layout","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-layout\n\nThis plugin enables adding components which live above the page components and persist across page changes.\n\nThis can be helpful for:\n\n- Persisting layout between page changes for e.g. animating navigation\n- Storing state when navigating pages\n- Custom error handling using componentDidCatch\n- Inject additional data into pages using React Context.\n\nThis plugin reimplements the behavior of layout components in `gatsby@1`, which [was removed in version 2](https://github.com/gatsbyjs/rfcs/blob/master/text/0002-remove-special-layout-components.md).\n\n## Install\n\n```\nnpm install --save gatsby-plugin-layout\n```\n\n## How to use\n\nAdd the plugin to your `gatsby-config.js`:\n\nBy default plugin will try to use Layout component located in `src/layouts/index.js` (same as Gatsby v1)\n\n```js\nmodule.exports = {\n plugins: [\n `gatsby-plugin-layout`\n ]\n];\n```\n\nIf you prefer to keep layout in different place, you can use `component` option:\n\n```js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-layout`,\n options: {\n component: require.resolve(`./relative/path/to/layout/component`)\n }\n }\n ]\n];\n```\n\nOnce the plugin is added, you don't need to manually wrap your pages with the Layout component. The plugin does this automatically.\n\n## Why would you want to reimplement the V1 layout behavior?\n\nThere are a few scenarios where it makes sense to reimplement the V1 layout handling:\n\n1. You have a large or complex V1 site and [refactoring to the new layout component](https://www.gatsbyjs.org/docs/migrating-from-v1-to-v2/#remove-or-refactor-layout-components) is not feasible\n2. Your site uses page transitions or other transitions that break if the layout component is unmounted and remounted when routes change\n3. Your site attaches global state in the layout that doesn't persist if the component is unmounted and remounted\n\n### How layouts worked in version 1\n\nIn the original implementation, the layout component was wrapped around the outside of the page component, which, in pseudo-code, looked something like this:\n\n```jsx\n<Root>\n <Layout>\n {/* layout is not affected when the page template changes */}\n <PageElement>{/* page content here */}</PageElement>\n </Layout>\n</Root>\n```\n\nThis meant that the layout component could manage things like transitions and persistent state without any special workarounds, because it never rerendered.\n\n### How layouts work in version 2\n\nIn version 2, the layout component is no longer special, and it's included in every page that wants to display it. This means that it _does_ rerender on every route change:\n\n```jsx\n<Root>\n <PageElement>\n {/* layout will rerender each time the page template changes */}\n <Layout>{/* page content here */}</Layout>\n </PageElement>\n</Root>\n```\n\nThis can make it complicated to support transitions or state without using the [`wrapPageElement` browser API](https://gatsbyjs.org/docs/browser-apis/#wrapPageElement) (and the [SSR equivalent](https://gatsbyjs.org/docs/ssr-apis/#wrapPageElement)). This plugin implements those APIs for you, which reimplements the behavior of Gatsby V1.\n\n## Troubleshooting\n\n### Passing data from Layout to Page / from Page to Layout\n\nUse [React Context](https://reactjs.org/docs/context.html) to pass data both ways.\n\nFor example you can use this boilerplate:\n\n```js\n// Context.js\nimport React from \"react\"\n\nconst defaultContextValue = {\n data: {\n // set your initial data shape here\n menuOpen: false,\n },\n set: () => {},\n}\n\nconst { Provider, Consumer } = React.createContext(defaultContextValue)\n\nclass ContextProviderComponent extends React.Component {\n constructor() {\n super()\n\n this.setData = this.setData.bind(this)\n this.state = {\n ...defaultContextValue,\n set: this.setData,\n }\n }\n\n setData(newData) {\n this.setState(state => ({\n data: {\n ...state.data,\n ...newData,\n },\n }))\n }\n\n render() {\n return <Provider value={this.state}>{this.props.children}</Provider>\n }\n}\n\nexport { Consumer as default, ContextProviderComponent }\n```\n\nUse Provider in Layout Component:\n\n```js\nimport { ContextProviderComponent } from \"./Context\"\n\nexport default ({ children }) => (\n <ContextProviderComponent>\n <Header />\n {children}\n <Footer />\n </ContextProviderComponent>\n)\n```\n\nAnd then you can use it anywhere:\n\n- To read state:\n\n```js\nimport ContextConsumer from \"./Context\"\n\nconst ComponentThatReadState = () => (\n <ContextConsumer>\n {({ data }) => {\n data.menuOpen ? <Menu /> : null\n }}\n </ContextConsumer>\n)\n```\n\n- To read and set state:\n\n```js\nimport ContextConsumer from \"./Context\"\n\nconst ComponentThatChangeState = () => (\n <ContextConsumer>\n {({ data, set }) => (\n <div onClick={() => set({ menuOpen: !data.menuOpen })}>\n {data.menuOpen ? `Opened Menu` : `Closed Menu`}\n </div>\n )}\n </ContextConsumer>\n)\n```\n\n### Handling multiple layouts\n\nIf you want to use different layouts for different pages, you can pass this information in the context of the pages you create, and then conditionally render in your layout file.\n\nIn `gatsby-node.js`:\n\n```js\nexports.onCreatePage = ({ page, actions }) => {\n const { createPage } = actions\n\n if (page.path.match(/special-page/)) {\n page.context.layout = \"special\"\n createPage(page)\n }\n}\n```\n\nAnd then in `src/layouts/index.js`:\n\n```js\nexport default ({ children, pageContext }) => {\n if (pageContext.layout === \"special\") {\n return <AlternativeLayout>{children}</AlternativeLayout>\n }\n return <RegularLayout>{children}</RegularLayout>\n}\n```\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1534456426656,"modified":1561038537417,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:14:55.846Z","_searchInternal":{"concatenatedName":"gatsbypluginlayout","alternativeNames":["gatsbypluginlayout","gatsby plugin layout","gatsby-plugin-layout"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-layout/CHANGELOG.md","jsDelivrHits":85,"objectID":"gatsby-plugin-layout","_highlightResult":{"name":{"value":"gatsby-plugin-layout","matchLevel":"none","matchedWords":[]},"description":{"value":"Reimplements the behavior of layout components in gatsby@1, which was removed in version 2.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginlayout","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin layout","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-layout","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-remove-trailing-slashes","downloadsLast30Days":44326,"downloadsRatio":0.00009712329110373503,"humanDownloadsLast30Days":"44.3k","popular":false,"version":"2.1.0","versions":{"1.0.1":"2017-12-15T03:07:26.365Z","1.0.2":"2017-12-16T01:59:01.982Z","1.0.3":"2017-12-20T23:25:59.599Z","1.1.0-alpha.f20ac0ed":"2018-01-11T18:39:06.149Z","1.1.0-alpha.a0a09c94":"2018-01-11T18:48:00.566Z","1.1.0-alpha.b50f2063":"2018-01-11T18:55:06.242Z","1.1.0-alpha.03b9df85":"2018-01-12T14:36:10.114Z","1.1.0-alpha.e9df8e57":"2018-01-12T14:47:27.324Z","1.1.0-alpha.8c822451":"2018-01-12T15:00:54.796Z","1.1.0-alpha.e5586916":"2018-01-12T15:22:28.740Z","1.1.0-alpha.9da1bca1":"2018-01-12T18:07:31.682Z","1.1.0-alpha.aeb05561":"2018-01-18T01:53:02.787Z","1.1.0-alpha.7b47e00d":"2018-01-18T02:10:04.699Z","1.1.0-alpha.f5c1df61":"2018-01-18T17:30:26.345Z","1.1.0-alpha.926cb6da":"2018-01-21T01:42:17.732Z","1.1.0-alpha.3f307d61":"2018-01-21T02:22:56.002Z","1.0.4":"2018-01-23T19:18:59.224Z","1.1.0-alpha.d1544e1b":"2018-01-25T00:14:24.518Z","1.1.0-alpha.53bbd4cd":"2018-02-10T20:34:42.519Z","1.1.0-alpha.2b695217":"2018-02-10T22:36:49.861Z","1.1.0-alpha.32ef58da":"2018-02-11T03:44:47.780Z","1.1.0-alpha.5182142b":"2018-02-11T04:12:34.383Z","1.0.5":"2018-02-13T01:12:04.157Z","1.1.0-alpha.6ab84875":"2018-02-15T02:06:49.875Z","1.1.0-alpha.9d4de2a6":"2018-02-15T20:32:31.451Z","1.1.0-alpha.9e381f74":"2018-02-15T21:12:37.929Z","1.1.0-alpha.dd504153":"2018-02-15T21:29:46.519Z","1.1.0-alpha.b68b7f5c":"2018-02-15T22:00:51.410Z","1.1.0-alpha.bb258cb5":"2018-02-16T00:29:44.978Z","1.1.0-alpha.e28a1c8e":"2018-02-16T01:11:10.240Z","1.1.0-alpha.067e672c":"2018-02-17T02:45:17.677Z","1.1.0-alpha.d0b8dd9e":"2018-02-17T19:05:14.735Z","1.0.6-0":"2018-02-17T19:31:07.695Z","1.1.0-alpha.e66c6c9c":"2018-02-27T01:24:57.732Z","1.0.6":"2018-02-28T20:40:06.056Z","1.1.0-alpha.2cbec6d6":"2018-03-03T06:46:44.917Z","1.0.6-1":"2018-03-03T07:24:01.599Z","1.1.0-alpha.f98688ee":"2018-03-07T02:25:49.920Z","1.0.7":"2018-03-07T18:06:24.187Z","1.1.0-alpha.9fe50b00":"2018-03-08T03:04:27.701Z","1.0.8":"2018-03-16T01:51:00.292Z","1.1.0-alpha.34eda94b":"2018-03-17T21:22:20.595Z","1.1.0-alpha.12622d64":"2018-03-18T00:00:19.419Z","1.1.0-alpha.84bd71b4":"2018-03-18T00:40:05.015Z","1.1.0-alpha.6ad61a13":"2018-03-21T17:49:40.112Z","1.1.0-alpha.5f47082e":"2018-03-23T22:47:52.052Z","1.0.6-2":"2018-03-23T23:19:07.996Z","1.0.9":"2018-03-24T17:45:48.076Z","1.1.0-alpha.95fcd4af":"2018-03-29T02:22:39.066Z","1.1.0-alpha.20252dc3":"2018-03-29T02:44:24.149Z","1.1.0-alpha.4a09f745":"2018-04-05T22:14:57.591Z","1.1.0-alpha.76793cd8":"2018-04-07T22:12:26.050Z","1.1.0-alpha.5c9569c0":"2018-04-19T16:57:12.617Z","1.1.0-alpha.523a4286":"2018-04-19T23:52:19.669Z","1.1.0-alpha.5421f383":"2018-04-20T06:53:04.680Z","1.1.0-alpha.e9c3027b":"2018-04-20T17:56:44.062Z","1.0.6-3":"2018-04-22T01:54:14.266Z","1.0.6-4":"2018-04-25T16:25:28.753Z","1.0.6-5":"2018-05-11T21:44:01.074Z","1.0.6-7":"2018-05-15T19:55:27.253Z","1.0.6-8":"2018-05-31T14:04:43.328Z","1.0.6-9":"2018-05-31T17:17:03.237Z","1.0.6-10":"2018-06-11T15:24:12.772Z","1.0.6-11":"2018-06-11T16:55:17.332Z","2.0.0-alpha.1":"2018-06-16T19:08:58.234Z","2.0.0-alpha.8ac171a1":"2018-06-16T19:25:34.296Z","2.0.0-alpha.e328d33f":"2018-06-16T19:33:02.797Z","2.0.0-alpha.80a21f04":"2018-06-16T19:37:15.008Z","2.0.0-alpha.2":"2018-06-16T23:33:00.518Z","2.0.0-beta.0":"2018-06-17T06:53:58.217Z","2.0.0-beta.1":"2018-06-17T08:12:57.475Z","2.0.0-beta.2":"2018-06-20T20:45:33.464Z","2.0.0-beta.3":"2018-07-21T16:00:11.215Z","2.0.0-rc.0":"2018-08-21T00:58:48.070Z","2.0.0-rc.1":"2018-08-29T18:29:04.091Z","2.0.0":"2018-09-17T20:42:14.983Z","2.0.1":"2018-10-01T12:56:03.315Z","2.0.2":"2018-10-01T21:11:57.617Z","2.0.3":"2018-10-03T17:58:53.487Z","2.0.4":"2018-10-29T15:24:09.632Z","2.0.5":"2018-11-08T01:37:05.940Z","2.0.6":"2018-11-29T12:14:01.881Z","2.0.7":"2019-02-01T12:25:15.680Z","2.0.8":"2019-02-25T06:01:27.046Z","2.0.9":"2019-02-28T11:32:18.635Z","2.0.10-alpha.0":"2019-03-04T07:13:55.342Z","2.0.10":"2019-03-11T15:24:39.175Z","2.0.11":"2019-04-23T12:30:37.205Z","2.1.0":"2019-06-20T13:49:11.567Z"},"tags":{"latest":"2.1.0"},"description":"Removes trailing slashes from your project&#39;s paths. For example, yoursite.com/about/ becomes yoursite.com/about","dependencies":{"@babel/runtime":"^7.0.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-remove-trailing-slashes","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-remove-trailing-slashes","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-remove-trailing-slashes","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-remove-trailing-slashes\n\nThis plugin removes trailing slashes from your project's paths. For\nexample, `yoursite.com/about/` becomes `yoursite.com/about`.\n\n## Important considerations\n\nThis plugin is intended to remove trailing slashes from paths generated by Gatsby itself.\n\nThis however does not prevent the resolution of pages that have trailing slashes, due to the way browsers are built to interpret URLs as paths.\n\nThis means that a user will need to take the extra step of ensuring that all router links direct towards paths that do not end in a slash.\n\nFor example, `<Link to=\"/about/\">` will render the view related to `/about` but will display as `/about/` in the browsers address bar.\n\nThis is an important factor when relying on path driven logic, such as in the use case of the `Link` components `activeClassName` and `activeStyle` props.\n\nFor example, if the current route is `/about`, the component `<Link to=\"/about/\" activeStyle={{ color: 'rebeccapurple' }}>` wouldn't match because of the slash.\n\n#### Netlify Trailing Slashes\n\n[Netlify](https://www.netlify.com) users should also take into account that the service will match paths to redirect rules regardless of whether or not they contain a trailing slash, potentially causing infinite redirect loops and unexpected behaviors.\n\nThis can be negated through the use of their Pretty URL feature, which rewrites URLs to pretty URLs.\n\nPlease see the Netlify docs for more information:\n[https://www.netlify.com/docs/redirects/#trailing-slash](https://www.netlify.com/docs/redirects/#trailing-slash)\n\n## Usage\n\nInstall:\n\n```\nnpm install --save-dev gatsby-plugin-remove-trailing-slashes\n```\n\nThen configure via `gatsby-config.js`.\n\n```js\n{\n ...\n plugins: [\n ...,\n `gatsby-plugin-remove-trailing-slashes`,\n ]\n}\n```\n\nThat's it.\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1513307246365,"modified":1561038554217,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:06.762Z","_searchInternal":{"concatenatedName":"gatsbypluginremovetrailingslashes","alternativeNames":["gatsbypluginremovetrailingslashes","gatsby plugin remove trailing slashes","gatsby-plugin-remove-trailing-slashes"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-remove-trailing-slashes/CHANGELOG.md","jsDelivrHits":2,"objectID":"gatsby-plugin-remove-trailing-slashes","_highlightResult":{"name":{"value":"gatsby-plugin-remove-trailing-slashes","matchLevel":"none","matchedWords":[]},"description":{"value":"Removes trailing slashes from your project's paths. For example, yoursite.com/about/ becomes yoursite.com/about","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginremovetrailingslashes","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin remove trailing slashes","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-remove-trailing-slashes","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-canonical-urls","downloadsLast30Days":42311,"downloadsRatio":0.00009270819766931671,"humanDownloadsLast30Days":"42.3k","popular":false,"version":"2.1.0","versions":{"1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:09.571Z","1.0.0-beta.6":"2017-07-02T06:42:50.468Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:40:35.980Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:23.520Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:22.382Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:29:55.803Z","1.0.0":"2017-07-06T19:43:17.320Z","1.0.1":"2017-07-06T19:48:43.521Z","1.0.2":"2017-08-11T20:02:44.288Z","1.0.3":"2017-08-19T01:52:01.649Z","1.1.0-alpha.22c8a6f1":"2017-08-24T16:12:10.642Z","2.0.0":"2017-08-25T18:06:46.890Z","1.0.4":"2017-08-25T18:21:40.974Z","1.0.5":"2017-08-30T22:58:24.693Z","1.0.6":"2017-08-31T23:41:02.099Z","1.1.0-alpha.76b32701":"2017-09-15T18:00:17.855Z","1.1.0-alpha.2e1e7782":"2017-09-15T18:12:02.281Z","1.1.0-alpha.93f2e2a2":"2017-09-16T11:49:29.266Z","1.1.0-alpha.5db7a275":"2017-09-16T13:45:28.200Z","1.1.0-alpha.1460dad9":"2017-09-18T12:28:11.429Z","1.0.7":"2017-10-08T00:29:52.985Z","1.0.8":"2017-10-12T18:04:52.041Z","1.0.9":"2017-11-29T00:09:11.082Z","1.0.10":"2017-12-10T00:45:14.269Z","1.0.11":"2018-01-08T14:09:24.117Z","1.1.0-alpha.f20ac0ed":"2018-01-11T18:38:34.062Z","1.1.0-alpha.a0a09c94":"2018-01-11T18:47:36.231Z","1.1.0-alpha.b50f2063":"2018-01-11T18:54:40.548Z","1.1.0-alpha.03b9df85":"2018-01-12T14:35:45.382Z","1.1.0-alpha.e9df8e57":"2018-01-12T14:47:03.469Z","1.1.0-alpha.8c822451":"2018-01-12T15:00:34.349Z","1.1.0-alpha.e5586916":"2018-01-12T15:22:02.792Z","1.1.0-alpha.9da1bca1":"2018-01-12T18:07:03.537Z","1.1.0-alpha.aeb05561":"2018-01-18T01:52:36.165Z","1.1.0-alpha.7b47e00d":"2018-01-18T02:09:44.715Z","1.1.0-alpha.f5c1df61":"2018-01-18T17:29:54.955Z","1.1.0-alpha.926cb6da":"2018-01-21T01:41:56.357Z","1.1.0-alpha.3f307d61":"2018-01-21T02:22:28.693Z","1.0.12":"2018-01-23T19:17:07.990Z","1.1.0-alpha.d1544e1b":"2018-01-25T00:13:51.720Z","1.1.0-alpha.53bbd4cd":"2018-02-10T20:34:09.612Z","1.1.0-alpha.2b695217":"2018-02-10T22:36:20.106Z","1.1.0-alpha.32ef58da":"2018-02-11T03:44:16.482Z","1.1.0-alpha.5182142b":"2018-02-11T04:11:56.657Z","1.0.13":"2018-02-13T01:11:36.501Z","1.1.0-alpha.6ab84875":"2018-02-15T02:06:14.935Z","1.1.0-alpha.9d4de2a6":"2018-02-15T20:31:59.024Z","1.1.0-alpha.1a8f691e":"2018-02-15T21:00:37.137Z","1.1.0-alpha.9e381f74":"2018-02-15T21:12:12.013Z","1.1.0-alpha.dd504153":"2018-02-15T21:29:10.103Z","1.1.0-alpha.b68b7f5c":"2018-02-15T22:00:12.758Z","1.1.0-alpha.bb258cb5":"2018-02-16T00:29:14.047Z","1.1.0-alpha.e28a1c8e":"2018-02-16T01:10:43.937Z","1.1.0-alpha.067e672c":"2018-02-17T02:44:46.585Z","1.1.0-alpha.d0b8dd9e":"2018-02-17T19:04:45.736Z","1.0.14-0":"2018-02-17T19:30:37.588Z","1.1.0-alpha.e66c6c9c":"2018-02-27T01:24:21.442Z","1.0.14":"2018-02-28T20:39:27.615Z","1.1.0-alpha.2cbec6d6":"2018-03-03T06:46:12.172Z","1.0.14-1":"2018-03-03T07:23:10.264Z","1.1.0-alpha.f98688ee":"2018-03-07T02:25:18.920Z","1.0.15":"2018-03-07T18:06:10.950Z","1.1.0-alpha.9fe50b00":"2018-03-08T03:04:02.781Z","1.0.16":"2018-03-16T01:51:00.934Z","1.1.0-alpha.34eda94b":"2018-03-17T21:21:56.265Z","1.1.0-alpha.12622d64":"2018-03-17T23:59:37.480Z","1.1.0-alpha.84bd71b4":"2018-03-18T00:39:20.651Z","1.1.0-alpha.6ad61a13":"2018-03-21T17:48:58.855Z","1.1.0-alpha.5f47082e":"2018-03-23T22:47:01.602Z","1.0.14-2":"2018-03-23T23:18:30.819Z","1.1.0-alpha.95fcd4af":"2018-03-29T02:21:49.419Z","1.1.0-alpha.20252dc3":"2018-03-29T02:43:30.486Z","1.1.0-alpha.4a09f745":"2018-04-05T22:14:33.681Z","1.1.0-alpha.76793cd8":"2018-04-07T22:11:50.004Z","1.0.17":"2018-04-17T19:37:31.116Z","1.0.18":"2018-04-19T16:32:45.114Z","1.1.0-alpha.5c9569c0":"2018-04-19T16:56:10.871Z","1.1.0-alpha.523a4286":"2018-04-19T23:51:04.690Z","1.1.0-alpha.5421f383":"2018-04-20T06:52:14.595Z","1.1.0-alpha.e9c3027b":"2018-04-20T17:55:36.208Z","1.0.14-3":"2018-04-22T01:53:21.043Z","1.0.14-4":"2018-04-25T16:24:39.601Z","1.0.14-5":"2018-04-26T18:18:43.065Z","1.0.14-6":"2018-05-11T21:42:52.705Z","1.0.14-8":"2018-05-15T19:53:06.589Z","1.0.14-9":"2018-05-31T14:02:58.869Z","1.0.14-10":"2018-05-31T17:03:51.805Z","1.0.14-11":"2018-06-11T15:21:07.883Z","1.0.14-12":"2018-06-11T16:53:39.503Z","2.0.0-alpha.1":"2018-06-16T19:08:19.709Z","2.0.0-alpha.8ac171a1":"2018-06-16T19:24:53.414Z","2.0.0-alpha.e328d33f":"2018-06-16T19:32:15.700Z","2.0.0-alpha.80a21f04":"2018-06-16T19:36:31.617Z","2.0.0-alpha.2":"2018-06-16T23:32:17.184Z","2.0.0-beta.0":"2018-06-17T06:53:41.930Z","2.0.0-beta.1":"2018-06-17T08:12:39.838Z","2.0.0-beta.2":"2018-06-20T20:45:15.521Z","2.0.0-beta.3":"2018-07-21T15:59:58.628Z","2.0.0-rc.0":"2018-08-21T00:58:03.118Z","2.0.0-rc.1":"2018-08-29T18:28:22.978Z","2.0.0-rc.2":"2018-09-17T15:46:04.181Z","2.0.5":"2018-09-17T20:41:14.481Z","2.0.6":"2018-10-01T21:11:53.591Z","2.0.7":"2018-10-29T15:23:32.434Z","2.0.8":"2018-11-29T12:13:03.153Z","2.0.9":"2019-01-28T16:58:27.065Z","2.0.10":"2019-02-01T12:24:46.302Z","2.0.11":"2019-03-11T13:49:31.311Z","2.0.12":"2019-03-11T15:23:59.477Z","2.0.13":"2019-05-16T18:28:31.931Z","2.1.0":"2019-06-20T13:48:33.458Z"},"tags":{"latest":"2.1.0"},"description":"Add canonical links to HTML pages Gatsby generates.","dependencies":{"@babel/runtime":"^7.0.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-canonical-urls","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-canonical-urls","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-canonical-urls","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-canonical-urls\n\nAdd canonical links to HTML pages Gatsby generates.\n\nThis implementation is primarily helpful for distinguishing between https/http,\nwww/no-www but could possibly be extended to help with when sites add multiple\npaths to the same page.\n\n## Install\n\n`npm install --save gatsby-plugin-canonical-urls`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nplugins: [\n {\n resolve: `gatsby-plugin-canonical-urls`,\n options: {\n siteUrl: `https://www.example.com`,\n },\n },\n]\n```\n\nWith the above configuration, the plugin will add to the head of every HTML page\na `rel=canonical` e.g.\n\n```html\n<link rel=\"canonical\" href=\"https://www.example.com/about-us/\" />\n```\n\n### Excluding search parameters\n\nURL search parameters are included in the canonical URL by default. If you worry about duplicate content because for example `/blog` and `/blog?tag=foobar` will be indexed separately, you should set the option `stripQueryString` to `true`. The latter will then be changed to `/blog`.\n\n```title=gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-canonical-urls`,\n options: {\n siteUrl: `https://www.example.com`,\n stripQueryString: true,\n },\n },\n ]\n}\n```\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1498964709571,"modified":1561038516074,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:14:55.514Z","_searchInternal":{"concatenatedName":"gatsbyplugincanonicalurls","alternativeNames":["gatsbyplugincanonicalurls","gatsby plugin canonical urls","gatsby-plugin-canonical-urls"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-canonical-urls/CHANGELOG.md","jsDelivrHits":15,"objectID":"gatsby-plugin-canonical-urls","_highlightResult":{"name":{"value":"gatsby-plugin-canonical-urls","matchLevel":"none","matchedWords":[]},"description":{"value":"Add canonical links to HTML pages Gatsby generates.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyplugincanonicalurls","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin canonical urls","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-canonical-urls","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-purgecss","downloadsLast30Days":42182,"downloadsRatio":0.00009242554404497926,"humanDownloadsLast30Days":"42.2k","popular":false,"version":"4.0.0","versions":{"0.2.0":"2018-07-11T12:19:29.297Z","0.2.2":"2018-07-13T22:59:21.631Z","0.3.0":"2018-07-14T15:57:11.891Z","0.3.1":"2018-07-14T16:26:32.460Z","2.0.0":"2018-07-15T09:03:46.282Z","2.0.1":"2018-07-16T17:32:09.216Z","2.0.2":"2018-08-02T22:03:48.799Z","2.1.0":"2018-08-14T13:02:43.655Z","2.2.0":"2018-08-15T15:07:11.956Z","2.3.0":"2018-08-16T01:23:48.144Z","2.4.0":"2018-08-17T20:55:58.608Z","3.0.0":"2018-12-30T10:14:25.590Z","3.1.0":"2019-01-01T07:05:02.562Z","3.1.1":"2019-03-18T21:22:09.217Z","4.0.0":"2019-05-16T09:07:05.842Z"},"tags":{"latest":"4.0.0"},"description":"Gatsby plugin for purgecss. Removes unused css/sass/less/stylus from files and modules. Supports Tailwindcss, Bootstrap, Bulma etc.","dependencies":{"fs-extra":"^8.0.1","loader-utils":"^1.1.0","purgecss":"^1.3.0"},"devDependencies":{"@babel/cli":"7.4.4","@babel/core":"7.4.4","@babel/plugin-proposal-object-rest-spread":"7.4.4","@babel/preset-env":"7.4.4","@release-it/conventional-changelog":"^1.0.2","coveralls":"3.0.3","dotenv":"8.0.0","gatsby":"2.4.7","gatsby-plugin-less":"2.0.13","gatsby-plugin-postcss":"2.0.7","gatsby-plugin-sass":"2.0.11","gatsby-plugin-stylus":"2.0.7","jest":"24.8.0","less":"3.9.0","node-sass":"4.12.0","react":"16.8.6","react-dom":"16.8.6","release-it":"12.2.0","runjs":"4.4.2","symlink-dir":"3.0.3","tailwindcss":"1.0.1"},"repository":{"url":"https://github.com/anantoghosh/gatsby-plugin-purgecss","project":"gatsby-plugin-purgecss","user":"anantoghosh","host":"github.com","path":"","head":"98e212cbea480326914f31def903ba6da975f105","branch":"98e212cbea480326914f31def903ba6da975f105"},"githubRepo":{"user":"anantoghosh","project":"gatsby-plugin-purgecss","path":"","head":"98e212cbea480326914f31def903ba6da975f105"},"gitHead":"98e212cbea480326914f31def903ba6da975f105","readme":"# Gatsby Plugin Purgecss [![npm version](https://badge.fury.io/js/gatsby-plugin-purgecss.svg)](https://www.npmjs.com/package/gatsby-plugin-purgecss) [![npm downloads](https://img.shields.io/npm/dt/gatsby-plugin-purgecss.svg)](https://www.npmjs.com/package/gatsby-plugin-purgecss)\r\n\r\nFor Gatsby 2 only\r\n\r\n[![CircleCI](https://circleci.com/gh/anantoghosh/gatsby-plugin-purgecss/tree/master.svg?style=svg)](https://circleci.com/gh/anantoghosh/gatsby-plugin-purgecss/tree/master)\r\n[![Build Status](https://travis-ci.org/anantoghosh/gatsby-plugin-purgecss.svg?branch=master)](https://travis-ci.org/anantoghosh/gatsby-plugin-purgecss)\r\n[![Coverage Status](https://coveralls.io/repos/github/anantoghosh/gatsby-plugin-purgecss/badge.svg?branch=master)](https://coveralls.io/github/anantoghosh/gatsby-plugin-purgecss?branch=master)\r\n[![Renovate badge](https://camo.githubusercontent.com/d89df1f233d795498824e8739f439d2172d7ff12/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f72656e6f766174652d656e61626c65642d627269676874677265656e2e737667)](https://renovatebot.com/) [![Known Vulnerabilities](https://snyk.io/test/github/anantoghosh/gatsby-plugin-purgecss/badge.svg?targetFile=package.json)](https://snyk.io/test/github/anantoghosh/gatsby-plugin-purgecss?targetFile=package.json)\r\n[![tested with jest](https://anantoghosh.github.io/stop-watch/jest_op.svg)](https://github.com/facebook/jest)\r\n\r\n[![dependencies](https://david-dm.org/anantoghosh/gatsby-plugin-purgecss.svg)](https://david-dm.org/anantoghosh/gatsby-plugin-purgecss/)\r\n[![dev dependencies](https://david-dm.org/anantoghosh/gatsby-plugin-purgecss/dev-status.svg)](https://david-dm.org/anantoghosh/gatsby-plugin-purgecss?type=dev)\r\n[![peer dependencies](https://david-dm.org/anantoghosh/gatsby-plugin-purgecss/peer-status.svg)](https://david-dm.org/anantoghosh/gatsby-plugin-purgecss?type=peer)\r\n\r\n## What is this plugin about?\r\n\r\n**Remove unused css from css/sass/less/stylus files and modules in your Gatsby project using [purgecss](https://github.com/FullHuman/purgecss). 🎉. Supports tailwind, bootstrap, bulma etc.** \r\n\r\n<hr />\r\n\r\n⚠️ NOTE: This is NOT an install and forget type plugin. By default, it may remove required styles too. \r\n \r\n**Please read [Help! Purgecss breaks my site](#help-purgecss-breaks-my-site) 😯 to make sure gatsby-plugin-purgecss does not cause you issues and [TLDR](#TLDR) for the important bits**\r\n\r\n<hr />\r\n\r\n📘 [Read the latest docs here.](https://github.com/anantoghosh/gatsby-plugin-purgecss/blob/master/README.md) • [Changelog](https://github.com/anantoghosh/gatsby-plugin-purgecss/blob/master/CHANGELOG.md) • \r\n\r\n### Demo\r\nWhen used in [gatsby-starter-bootstrap](https://github.com/jaxx2104/gatsby-starter-bootstrap)\r\n\r\n![demo](https://anantoghosh.github.io/files/gatsby-starter-bootstrap.png)\r\n\r\nWhen used in [gatsby-starter-bootstrap-cv](https://github.com/mhjadav/gatsby-starter-bootstrap-cv) (installed by default)\r\n\r\n![demo](https://anantoghosh.github.io/files/gatsby-starter-bootstrap-cv.png)\r\n## Supported files\r\n\r\n- `.css` , `.module.css`\r\n- `.scss`, `.sass`, `.module.scss`, `.module.sass` (via [gatsby-plugin-sass](https://next.gatsbyjs.org/packages/gatsby-plugin-sass/))\r\n- `.less`, `.module.less` (via [gatsby-plugin-less](https://next.gatsbyjs.org/packages/gatsby-plugin-less/))\r\n- `.styl`, `.module.styl` (via [gatsby-plugin-stylus](https://next.gatsbyjs.org/packages/gatsby-plugin-sass/))\r\n\r\n## Installation\r\n\r\n```sh\r\nnpm i gatsby-plugin-purgecss\r\n```\r\n\r\n### Usage\r\n\r\n> **Add the plugin AFTER other css/postcss plugins**\r\n\r\n```js\r\n// gatsy-config.js\r\nmodule.exports = {\r\n plugins: [\r\n `gatsby-plugin-stylus`,\r\n `gatsby-plugin-sass`,\r\n `gatsby-plugin-less`,\r\n `gatsby-plugin-postcss`,\r\n // Add after these plugins if used\r\n { \r\n resolve: `gatsby-plugin-purgecss`,\r\n options: {\r\n printRejected: true, // Print removed selectors and processed file names\r\n // develop: true, // Enable while using `gatsby develop`\r\n // tailwind: true, // Enable tailwindcss support\r\n // whitelist: ['whitelist'], // Don't remove this selector\r\n // ignore: ['/ignored.css', 'prismjs/', 'docsearch.js/'], // Ignore files/folders\r\n // purgeOnly : ['components/', '/main.css', 'bootstrap/'], // Purge only these files/folders\r\n }\r\n }\r\n ]\r\n};\r\n```\r\n[Read about all the available options.](#options)\r\n## TLDR\r\n* Define options in `gatsby-config.js`, not `purgecss.config.js`.\r\n* If using tailwindcss, use the [`tailwind: true` option](#tailwind).\r\n* Use [`printRejected: true`](#printrejected) option to print the removed selectors.\r\n* Only files processed by Webpack will be purged.\r\n* `my-selector` will not match `mySelector`.\r\n* Whitelist required selectors or ignore files/folder using the [Whitelist Solutions](#whitelist-solutions) guide.\r\n* Ignore complete packages with [`ignore: ['packagename/']`](#ignore).\r\n* To only purge specific files/packages use [`purgeOnly: ['fileOrPackage/']`](#purgeOnly).\r\n\r\n## Help! Purgecss breaks my site\r\n\r\n### Diagnosing the issue\r\n* Use [`printRejected: true` option](#printrejected) which will print the filenames and the selectors which were removed.\r\n* Identify which of the required selectors were removed.\r\n* Whitelist the required selectors or completely ignore files using [Whitelist Solutions](#whitelist-solutions) guide.\r\n* Look at the [Issues](#issues) section to understand why/how the purge was performed.\r\n\r\n### Issues\r\n\r\nThis section documents purgecss behavior in removing unused css. Most of the rules apply in any project and is not `gatsby-plugin-purgecss` specific.\r\n\r\n#### Issue 1: CSS file not getting purged\r\nFor `gatsby-plugin-purgecss` to work on a css file it **must be imported by a script file inside your src folder**. This plugin depends on webpack to process css. **If webpack does not use the css file then `gatsby-plugin-purgecss` cannot process it.**\r\n\r\nAlso, make sure that you [included the plugin](#usage) after sass/less/stylus/postcss plugins. \r\n\r\n#### Issue 2: Selectors with dashes in name gets removed when used with named imports\r\nFor eg:\r\n**style.css**\r\n```css\r\n.my-selector { color: 'white' }\r\n```\r\n**index.js**\r\n```jsx\r\n// Named import\r\nimport style from './style.css';\r\n...\r\n<div className={style.mySelector} /> ❌\r\n```\r\nHere `.my-selector` **will get removed** since purgecss by default cannot match it with `mySelector`.\r\n\r\n**Read how to solve this issue in the [\"Whitelist Solutions\"](#whitelist-solutions) section.**\r\n\r\n*Note: Directly importing and using the selector name as is will work as intended*\r\n```jsx\r\nimport './style.css';\r\n<div className={`my-selector`} /> ✅\r\n```\r\n#### Issue 3: Styles getting purged even though the script file has selector names\r\nMake sure that the script file is in the `src` folder. \r\nIf you want to look for selectors in another folder, use the [`content` option.](#content---from-purgecss)\r\n\r\n#### Issue 4: Getting \"Could not parse file, skipping. Your build will not break.\"\r\n> If you use postcss syntax based plugins then read [this](#using-with-postcss-syntax-plugins).\r\n\r\nSomething is wrong. Good news is `gatsby-plugin-purgecss` should not cause any issue in such cases, files which could not be parsed will be skipped. If you want to diagnose the problem then use the [`debug` option](#debug). Also, feel free to create a GitHub issue.\r\n\r\n#### Issue 5: Using npm packages with components which import css files\r\nIf you import a npm package which imports its own styles locally, then gatsby-plugin-purgecss will incorrectly remove all the css imported by the package. It's because by default the selectors are only matched with the files under 'src' folder. \r\nTo get around this, you could:\r\n1. Ignore the file completely using the [`ignore` option](#ignore)\r\n2. Whitelist the required selectors as described in the next section.\r\n3. Use the [`content` option](#content---from-purgecss) and add the package's path.\r\nEg:\r\n```js\r\ncontent: [\r\n path.join(process.cwd(), 'src/**/!(*.d).{ts,js,jsx,tsx}'),\r\n path.join(process.cwd(), 'node_modules/my-npm-package/folder-to-match/!(*.d).{ts,js,jsx,tsx}')\r\n];\r\n```\r\n\r\n#### Issue 6: Works in `develop`, breaks in `build`\r\n`gatsby-plugin-purgecss` by default does not run when using `gatsby develop`.\r\n\r\n### Whitelist Solutions\r\nYou can use any of these techniques to stop purgecss from removing required styles\r\n#### 1. Whitelist the selector using the whitelist option in gatsby-config.js\r\n```js\r\nwhitelist: ['my-selector']\r\n```\r\n[Read about whitelist option.](#whitelist---from-purgecss)\r\n\r\n#### 2. Use a JavaScript comment\r\n```jsx\r\n// my-selector\r\n<div className={style.mySelector} />\r\n```\r\nThis comment can be in any script file inside `src`.\r\n\r\n#### 3. Use Regex pattern to exclude many selectors\r\n`whitelistPatterns` option is available from purgecss\r\n```js\r\nwhitelistPatterns: [/^btn/]\r\n```\r\nFor eg, this pattern will whitelist all selectors starting with btn: btn btn-primary btn-secondary etc. \r\n[Read about whitelistPatterns option.](#whitelistpatterns---from-purgecss) \r\nLook at the [`whitelistPatternsChildren` option](#whitelist---from-purgecss) in purgecss to also whitelist children of the selectors.\r\n\r\n#### 4. Use purgecss ignore comment in css file\r\n```css\r\n/* purgecss ignore */\r\n.my-selector { color: 'white' }\r\n```\r\nThis comment will ignore the selector on the next line.\r\n\r\n#### 5. Use purgecss ignore block comments in css file\r\n```css\r\n/* purgecss start ignore */\r\nbutton { color: 'white' };\r\n.yo { color: 'blue' };\r\n/* purgecss end ignore */\r\n```\r\nThis comment pair will ignore all css selectors between them.\r\n\r\n#### 6. Ignore files and folder using the ignore options\r\n```js\r\nignore: ['ignoredFile.css', 'ignoredFolder/', 'sub/folder/ignore/', 'inFolder/file.css']\r\n```\r\n**Note:** always use forward slash `/` for folders, even on Windows. \r\n[Read about ignore option.](#ignore)\r\n\r\n#### 7. Purge only specified files and skip everything else\r\n```js\r\npurgeOnly: ['/mainstyles.css', 'node_modules/bootstrap']\r\n```\r\n**Note:** always use forward slash `/` for folders, even on Windows. \r\nGood if you only need to purge some large css library and not touch anything else. \r\n[Read about purgeOnly option.](#purgeOnly)\r\n\r\n#### 8. For selector with dashes in them and using named imports\r\nYou *could* write it like `className={style['my-selector']}` instead.\r\n\r\n### Improving Purgecss selector detection\r\nPurgecss relies on extractors to get the list of selector used in a file. The default extractor considers every word of a file as a selector.\r\nYou could use your own extractor (or get one made by other community members) to improve detection and further decrease your css file size.\r\n[Read more at Purgecss docs.](https://www.purgecss.com/extractors)\r\n\r\nIf you do find/write a better extractor suited for Gatsby, please help me add it to the docs. \r\n\r\n## Important Notes\r\n\r\n### Running\r\n\r\nBy default, this plugin only runs when building the project (`gatsby build`). \r\nIt will print the amount of css removed.\r\nTo run it while using `gatsby develop`, use the `develop: true` option.\r\n\r\n### Size reporting\r\nThe size reported by this plugin is the approximate size of the css content *before* any optimizations have been performed. \r\nThe actual file size should be smaller.\r\n\r\n### Selector matching\r\n\r\nThis plugin loads css files (or transformed output from css plugins) and searches for matching selectors in js, jsx, ts, tsx files in `src/`. It does not know which css file belongs to which source file. Therefore, for eg., if there is a class `.module` in some css file, it will not be removed if it used in _any_ script file under `src/`.\r\n\r\n### Whitelist ['html', 'body']\r\n\r\nSince html and body tags do not appear in `src/` files, it is whitelisted by default to not be removed. \r\nSince v2.3.0, manually including 'html', 'body' is no longer required.\r\n\r\n### Webpack loader order\r\nSass/Less/Stylus(or any other loader) -> PostCSS -> **PurgeCSS** -> CSSLoader -> (CSSExtract/StyleLoader) \r\nNote: Sass/Less/Stylus `@import`s are executed before this plugin, therefore, it won't see the `@import`ed files as separate files.\r\n\r\n### Using with postcss syntax plugins\r\nSince v3, `gatsby-plugin-purgecss` should work with other postcss plugins.\r\nFor older versions: \r\n`gatsby-plugin-purgecss` is executed before postcss loader and can only purge css syntax. If you are using any syntax based postcss plugin, then it may not get purged. In such cases you will see \"Could not parse file, skipping. Your build will not break.\" message. `gatsby-plugin-purgecss` will simply ignore the file and continue without issue.\r\nIt would be better if you use purgecss postcss plugin directly instead.\r\n\r\n## Options\r\n\r\nThis plugins supports most purgecss options as is (except `css`).\r\n> [Read about purgecss options in detail](https://www.purgecss.com/configuration)\r\n\r\nOptions can be specified in your `gatsby-config.js` file like so:\r\n```js\r\nmodule.exports = {\r\n plugins: [\r\n {\r\n resolve: 'gatsby-plugin-purgecss',\r\n options: {\r\n printRejected: true,\r\n }\r\n }\r\n ]\r\n};\r\n```\r\n\r\n### rejected\r\nPrint the amount of css removed \r\n**`rejected: boolean`**\r\n```js\r\nrejected: true\r\n```\r\ndefault: `true`\r\n\r\n### printRejected\r\nPrint the list of removed selectors \r\n**`printRejected: boolean`**\r\n```js\r\nprintRejected: true\r\n```\r\nNeeds [`rejected`](#rejected) option to be true. \r\nIt will print maximum of 100 removed selector per file to keep the output readable. \r\nTo view all the removed selector enable the [`printAll` option](#printall). \r\ndefault: `false`\r\n\r\n### printAll\r\nEnables `printRejected` to print all the rejected selectors. \r\n(Output can get messy) \r\n**`printAll: boolean`**\r\n```js\r\nprintAll: true\r\n```\r\nNeeds [`printRejected`](#printrejected) option to be true. \r\ndefault: `false`\r\n\r\n### whitelist - from purgecss\r\nStops from removing these selectors. \r\n**`whitelist: Array<string>`**\r\n```js\r\nwhitelist: ['my-selector', 'footer']\r\n```\r\n**Note:** do NOT add `.` or `#` for classes and ids. \r\n`'html'`, `'body'` are always whitelisted. \r\nSince v2.3.0 manually including 'html', 'body' is no longer required. \r\ndefault: `[]`\r\n\r\n### purgeOnly\r\nOnly purge these files/folders. \r\nAdded in v3.1.0. \r\n**`ignore: Array<string>`**\r\n```js\r\npurgeOnly: ['/main.css', 'bootstrap/', 'node_modules/font-awesome/']\r\n```\r\n**Note:** always use forward slash `/` for folders, even on Windows. \r\nCan be combined with the [`ignore` option](#ignore). \r\ndefault: `[]`\r\n\r\n### ignore\r\nStop these files or folders from getting purged. \r\n**`ignore: Array<string>`**\r\n```js\r\nignore: ['/ignoredFile.css', 'ignoredFolder/', 'sub/folder/ignore/', 'inFolder/file.css']\r\n```\r\n**Note:** always use forward slash `/` for folders, even on Windows. \r\ndefault: `[]`\r\n\r\n### tailwind\r\nEnable Tailwind support. \r\nAdded in v3. \r\n**`tailwind: boolean`**\r\n```js\r\ntailwind: true\r\n```\r\nUses extractors needed for parsing tailwind class names. \r\nEnable if you are using tailwindcss. \r\ndefault: `false`\r\n\r\n### develop\r\nEnable plugin while using `gatsby develop`. \r\nAdded in v3. \r\n**`develop: boolean`**\r\n```js\r\ndevelop: true\r\n```\r\nThis does not print the total css removed. \r\nTo see what is being removed, use it with the [printRejected option](#printRejected). \r\ndefault: `false`\r\n\r\n### debug\r\nEnable debugging \r\n**`debug: boolean`**\r\n```js\r\ndebug: true\r\n```\r\nIt will write two files to disk. \r\n`gatsby-plugin-purgecss-debug-config.js` with Gatsby's webpack config. \r\n`gatsby-plugin-purgecss-debug.js` with the errors encountered. \r\ndefault: `false`\r\n\r\n### content - from purgecss\r\nFiles to search for selectors. \r\n**`content: Array<string>`**\r\n```js\r\ncontent: [\r\n path.join(process.cwd(), 'src/**/!(*.d).{ts,js,jsx,tsx}'),\r\n path.join(process.cwd(), 'anotherFolder/!(*.d).{ts,js,jsx,tsx}')\r\n];\r\n```\r\ndefault: `[path.join(process.cwd(), 'src/**/!(*.d).{ts,js,jsx,tsx}')]`\r\n\r\n### whitelistPatterns - from purgecss\r\nWhitelist Selectors with Regular Expression \r\n**`whitelistPatterns: Array<RegExp>`**\r\n```js\r\nwhitelistPatterns: [/button/, /^fa-/, /main$/]\r\n```\r\nThis example will whitelist selectors containing \"button\", starting with \"fa-\" and ending with \"main\". \r\ndefault: `[]`\r\n\r\n### whitelistPatternsChildren - from purgecss\r\nContrary to `whitelistPatterns`, it will also whitelist children of the selectors. \r\n**`whitelistPatternsChildren: Array<RegExp>`**\r\n```js\r\nwhitelistPatternsChildren: [/red$/]\r\n```\r\nIn the example, selectors such as `red p` or `.bg-red .child-of-bg` will be left in the final CSS. \r\ndefault: `[]`\r\n\r\n### Other options from purgecss\r\n[Read About other purgecss options.](https://www.purgecss.com/configuration) \r\n**`extractors?: Array<ExtractorsObj>`** \r\n**`keyframes?: boolean`** \r\n**`fontFace?: boolean`** \r\n\r\n## Versioning\r\n\r\ngatsby-plugin-purgecss uses [SemVer](http://semver.org/) for versioning.\r\n\r\n## Acknowledgment\r\n\r\nThis project was made possible due to the incredible work done on the following projects:\r\n\r\n- [purgecss](https://github.com/FullHuman/purgecss)\r\n- [purgecss-loader](https://github.com/americanexpress/purgecss-loader)\r\n- [gatsby](https://github.com/gatsbyjs/gatsby/)\r\n\r\n## License\r\n\r\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\r\n","owner":{"name":"anantoghosh","avatar":"https://github.com/anantoghosh.png","link":"https://github.com/anantoghosh"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","css","sass","scss","stylus","less","optimize","clean","purgecss","purify","purifycss"],"computedKeywords":[],"computedMetadata":{},"created":1531311569204,"modified":1557997629430,"lastPublisher":{"name":"anantoghosh","email":"a0ghosh+npmjs@googlemail.com","avatar":"https://gravatar.com/avatar/9bb3b320aa2caa45a82d2814086bb756","link":"https://www.npmjs.com/~anantoghosh"},"owners":[{"name":"anantoghosh","email":"a0ghosh+npmjs@googlemail.com","avatar":"https://gravatar.com/avatar/9bb3b320aa2caa45a82d2814086bb756","link":"https://www.npmjs.com/~anantoghosh"}],"lastCrawl":"2019-06-24T10:15:06.730Z","_searchInternal":{"concatenatedName":"gatsbypluginpurgecss","alternativeNames":["gatsbypluginpurgecss","gatsby plugin purgecss","gatsby-plugin-purgecss"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/anantoghosh/gatsby-plugin-purgecss/98e212cbea480326914f31def903ba6da975f105/CHANGELOG.md","jsDelivrHits":0,"objectID":"gatsby-plugin-purgecss","_highlightResult":{"name":{"value":"gatsby-plugin-purgecss","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin for purgecss. Removes unused css/sass/less/stylus from files and modules. Supports Tailwindcss, Bootstrap, Bulma etc.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"anantoghosh","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"css","matchLevel":"none","matchedWords":[]},{"value":"sass","matchLevel":"none","matchedWords":[]},{"value":"scss","matchLevel":"none","matchedWords":[]},{"value":"stylus","matchLevel":"none","matchedWords":[]},{"value":"less","matchLevel":"none","matchedWords":[]},{"value":"optimize","matchLevel":"none","matchedWords":[]},{"value":"clean","matchLevel":"none","matchedWords":[]},{"value":"purgecss","matchLevel":"none","matchedWords":[]},{"value":"purify","matchLevel":"none","matchedWords":[]},{"value":"purifycss","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"anantoghosh","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginpurgecss","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin purgecss","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-purgecss","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-mdx","downloadsLast30Days":39021,"downloadsRatio":0.00008549943469202825,"humanDownloadsLast30Days":"39k","popular":false,"version":"0.6.3","versions":{"0.0.0":"2018-07-23T02:59:26.520Z","0.0.1":"2018-07-23T18:17:57.224Z","0.0.2":"2018-07-25T05:45:15.367Z","0.0.3":"2018-07-25T22:33:44.258Z","0.0.4":"2018-07-27T23:53:04.245Z","0.0.5":"2018-07-29T06:04:30.781Z","0.0.6":"2018-08-01T04:25:17.199Z","0.0.7":"2018-08-06T04:27:28.044Z","0.0.8":"2018-08-06T05:07:35.893Z","0.0.9-pre.1":"2018-08-07T06:54:46.800Z","0.0.9":"2018-08-07T07:01:55.196Z","0.0.10-pre.1":"2018-08-08T18:09:50.528Z","0.0.10":"2018-08-08T21:22:51.073Z","0.0.11-dev":"2018-08-13T03:36:08.006Z","0.0.11-dev.2":"2018-08-13T21:24:31.980Z","0.0.11-ci":"2018-08-14T21:08:02.886Z","0.0.11":"2018-08-16T22:22:34.481Z","0.0.12-ci":"2018-08-23T21:49:48.998Z","0.0.12":"2018-08-23T22:03:05.351Z","0.0.13":"2018-08-23T22:26:32.904Z","0.0.14":"2018-08-23T23:09:51.917Z","0.0.15":"2018-08-24T07:23:25.449Z","0.1.0":"2018-08-29T05:04:12.170Z","0.1.1":"2018-08-29T05:15:09.770Z","0.1.2":"2018-08-30T21:01:01.185Z","0.1.3":"2018-09-01T23:46:24.890Z","0.1.4":"2018-09-13T23:18:12.321Z","0.1.5-ci":"2018-09-24T09:12:08.948Z","0.1.5-ci.205":"2018-10-02T12:22:45.377Z","0.2.1-ci.206":"2018-10-04T09:06:19.584Z","0.2.0":"2018-10-04T20:05:21.735Z","0.2.2-ci.212":"2018-10-24T06:29:46.583Z","0.2.2-ci.214":"2018-11-12T09:03:39.628Z","0.2.2-ci.219":"2018-12-01T22:23:07.007Z","0.3.1-ci.221":"2018-12-09T23:36:23.986Z","0.3.1-ci.225":"2018-12-13T08:53:08.770Z","0.3.1-ci.227":"2018-12-29T07:56:46.423Z","0.3.1-ci.228":"2018-12-31T00:53:57.673Z","0.3.1-ci.234":"2018-12-31T03:59:02.868Z","0.3.1-ci.235":"2019-01-01T02:46:11.559Z","0.3.1-ci.236":"2019-01-01T02:48:12.794Z","0.3.1-ci.238":"2019-01-02T21:19:13.014Z","0.3.1-ci.239":"2019-01-02T22:32:26.548Z","0.3.2":"2019-01-03T03:09:16.929Z","0.3.3-ci.241":"2019-01-03T03:18:30.002Z","0.3.3-ci.244":"2019-01-05T07:06:51.400Z","0.3.3-ci.245":"2019-01-05T09:11:31.724Z","0.3.3-ci.248":"2019-01-07T00:39:03.619Z","0.3.3-ci.249":"2019-01-07T01:10:34.052Z","0.3.3":"2019-01-08T00:45:29.022Z","0.3.4-ci.256":"2019-01-14T05:51:31.498Z","0.3.4-ci.261":"2019-01-16T03:52:30.580Z","0.3.4-ci.262":"2019-01-16T04:05:35.839Z","0.3.4":"2019-01-16T04:09:40.213Z","0.3.5-ci.263":"2019-01-16T04:11:41.353Z","0.3.5":"2019-01-18T01:02:00.964Z","0.3.5-ci.270":"2019-01-24T05:54:40.026Z","0.3.6-ci.272":"2019-01-26T01:57:37.790Z","0.3.6-ci.296":"2019-01-28T18:15:55.974Z","0.3.6-ci.297":"2019-01-30T17:25:10.516Z","0.3.6":"2019-02-10T08:44:22.367Z","0.3.6-ci.305":"2019-02-15T00:28:01.931Z","0.3.6-ci.306":"2019-02-15T08:57:41.899Z","0.4.0":"2019-02-19T20:40:25.778Z","0.4.2-ci.318":"2019-03-05T01:03:28.634Z","0.4.2":"2019-03-05T01:19:51.420Z","0.5.0":"2019-03-06T05:41:26.378Z","0.5.1":"2019-03-06T05:49:30.780Z","0.5.2":"2019-03-06T07:40:23.740Z","0.4.3":"2019-03-12T09:14:45.033Z","0.4.4-ci.325":"2019-03-20T23:54:26.246Z","0.4.4":"2019-03-21T00:00:32.384Z","0.4.5-ci.327":"2019-03-23T23:13:34.007Z","0.4.5-ci.328":"2019-03-26T20:37:52.303Z","0.5.3":"2019-03-26T22:42:58.513Z","0.5.4":"2019-03-28T00:45:07.506Z","0.5.5-ci.354":"2019-03-29T18:57:01.103Z","0.5.5-ci.355":"2019-03-30T20:57:17.920Z","0.5.5-ci.356":"2019-03-30T22:55:34.357Z","0.5.5-ci.357":"2019-03-31T17:17:27.629Z","0.5.5-ci.358":"2019-03-31T18:45:26.835Z","0.5.5":"2019-03-31T23:35:09.553Z","0.5.6-ci.361":"2019-04-01T17:36:41.231Z","0.5.6":"2019-04-02T00:41:01.841Z","0.5.7":"2019-04-07T03:00:57.381Z","0.4.5":"2019-04-07T03:02:23.365Z","0.5.7-ci.364":"2019-04-07T03:03:27.841Z","0.5.8-ci.366":"2019-04-08T07:26:19.085Z","0.5.8-ci.367":"2019-04-08T23:42:24.096Z","0.6.0":"2019-04-12T01:40:52.700Z","0.6.1":"2019-04-12T01:44:06.298Z","0.6.2-ci.371":"2019-04-12T16:02:44.985Z","0.6.2":"2019-04-12T16:07:47.290Z","0.6.3":"2019-04-30T02:55:19.027Z"},"tags":{"latest":"0.6.3","ci":"0.6.2-ci.371","dev":"0.0.11-dev.2","alpha":"0.5.0","next":"0.5.6","rc":"0.5.7"},"description":"mdx integration for gatsby","dependencies":{"@babel/core":"^7.4.3","@babel/plugin-proposal-object-rest-spread":"^7.4.3","@babel/preset-env":"^7.4.3","@babel/preset-react":"^7.0.0","core-js":"2","dataloader":"^1.4.0","debug":"^4.0.1","escape-string-regexp":"^1.0.5","fs-extra":"^7.0.0","gray-matter":"^4.0.1","loader-utils":"^1.2.3","lodash":"^4.17.10","mdast-util-to-string":"^1.0.4","mdast-util-toc":"^3.0.0","mime":"^2.3.1","pretty-bytes":"^5.1.0","remark":"^10.0.0","remark-retext":"^3.1.2","retext-english":"^3.0.2","slash":"^2.0.0","static-site-generator-webpack-plugin":"^3.4.2","underscore.string":"^3.3.4","unist-util-map":"^1.0.4","unist-util-remove":"^1.0.1","unist-util-visit":"^1.4.0"},"devDependencies":{"jest":"^24.0.0","js-combinatorics":"^0.5.3"},"repository":null,"githubRepo":null,"gitHead":null,"readme":"![Logo](../../img/gatsby-mdx.png)\n\n> gatsby-mdx is _the_ official integration for using [MDX](https://mdxjs.com)\n> with [Gatsby](https://www.gatsbyjs.org/).\n\n# What’s MDX?\n\nMDX is markdown for the component era. It lets you write JSX embedded inside\nmarkdown. It’s a great combination because it allows you to use markdown’s often\nterse syntax (such as `# heading`) for the little things and JSX for more advanced\ncomponents.\n\n### Read more about MDX\n\n- [:grey_question: Why MDX?](https://www.gatsbyjs.org/docs/mdx/why/)\n- [:books: Gatsby guide](https://www.gatsbyjs.org/docs/mdx/)\n- [:mega: Language](https://mdxjs.com)\n- [:woman_scientist: Specification](https://github.com/mdx-js/specification)\n\n## Table of contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n - [Configuration](#configuration)\n - [Extensions](#extensions)\n - [Default layouts](#default-layouts)\n - [Global scope](#global-scope)\n - [Gatbsy remark plugins](#gatsby-remark-plugins)\n - [Markdown plugins](#remark-plugins)\n - [HAST plugins](#rehype-plugins)\n - [Media types](#media-types)\n - [Components](#components)\n - [MDXProvider](#mdxprovider)\n - [MDXRenderer](#mdxrenderer)\n\n## Installation\n\nInstall with npm:\n\n```sh\nnpm install --save gatsby-mdx @mdx-js/mdx @mdx-js/tag @mdx-js/react\n```\n\nInstall with yarn:\n\n```sh\nyarn add gatsby-mdx @mdx-js/mdx @mdx-js/tag @mdx-js/react\n```\n\n## Usage\n\nAfter installing gatsby-mdx you can add it to your plugins list in your\n`gatsby-config.js`.\n\n```js\nmodule.exports = {\n plugins: [`gatsby-mdx`]\n};\n```\n\nBy default, this configuration will allow you to create pages\nwith `.mdx` files in `src/pages` and will process any Gatsby nodes\nwith Markdown media types into MDX content.\n\n### Configuration\n\ngatsby-mdx exposes a configuration API that can be used similarly to\nany other Gatsby plugin. You can define MDX extensions, layouts, global\nscope, and more.\n\n| Key | Default | Description |\n| ------------------------------------------------------------------------------------------ | -------------------------------------- | -------------------------------------------------------------------- |\n| [`extensions`](#extensions) | `[\".mdx\"]` | Configure the file extensions that gatsby-mdx will process |\n| [`defaultLayouts`](#default-layouts) | `{}` | Set the layout components for MDX source types |\n| [`globalScope`](#global-scope) | `\"\"` | Define components and variables that are accessible to all MDX files |\n| [`gatsbyRemarkPlugins`](#gatsby-remark-plugins) | `[]` | Use Gatsby-specific remark plugins |\n| [`remarkPlugins`](#remark-plugins) | `[]` | Specify remark plugins |\n| [`rehypePlugins`](#rehype-plugins) | `[]` | Specify rehype plugins |\n| [`mediaTypes`](#media-types) | `[\"text/markdown\", \"text/x-markdown\"]` | Determine which media types are processed by MDX |\n\n#### Extensions\n\nBy default, only files with the `.mdx` file extension are treated as MDX when\nusing `gatsby-source-filesystem`. To use `.md` or other file extensions, you can\ndefine an array of file extensions in the `gatsby-mdx` section of your\n`gatsby-config.js`.\n\n```js\n// gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-mdx`,\n options: {\n extensions: [`.mdx`, `.md`]\n }\n }\n ]\n};\n```\n\n#### Default layouts\n\n`defaultLayouts` takes an object where the `key` is the `name` key of\nthe `gatsby-source-filesystem` configuration you want to\ntarget. `default` applies to any MDX file that doesn't already have a\nlayout defined, even if it's imported manually using `import MDX from './thing.mdx`.\n\n```js\n// gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-mdx`,\n options: {\n defaultLayouts: {\n posts: require.resolve(\"./src/components/posts-layout.js\"),\n default: require.resolve(\"./src/components/default-page-layout.js\")\n }\n }\n }\n ]\n};\n```\n\nMDX has the concept of a layout that is different than the Gatsby\nconcept of a layout. MDX's layouts are written using the default\nexport JavaScript syntax in a single MDX file. An MDX layout will wrap\nthe MDX content in an additional component, so this can be a good\nplace for page layout depending on how you are using MDX.\n\n```javascript\nexport default ({ children }) => (\n <div>\n <h1>My Layout</h1>\n <div>{children}</div>\n </div>\n)\n\n# My MDX\n\nsome content\n```\n\nor as an import:\n\n```javascript\nimport PageLayout from './src/components/page-layout';\n\nexport default PageLayout\n\n# My MDX\n\nsome content\n```\n\nSometimes you don't want to include the layout in every file, so `gatsby-mdx`\noffers the option to set default layouts in the `gatsby-config.js` plugin\nconfig. Set the key to the `name` set in the `gatsby-source-filesystem` config.\nIf no matching default layout is found, the `default` default layout is used.\n\nYou can also set `options.defaultLayout.default` if you only want to\nuse one layout for all MDX pages that don't already have a layout defined.\n\n```js\nmodule.exports = {\n siteMetadata: {\n title: `Gatsby MDX Kitchen Sink`\n },\n plugins: [\n {\n resolve: `gatsby-mdx`,\n options: {\n defaultLayouts: {\n posts: require.resolve(\"./src/components/posts-layout.js\"),\n default: require.resolve(\"./src/components/default-page-layout.js\")\n }\n }\n },\n {\n resolve: `gatsby-source-filesystem`,\n options: {\n name: `posts`,\n path: `${__dirname}/src/posts/`\n }\n }\n ]\n};\n```\n\n#### Global scope\n\nWhen importing a react component into your MDX, you can import it using the `import`\nstatement as in JavaScript.\n\n```mdx\nimport { SketchPicker } from \"react-color\";\n\n# Hello, world!\n\nHere's a color picker!\n\n<SketchPicker />\n```\n\nIf you want to allow usage of a component from anywhere, add it to the `globalScope`\nfield in the options inside `gatsby-config.js`:\n\n```js\n// gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-mdx`,\n options: {\n globalScope: `\n import { SketchPicker } from \"react-color\";\n\n export default { SketchPicker };\n `\n }\n }\n ]\n};\n```\n\nAll that is needed is to import the components you wish to be globally available and\nthen put them into an exported object.\n\nThen, in any MDX file, you can insert the components without the import.\n\n```mdx\n# Hello, world!\n\nHere's a color picker\n\n<SketchPicker />\n```\n\n> :warning: Note: globalScope is not working yet in any mdx file in `src/pages`, but there is an\n> issue to resolve this:\n>\n> ChristopherBiscardi/gatsby-mdx#239\n\n#### Gatsby remark plugins\n\nThis config option is used for compatibility with a set of plugins many people\n[use with remark](https://www.gatsbyjs.org/plugins/?=gatsby-remark-) that require\nthe gatsby environment to function properly. In some cases, like\n[gatsby-remark-prismjs](https://www.gatsbyjs.org/packages/gatsby-remark-prismjs/?=gatsby-remark-),\nit makes more sense to use a library like\n[prism-react-renderer](https://github.com/FormidableLabs/prism-react-renderer)\nto render codeblocks using a [React\ncomponent](/api-reference/mdx-provider). In other cases, like\n[gatsby-remark-images](https://www.gatsbyjs.org/packages/gatsby-remark-images/?=gatsby-remark-),\nthe interaction with the Gatsby APIs is well deserved because the\nimages can be optimized by Gatsby and you should continue using it.\n\n```js\n// gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-mdx`,\n options: {\n gatsbyRemarkPlugins: [\n {\n resolve: `gatsby-remark-images`,\n options: {\n maxWidth: 590\n }\n }\n ]\n }\n }\n ]\n};\n```\n\n###### Note:\n\nUsing a string reference is currently not supported for `gatsbyRemarkPlugins`. (A PR would be accepted for this)\n\n```js\ngatsbyRemarkPlugins: [`gatsby-remark-images`];\n```\n\n#### MD plugins\n\nThis is a configuration option that is [mirrored from the core MDX\nprocessing pipeline](https://mdxjs.com/plugins). It enables the use of\n[remark\nplugins](https://github.com/remarkjs/remark/blob/master/doc/plugins.md)\nfor processing MDX content.\n\n```js\n// gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-mdx`,\n options: {\n remarkPlugins: [require(\"remark-abbr\")]\n }\n }\n ]\n};\n```\n\n#### HAST plugins\n\nThis is a configuration option that is [mirrored from the core MDX\nprocessing pipeline](https://mdxjs.com/plugins). It enables the use of\n[rehype\nplugins](https://github.com/rehypejs/rehype/blob/master/doc/plugins.md)\nfor processing MDX content.\n\n```js\n// gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-mdx`,\n options: {\n rehypePlugins: [require(\"rehype-slug\")]\n }\n }\n ]\n};\n```\n\n#### Media types\n\nDeciding what content gets processed by gatsby-mdx. This is an\nadvanced option that is useful for dealing with specialized generated\ncontent. It is not intended to be configured for most users.\n\n```js\n// gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-mdx`,\n options: {\n mediaTypes: [`text/markdown`, `text/x-markdown`]\n }\n }\n ]\n};\n```\n\n##### Explanation\n\nGatsby includes the media-type of the content on any given node. For\n`file` nodes, we choose whether to process the content with MDX or not\nby the file extension. For remote content or generated content, we\nchoose which nodes to process by looking at the media type.\n\n### Components\n\nMDX and gatsby-mdx use components for different things like rendering\nand component mappings.\n\n#### MDXProvider\n\n`MDXProvider` is a React component that allows you to replace the\nrendering of tags in MDX content. It does this by providing a list of\ncomponents via context to the internal `MDXTag` component that handles\nrendering of base tags like `p` and `h1`. There are two special tags\nthat can be replaced too: `inlineCode` and `wrapper`. `inlineCode` is\nfor inline `<code>` and `wrapper` is the special element that wraps\nall of the MDX content.\n\n```js\nimport { MDXProvider } from \"@mdx-js/react\";\n\nconst MyH1 = props => <h1 style={{ color: \"tomato\" }} {...props} />;\nconst MyParagraph = props => (\n <p style={{ fontSize: \"18px\", lineHeight: 1.6 }} />\n);\n\nconst components = {\n h1: MyH1,\n p: MyParagraph\n};\n\nexport const wrapRootElement = ({ element }) => (\n <MDXProvider components={components}>{element}</MDXProvider>\n);\n```\n\nThe following components can be customized with the MDXProvider:\n\n| Tag | Name | Syntax |\n| --------------- | -------------------------------------------------------------------- | --------------------------------------------------- |\n| `p` | [Paragraph](https://github.com/syntax-tree/mdast#paragraph) | |\n| `h1` | [Heading 1](https://github.com/syntax-tree/mdast#heading) | `#` |\n| `h2` | [Heading 2](https://github.com/syntax-tree/mdast#heading) | `##` |\n| `h3` | [Heading 3](https://github.com/syntax-tree/mdast#heading) | `###` |\n| `h4` | [Heading 4](https://github.com/syntax-tree/mdast#heading) | `####` |\n| `h5` | [Heading 5](https://github.com/syntax-tree/mdast#heading) | `#####` |\n| `h6` | [Heading 6](https://github.com/syntax-tree/mdast#heading) | `######` |\n| `thematicBreak` | [Thematic break](https://github.com/syntax-tree/mdast#thematicbreak) | `***` |\n| `blockquote` | [Blockquote](https://github.com/syntax-tree/mdast#blockquote) | `>` |\n| `ul` | [List](https://github.com/syntax-tree/mdast#list) | `-` |\n| `ol` | [Ordered list](https://github.com/syntax-tree/mdast#list) | `1.` |\n| `li` | [List item](https://github.com/syntax-tree/mdast#listitem) | |\n| `table` | [Table](https://github.com/syntax-tree/mdast#table) | `--- | --- | ---` |\n| `tr` | [Table row](https://github.com/syntax-tree/mdast#tablerow) | `This | is | a | table row` |\n| `td`/`th` | [Table cell](https://github.com/syntax-tree/mdast#tablecell) | |\n| `pre` | [Pre](https://github.com/syntax-tree/mdast#code) | |\n| `code` | [Code](https://github.com/syntax-tree/mdast#code) | |\n| `em` | [Emphasis](https://github.com/syntax-tree/mdast#emphasis) | `_emphasis_` |\n| `strong` | [Strong](https://github.com/syntax-tree/mdast#strong) | `**strong**` |\n| `delete` | [Delete](https://github.com/syntax-tree/mdast#delete) | `~~strikethrough~~` |\n| `code` | [InlineCode](https://github.com/syntax-tree/mdast#inlinecode) | |\n| `hr` | [Break](https://github.com/syntax-tree/mdast#break) | `---` |\n| `a` | [Link](https://github.com/syntax-tree/mdast#link) | `<https://mdxjs.com>` or `[MDX](https://mdxjs.com)` |\n| `img` | [Image](https://github.com/syntax-tree/mdast#image) | `![alt](https://mdx-logo.now.sh)` |\n\nIt's important to define the `components` you pass in in a stable way\nso that the references don't change if you want to be able to navigate\nto a hash. That's why we defined `components` outside of any render\nfunctions in these examples.\n\n##### Related\n\n- [MDX components](https://mdxjs.com/getting-started/#mdxprovider)\n\n#### MDXRenderer\n\n`MDXRenderer` is a React component that takes _compiled_ MDX content and\nrenders it. You will need to use this if your MDX content is coming\nfrom a GraphQL page query or `StaticQuery`.\n\n`MDXRenderer` takes any prop and passes it on to your MDX content,\njust like a normal React component.\n\n```js\n<MDXRenderer title=\"My Stuff!\">{mdx.code.body}</MDXRenderer>\n```\n\nUsing a page query:\n\n```js\nimport { MDXRenderer } from \"gatsby-mdx\";\n\nexport default class MyPageLayout {\n render() {\n <MDXRenderer>{this.props.data.mdx.code.body}</MDXRenderer>;\n }\n}\n\nexport const pageQuery = graphql`\n query MDXQuery($id: String!) {\n mdx(id: { eq: $id }) {\n id\n code {\n body\n }\n }\n }\n`;\n```\n\n## License\n\nMIT\n","owner":{"name":"biscarch","email":"chris@christopherbiscardi.com","avatar":"https://gravatar.com/avatar/5f7798f819ff4add0e78e599ae83b01f","link":"https://www.npmjs.com/~biscarch"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","gatsby-transformer-plugin","mdx","markdown","remark","rehype"],"computedKeywords":[],"computedMetadata":{},"created":1532314766422,"modified":1556592921866,"lastPublisher":{"name":"biscarch","email":"chris@christopherbiscardi.com","avatar":"https://gravatar.com/avatar/5f7798f819ff4add0e78e599ae83b01f","link":"https://www.npmjs.com/~biscarch"},"owners":[{"name":"avigoldman","email":"me@avigoldman.com","avatar":"https://gravatar.com/avatar/155283a792984b2029af31c1203a3019","link":"https://www.npmjs.com/~avigoldman"}],"lastCrawl":"2019-06-24T10:14:46.274Z","_searchInternal":{"concatenatedName":"gatsbymdx","alternativeNames":["gatsbymdx","gatsby mdx","gatsby-mdx"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":177,"objectID":"gatsby-mdx","_highlightResult":{"name":{"value":"gatsby-mdx","matchLevel":"none","matchedWords":[]},"description":{"value":"mdx integration for gatsby","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"biscarch","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"gatsby-transformer-plugin","matchLevel":"none","matchedWords":[]},{"value":"mdx","matchLevel":"none","matchedWords":[]},{"value":"markdown","matchLevel":"none","matchedWords":[]},{"value":"remark","matchLevel":"none","matchedWords":[]},{"value":"rehype","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"avigoldman","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbymdx","matchLevel":"none","matchedWords":[]},{"value":"gatsby mdx","matchLevel":"none","matchedWords":[]},{"value":"gatsby-mdx","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-postcss","downloadsLast30Days":37722,"downloadsRatio":0.00008265317842835114,"humanDownloadsLast30Days":"37.7k","popular":false,"version":"2.1.0","versions":{"1.0.0":"2018-06-26T21:51:12.504Z","2.0.0-beta.2":"2018-07-19T20:38:19.215Z","2.0.0-beta.3":"2018-08-10T16:12:59.371Z","2.0.0-rc.0":"2018-08-21T00:58:41.271Z","2.0.0-rc.1":"2018-08-29T18:28:59.013Z","2.0.0-rc.2":"2018-09-07T22:43:31.880Z","2.0.0-rc.5":"2018-09-17T15:51:05.392Z","2.0.0":"2018-09-17T20:42:05.687Z","2.0.1":"2018-10-29T15:24:04.204Z","2.0.2":"2018-11-29T12:13:55.859Z","2.0.3":"2019-01-28T16:58:36.819Z","2.0.4":"2019-02-01T10:24:24.924Z","2.0.5":"2019-02-01T12:25:11.663Z","2.0.6":"2019-03-11T15:24:31.242Z","2.0.7":"2019-03-15T15:57:53.270Z","2.1.0":"2019-06-20T13:49:06.244Z"},"tags":{"latest":"2.1.0"},"description":"Gatsby plugin to handle PostCSS","dependencies":{"@babel/runtime":"^7.0.0","postcss-loader":"^3.0.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-postcss","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-postcss","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-postcss","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"README.md","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","postcss"],"computedKeywords":[],"computedMetadata":{},"created":1530049872324,"modified":1561038550779,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"marat.dreizin@gmail.com","name":"mdreizin","avatar":"https://gravatar.com/avatar/cf1dba3adddf45902af811bd23424a01","link":"https://www.npmjs.com/~mdreizin"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:06.693Z","_searchInternal":{"concatenatedName":"gatsbypluginpostcss","alternativeNames":["gatsbypluginpostcss","gatsby plugin postcss","gatsby-plugin-postcss"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-postcss/CHANGELOG.md","jsDelivrHits":0,"objectID":"gatsby-plugin-postcss","_highlightResult":{"name":{"value":"gatsby-plugin-postcss","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin to handle PostCSS","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"postcss","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"mdreizin","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginpostcss","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin postcss","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-postcss","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-nprogress","downloadsLast30Days":35190,"downloadsRatio":0.00007710527938321607,"humanDownloadsLast30Days":"35.2k","popular":false,"version":"2.1.0","versions":{"1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:07.168Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:22.856Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:14:40.672Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:14.849Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:25:48.521Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:07:19.398Z","1.0.0-alpha.23":"2017-06-14T00:30:12.807Z","1.0.0-beta.1":"2017-06-15T20:25:48.969Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:09.073Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:22.738Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:30.664Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:35:49.183Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:11.475Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:29.313Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:01:42.918Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:18:57.803Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:06:50.422Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:37.720Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:42.063Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:38.627Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:17.429Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:24.269Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:00.563Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:21:55.602Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:15.689Z","1.0.0-beta.6":"2017-07-02T06:42:58.657Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:40:48.396Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:31.918Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:30.793Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:04.648Z","1.0.0":"2017-07-06T19:43:25.146Z","1.0.1":"2017-07-06T19:48:51.548Z","1.0.2":"2017-08-11T20:02:55.774Z","1.0.3":"2017-08-19T01:52:16.995Z","1.1.0-alpha.22c8a6f1":"2017-08-24T16:12:19.553Z","2.0.0":"2017-08-25T18:06:55.256Z","1.0.4":"2017-08-25T18:21:47.424Z","2.0.0-alpha.1":"2017-08-28T19:39:10.587Z","1.0.5":"2017-08-28T20:42:04.285Z","1.0.6":"2017-08-30T22:58:36.713Z","1.0.7":"2017-08-31T23:41:24.673Z","2.0.0-alpha.2":"2017-09-03T19:01:25.376Z","1.1.0-alpha.76b32701":"2017-09-15T18:00:57.117Z","1.1.0-alpha.2e1e7782":"2017-09-15T18:12:34.579Z","1.1.0-alpha.93f2e2a2":"2017-09-16T11:50:02.240Z","1.1.0-alpha.5db7a275":"2017-09-16T13:45:57.138Z","1.1.0-alpha.1460dad9":"2017-09-18T12:28:40.235Z","1.0.8":"2017-11-29T00:09:30.164Z","1.0.9":"2017-12-10T00:45:26.812Z","2.0.0-alpha.f20ac0ed":"2018-01-11T18:38:55.471Z","2.0.0-alpha.a0a09c94":"2018-01-11T18:47:51.934Z","2.0.0-alpha.b50f2063":"2018-01-11T18:54:57.328Z","2.0.0-alpha.03b9df85":"2018-01-12T14:36:02.476Z","2.0.0-alpha.e9df8e57":"2018-01-12T14:47:19.436Z","2.0.0-alpha.8c822451":"2018-01-12T15:00:48.633Z","2.0.0-alpha.e5586916":"2018-01-12T15:22:20.750Z","2.0.0-alpha.9da1bca1":"2018-01-12T18:07:25.192Z","1.0.10":"2018-01-15T17:30:19.816Z","2.0.0-alpha.aeb05561":"2018-01-18T01:52:57.607Z","2.0.0-alpha.7b47e00d":"2018-01-18T02:10:00.022Z","2.0.0-alpha.f5c1df61":"2018-01-18T17:30:19.927Z","2.0.0-alpha.926cb6da":"2018-01-21T01:42:12.835Z","2.0.0-alpha.3f307d61":"2018-01-21T02:22:50.165Z","1.0.11":"2018-01-23T19:17:47.843Z","2.0.0-alpha.d1544e1b":"2018-01-25T00:14:18.880Z","2.0.0-alpha.53bbd4cd":"2018-02-10T20:34:33.190Z","2.0.0-alpha.2b695217":"2018-02-10T22:36:40.296Z","2.0.0-alpha.32ef58da":"2018-02-11T03:44:41.875Z","2.0.0-alpha.5182142b":"2018-02-11T04:12:26.421Z","1.0.12":"2018-02-13T01:11:58.938Z","2.0.0-alpha.6ab84875":"2018-02-15T02:06:42.192Z","2.0.0-alpha.9d4de2a6":"2018-02-15T20:32:19.060Z","2.0.0-alpha.9e381f74":"2018-02-15T21:12:28.296Z","2.0.0-alpha.dd504153":"2018-02-15T21:29:34.287Z","2.0.0-alpha.b68b7f5c":"2018-02-15T22:00:39.972Z","2.0.0-alpha.bb258cb5":"2018-02-16T00:29:34.292Z","2.0.0-alpha.e28a1c8e":"2018-02-16T01:11:01.675Z","2.0.0-alpha.067e672c":"2018-02-17T02:45:06.904Z","2.0.0-alpha.d0b8dd9e":"2018-02-17T19:05:02.093Z","2.0.0-alpha.e66c6c9c":"2018-02-27T01:24:47.593Z","1.0.13":"2018-02-28T20:39:59.787Z","2.0.0-alpha.2cbec6d6":"2018-03-03T06:46:37.670Z","2.0.0-alpha.3":"2018-03-03T07:23:54.157Z","2.0.0-alpha.f98688ee":"2018-03-07T02:25:43.907Z","1.0.14":"2018-03-07T18:06:20.269Z","2.0.0-alpha.9fe50b00":"2018-03-08T03:04:20.880Z","2.0.0-alpha.34eda94b":"2018-03-17T21:22:14.723Z","2.0.0-alpha.12622d64":"2018-03-18T00:00:07.099Z","2.0.0-alpha.84bd71b4":"2018-03-18T00:39:55.315Z","2.0.0-alpha.6ad61a13":"2018-03-21T17:49:31.921Z","2.0.0-alpha.5f47082e":"2018-03-23T22:47:37.445Z","2.0.0-alpha.4":"2018-03-23T23:18:58.805Z","2.0.0-alpha.95fcd4af":"2018-03-29T02:22:27.236Z","2.0.0-alpha.20252dc3":"2018-03-29T02:44:14.231Z","2.0.0-alpha.4a09f745":"2018-04-05T22:14:53.193Z","2.0.0-alpha.76793cd8":"2018-04-07T22:12:17.007Z","2.0.0-alpha.5c9569c0":"2018-04-19T16:56:59.063Z","2.0.0-alpha.523a4286":"2018-04-19T23:52:04.553Z","2.0.0-alpha.5421f383":"2018-04-20T06:52:54.332Z","2.0.0-alpha.e9c3027b":"2018-04-20T17:56:25.485Z","2.0.0-alpha.5":"2018-04-22T01:53:58.022Z","2.0.0-alpha.6":"2018-04-25T16:25:13.175Z","2.0.0-alpha.7":"2018-04-26T18:19:33.842Z","2.0.0-alpha.8":"2018-05-11T21:43:46.592Z","2.0.0-alpha.10":"2018-05-15T19:54:35.650Z","2.0.0-alpha.11":"2018-05-31T14:04:14.541Z","2.0.0-alpha.12":"2018-05-31T17:16:19.581Z","2.0.0-alpha.13":"2018-06-11T15:22:50.812Z","2.0.0-alpha.14":"2018-06-11T16:54:57.698Z","2.0.0-alpha.8ac171a1":"2018-06-16T19:25:25.233Z","2.0.0-alpha.e328d33f":"2018-06-16T19:32:56.279Z","2.0.0-alpha.80a21f04":"2018-06-16T19:37:08.158Z","2.0.0-alpha.15":"2018-06-16T23:32:47.185Z","2.0.0-beta.0":"2018-06-17T06:53:55.368Z","2.0.0-beta.1":"2018-06-17T08:12:53.515Z","2.0.0-beta.2":"2018-06-20T20:45:29.924Z","2.0.0-beta.3":"2018-06-26T14:43:18.030Z","2.0.0-beta.4":"2018-07-21T16:00:08.791Z","2.0.0-rc.0":"2018-08-21T00:58:34.044Z","2.0.0-rc.1":"2018-08-29T18:28:53.574Z","2.0.5":"2018-09-17T20:42:02.846Z","2.0.6":"2018-10-29T15:23:58.421Z","2.0.7":"2018-11-29T12:13:49.338Z","2.0.8":"2019-02-01T12:25:09.006Z","2.0.9":"2019-03-05T20:25:41.667Z","2.0.10":"2019-03-11T15:24:24.512Z","2.1.0":"2019-06-20T13:49:03.138Z"},"tags":{"latest":"2.1.0"},"description":"Shows page loading indicator when loading page resources is delayed","dependencies":{"@babel/runtime":"^7.0.0","nprogress":"^0.2.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-nprogress","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-nprogress","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-nprogress","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-nprogress\n\nAutomatically shows the [nprogress](http://ricostacruz.com/nprogress/) indicator\nwhen a page is delayed in loading (which Gatsby considers as one second after\nclicking on a link).\n\n## Install\n\n`npm install --save gatsby-plugin-nprogress`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nplugins: [\n {\n resolve: `gatsby-plugin-nprogress`,\n options: {\n // Setting a color is optional.\n color: `tomato`,\n // Disable the loading spinner.\n showSpinner: false,\n },\n },\n]\n```\n\nIn addition to `color` – a configuration option specific to\n`gatsby-plugin-nprogress` that saves some time\n[customizing the nprogress CSS](https://github.com/rstacruz/nprogress#customization)\nto match your site colors – you may pass all available\n[nprogress configuration options](https://github.com/rstacruz/nprogress#configuration).\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1497116407168,"modified":1561038545660,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:06.649Z","_searchInternal":{"concatenatedName":"gatsbypluginnprogress","alternativeNames":["gatsbypluginnprogress","gatsby plugin nprogress","gatsby-plugin-nprogress"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-nprogress/CHANGELOG.md","jsDelivrHits":14,"objectID":"gatsby-plugin-nprogress","_highlightResult":{"name":{"value":"gatsby-plugin-nprogress","matchLevel":"none","matchedWords":[]},"description":{"value":"Shows page loading indicator when loading page resources is delayed","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginnprogress","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin nprogress","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-nprogress","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-web-font-loader","downloadsLast30Days":33413,"downloadsRatio":0.00007321167093013353,"humanDownloadsLast30Days":"33.4k","popular":false,"version":"1.0.4","versions":{"1.0.0":"2018-07-05T21:09:58.813Z","1.0.1":"2018-07-05T21:11:18.731Z","1.0.2":"2018-07-05T21:21:16.048Z","1.0.3":"2018-07-30T13:08:08.620Z","1.0.4":"2018-08-20T13:03:53.604Z"},"tags":{"latest":"1.0.4"},"description":"A Gatsby plugin to asynchronously load webfonts using [Web Font Loader](https://github.com/typekit/webfontloader). Can load fonts from [Google Fonts](http://www.google.com/fonts/), [Typekit](http://www.typekit.com/), [Fonts.com](http://www.fonts.com/), a","dependencies":{"babel-runtime":"^6.26.0","webfontloader":"^1.6.28"},"devDependencies":{"esca-scripts":"^1.4.0","opn-cli":"^3.1.0"},"repository":{"url":"https://github.com/escaladesports/gatsby-plugin-web-font-loader","project":"gatsby-plugin-web-font-loader","user":"escaladesports","host":"github.com","path":"","head":"095484e8c43025d3bbc3e9eb7fe6e95d6d50d8e5","branch":"095484e8c43025d3bbc3e9eb7fe6e95d6d50d8e5"},"githubRepo":{"user":"escaladesports","project":"gatsby-plugin-web-font-loader","path":"","head":"095484e8c43025d3bbc3e9eb7fe6e95d6d50d8e5"},"gitHead":"095484e8c43025d3bbc3e9eb7fe6e95d6d50d8e5","readme":"# gatsby-plugin-web-font-loader\n\nA Gatsby plugin to asynchronously load webfonts using [Web Font Loader](https://github.com/typekit/webfontloader). Can load fonts from [Google Fonts](http://www.google.com/fonts/), [Typekit](http://www.typekit.com/), [Fonts.com](http://www.fonts.com/), and [Fontdeck](http://fontdeck.com/), as well as self-hosted web fonts.\n\n## Installation\n\nWith npm:\n\n```bash\nnpm install --save gatsby-plugin-web-font-loader\n```\n\nOr with Yarn:\n\n```bash\nyarn add gatsby-plugin-web-font-loader\n```\n\n## Usage\n\nIn your `gatsby-config.js` file, load in the plugin along with which web fonts to load. For example, loading Google Fonts could look like this:\n\n```javascript\nmodule.exports = {\n plugins: [\n {\n resolve: 'gatsby-plugin-web-font-loader',\n options: {\n google: {\n families: ['Droid Sans', 'Droid Serif']\n }\n }\n }\n ]\n}\n```\n\nFor a list of all available options, consult the [Web Font Loader readme](https://github.com/typekit/webfontloader).","owner":{"name":"escaladesports","avatar":"https://github.com/escaladesports.png","link":"https://github.com/escaladesports"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby-plugin","gatsby","plugin","web","font","loader","google","typekit","webfont","webfontloader","fonts.com","fontdeck"],"computedKeywords":[],"computedMetadata":{},"created":1530824998728,"modified":1558723579064,"lastPublisher":{"name":"ken85rose","email":"kennedy@kennedyrose.com","avatar":"https://gravatar.com/avatar/0dec49a05d40eddd3827688a1ad9680b","link":"https://www.npmjs.com/~ken85rose"},"owners":[{"email":"taustin@escaladesports.com","name":"tbaustin","avatar":"https://gravatar.com/avatar/85eeb95dc41f452aec4688d57e820929","link":"https://www.npmjs.com/~tbaustin"},{"email":"kennedy@kennedyrose.com","name":"ken85rose","avatar":"https://gravatar.com/avatar/0dec49a05d40eddd3827688a1ad9680b","link":"https://www.npmjs.com/~ken85rose"}],"lastCrawl":"2019-06-24T10:15:06.933Z","_searchInternal":{"concatenatedName":"gatsbypluginwebfontloader","alternativeNames":["gatsbypluginwebfontloader","gatsby plugin web font loader","gatsby-plugin-web-font-loader"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":0,"objectID":"gatsby-plugin-web-font-loader","_highlightResult":{"name":{"value":"gatsby-plugin-web-font-loader","matchLevel":"none","matchedWords":[]},"description":{"value":"A Gatsby plugin to asynchronously load webfonts using [Web Font Loader](https://github.com/typekit/webfontloader). Can load fonts from [Google Fonts](http://www.google.com/fonts/), [Typekit](http://www.typekit.com/), [Fonts.com](http://www.fonts.com/), a","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"escaladesports","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"plugin","matchLevel":"none","matchedWords":[]},{"value":"web","matchLevel":"none","matchedWords":[]},{"value":"font","matchLevel":"none","matchedWords":[]},{"value":"loader","matchLevel":"none","matchedWords":[]},{"value":"google","matchLevel":"none","matchedWords":[]},{"value":"typekit","matchLevel":"none","matchedWords":[]},{"value":"webfont","matchLevel":"none","matchedWords":[]},{"value":"webfontloader","matchLevel":"none","matchedWords":[]},{"value":"fonts.com","matchLevel":"none","matchedWords":[]},{"value":"fontdeck","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"tbaustin","matchLevel":"none","matchedWords":[]}},{"name":{"value":"ken85rose","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginwebfontloader","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin web font loader","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-web-font-loader","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-background-image","downloadsLast30Days":29788,"downloadsRatio":0.00006526888497491448,"humanDownloadsLast30Days":"29.8k","popular":false,"version":"0.7.3","versions":{"0.1.1":"2018-12-13T17:49:27.901Z","0.1.2":"2018-12-13T17:52:08.726Z","0.1.3":"2018-12-13T18:20:45.300Z","0.1.4":"2018-12-13T18:26:14.440Z","0.1.5":"2018-12-13T18:27:42.647Z","0.1.6":"2018-12-13T20:46:00.920Z","0.1.7":"2018-12-13T21:50:43.424Z","0.1.8":"2018-12-14T16:26:43.791Z","0.1.9":"2018-12-14T16:40:58.956Z","0.1.10":"2019-01-07T16:11:04.572Z","0.1.11":"2019-01-11T14:28:54.171Z","0.1.12":"2019-01-11T18:48:20.856Z","0.1.13":"2019-01-18T11:40:21.422Z","0.2.0":"2019-01-18T17:27:24.079Z","0.2.1":"2019-01-18T17:41:44.521Z","0.2.2":"2019-01-30T17:42:47.514Z","0.2.3":"2019-02-07T18:01:24.638Z","0.2.31":"2019-02-26T11:48:23.726Z","0.2.4":"2019-02-26T13:31:45.443Z","0.2.41":"2019-03-06T14:19:32.093Z","0.2.42":"2019-03-06T14:29:04.624Z","0.2.43":"2019-03-08T17:46:58.309Z","0.2.5":"2019-03-13T19:11:14.687Z","0.2.6":"2019-03-14T12:57:42.728Z","0.2.61":"2019-03-14T14:08:33.259Z","0.2.62":"2019-03-14T15:45:48.994Z","0.2.7":"2019-03-15T19:21:12.296Z","0.2.71":"2019-03-15T19:33:23.522Z","0.2.72":"2019-03-15T19:37:55.509Z","0.2.73":"2019-03-19T16:57:57.135Z","0.2.74":"2019-03-25T07:59:49.612Z","0.2.8-alpha":"2019-03-26T20:30:06.830Z","0.2.8-alpha1":"2019-03-26T20:36:02.686Z","0.2.8-alpha2":"2019-03-27T18:40:37.692Z","0.2.8-alpha3":"2019-03-27T19:39:09.652Z","0.2.8-alpha4":"2019-03-28T21:42:43.227Z","0.2.8-beta":"2019-04-02T15:54:38.329Z","0.2.8":"2019-04-05T11:12:53.349Z","0.2.9":"2019-04-05T13:59:55.121Z","0.3.0":"2019-04-11T22:49:25.312Z","0.3.1":"2019-04-14T11:22:42.359Z","0.3.2":"2019-04-14T11:52:59.268Z","0.3.3":"2019-04-15T11:20:48.056Z","0.3.4":"2019-04-16T18:04:48.618Z","0.3.5":"2019-04-17T18:10:04.227Z","0.3.6":"2019-04-20T18:41:52.449Z","0.4.0":"2019-04-25T18:33:02.535Z","0.4.1":"2019-04-25T19:19:04.931Z","0.4.2":"2019-04-28T18:07:46.984Z","0.4.3":"2019-04-29T19:41:41.759Z","0.5.0":"2019-05-01T16:03:19.751Z","0.5.1":"2019-05-02T18:45:16.998Z","0.5.2":"2019-05-02T19:17:26.458Z","0.5.3":"2019-05-04T16:16:45.777Z","0.5.4":"2019-05-07T11:15:56.971Z","0.5.5":"2019-05-07T17:16:54.755Z","0.5.6":"2019-05-09T20:27:06.615Z","0.5.7":"2019-05-12T17:02:53.641Z","0.5.8":"2019-05-13T18:21:01.442Z","0.5.9":"2019-05-13T18:34:57.369Z","0.6.0":"2019-05-14T19:09:25.749Z","0.6.1":"2019-05-15T20:43:13.272Z","0.6.2":"2019-05-19T20:18:22.487Z","0.7.0":"2019-05-27T23:05:21.448Z","0.7.1":"2019-06-12T19:52:51.446Z","0.7.2":"2019-06-17T22:29:50.097Z","0.7.3":"2019-06-22T10:17:40.107Z"},"tags":{"latest":"0.7.3"},"description":"Lazy-loading React background-image component with optional support for the blur-up effect.","dependencies":{"@babel/runtime":"^7.4.5","global":"^4.4.0","prop-types":"^15.7.2"},"devDependencies":{},"repository":{"url":"https://github.com/timhagn/gatsby-background-image/tree/master/packages/gatsby-background-image","host":"github.com","user":"timhagn","project":"gatsby-background-image","path":"/tree/master/packages/gatsby-background-image","head":"0901fb7c43330702c58bcfe43482d307238821a1","branch":"0901fb7c43330702c58bcfe43482d307238821a1"},"githubRepo":{"user":"timhagn","project":"gatsby-background-image","path":"/tree/master/packages/gatsby-background-image","head":"0901fb7c43330702c58bcfe43482d307238821a1"},"gitHead":"0901fb7c43330702c58bcfe43482d307238821a1","readme":"<h1 align=\"center\">\n gatsby-background-image\n</h1>\n<p align=\"center\">\n <i>Speedy, optimized <strong>background</strong>-images without the work!</i>\n</p>\n<p align=\"center\">\n <a href=\"https://github.com/timhagn/gatsby-background-image/blob/master/LICENSE\">\n <img src=\"https://img.shields.io/badge/license-MIT-blue.svg\" alt=\"gatsby-background-image is released under the MIT license.\" />\n </a>\n <a href=\"https://circleci.com/gh/timhagn/gatsby-background-image\">\n <img src=\"https://circleci.com/gh/timhagn/gatsby-background-image.svg?style=shield\" alt=\"Current CircleCI build status of gatsby-background-image.\" />\n </a>\n <a href=\"https://codecov.io/gh/timhagn/gatsby-background-image\">\n <img src=\"https://codecov.io/gh/timhagn/gatsby-background-image/branch/master/graph/badge.svg\" />\n </a>\n <a href=\"https://www.npmjs.org/package/gatsby-background-image\">\n <img src=\"https://img.shields.io/npm/v/gatsby-background-image.svg\" alt=\"Current npm package version.\" />\n </a>\n <a href=\"https://npmcharts.com/compare/gatsby-background-image?minimal=true\">\n <img src=\"https://img.shields.io/npm/dw/gatsby-background-image.svg\" alt=\"Downloads per week on npm.\" />\n </a>\n</p>\n\n`gatsby-background-image` is a React component which for background-images\nprovides, what Gatsby's own `gatsby-image` does for the rest of your images and \neven more: \n**Now it's possible to use multiple stacked Background Images!** \n\nIt has all the advantages of [gatsby-image](https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-image),\nincluding the \"blur-up\" technique or a \"[traced placeholder](https://github.com/gatsbyjs/gatsby/issues/2435)\"\nSVG to show a preview of the image while it loads, \n**plus** being usable as a container (no more hacks with extra wrappers), \n**plus** being able to work with [multiple stacked background images](#how-to-use-with-multiple-images). \n\nAll the glamour (and speed) of `gatsby-image` for your Background Images!\n\n___And it's of course styleable with `styled-components` and the like!___ \n\n## ES5 Version\n\n`gatsby-background-image` now has a companion package completely transpiled to\nES5: [`gatsby-background-image-es5`](https://www.npmjs.com/package/gatsby-background-image-es5). \nHave a look at its [README](https://github.com/timhagn/gatsby-background-image/blob/master/packages/gatsby-background-image-es5/README.md), \nit nearly works the same - though with ([nearly](#important)) all polyfills \nincluded to support legacy browsers it's nearly three times the size of \nthis package.\n \n\n## Table of Contents\n- [Example Repo](#example-repo) \n- [Procedure](#procedure) \n- [Install](#install)\n * [Important](#important)\n- [How to Use](#how-to-use)\n- [How to Use with Multiple Images](#how-to-use-with-multiple-images)\n- [Configuration & props](#configuration--props)\n- [Styling & Passed Through Styles](#styling--passed-through-styles)\n * [Multiple Instances Of Same Component](#multiple-instances-of-same-component)\n * [Deprecated Styling](#deprecated-styling)\n- [Changed props](#changed-props)\n- [props Not Available](#props-not-available)\n- [Handling of Remaining props](#handling-of-remaining-props) \n- [Contributing](#contributing)\n- [TODO](#todo)\n- [Acknowledgements](#acknowledgements)\n\n## Example Repo\n\n`gatsby-background-image` now has an example repository \nto see it's similarities & differences to `gatsby-image` side by side. \nIt's located at: [gbitest](https://github.com/timhagn/gbitest)\n\n## Procedure\n\nAs `gatsby-image` is designed to work seamlessly with Gatsby's native image\nprocessing capabilities powered by GraphQL and Sharp, so is `gatsby-background-image`. \nTo produce optimized background-images, you need only to:\n\n1. Import `gatsby-background-image` and use it in place of the built-in `div`\n or suchlike containers. \n2. Write a GraphQL query using one of the GraphQL \"fragments\" provided by \n `gatsby-transformer-sharp` \n which specify the fields needed by `gatsby-background-image`.\n\nThe GraphQL query creates multiple thumbnails with optimized JPEG and PNG\ncompression (or even WebP files for browsers that support them).\nThe `gatsby-background-image` component automatically sets up the \n\"blur-up\" effect as well as lazy loading of images further down the screen.\n\n## Install\n\nTo add `gatsby-background-image` as a dependency to your Gatsby-project use \n\n```bash\nnpm install --save gatsby-background-image\n```\n\nor \n\n```bash\nyarn add gatsby-background-image\n```\n\nDepending on the gatsby starter you used, you may need to include [gatsby-transformer-sharp](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-transformer-sharp/) \nand [gatsby-plugin-sharp](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-plugin-sharp/) as well, and make sure they are installed and included in your gatsby-config.\n\n```bash\nnpm install --save gatsby-transformer-sharp gatsby-plugin-sharp\n```\n\nor \n\n```bash\nyarn add gatsby-transformer-sharp gatsby-plugin-sharp\n```\n\nThen in your `gatsby-config.js`:\n\n```js\nplugins: [`gatsby-transformer-sharp`, `gatsby-plugin-sharp`]\n```\n\nAlso, make sure you have set up a source plugin, so your images are available in \n`graphql` queries. For example, if your images live in a project folder on the \nlocal filesystem, you would set up `gatsby-source-filesystem` in \n`gatsby-config.js` like so:\n\n```js\nconst path = require(`path`)\n\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-source-filesystem`,\n options: {\n name: `images`,\n path: path.join(__dirname, `src`, `images`),\n },\n },\n `gatsby-plugin-sharp`,\n `gatsby-transformer-sharp`,\n ],\n}\n```\n\n#### Important:\n\nIf you support *Safari* and/or *Internet Explorer*, you have to install the \n`IntersectionObserver` polyfill. \nAs - at the time of writing - neither fully implements the feature \n(see [caniuse.com](https://caniuse.com/#search=IntersectionObserver)).\n\nA solution to this issue was mentioned in a comment over at [gatsby-image/issues](https://github.com/gatsbyjs/gatsby/issues/4021#issuecomment-445238511) \nand you are able to apply it the following way:\n\n**1.** Install the [`intersection-observer`](https://www.npmjs.com/package/intersection-observer) \npolyfill package by running:\n\n ```bash\n npm i --save intersection-observer\n ```\n\n or\n\n ```bash\n yarn add intersection-observer\n ```\n\n**2.** Dynamically load the polyfill in your `gatsby-browser.js`:\n\n```js\n// ES5 way\n// exports.onClientEntry = () => {\n// ES6 way\nexport const onClientEntry = () => { \n // IntersectionObserver polyfill for gatsby-background-image (Safari, IE)\n if (typeof window.IntersectionObserver === `undefined`) {\n import(`intersection-observer`)\n console.log(`# IntersectionObserver is polyfilled!`)\n }\n}\n```\n\n## How to Use\n\nThis is what a component using `gatsby-background-image` might look like:\n\n```jsx\nimport React from 'react'\nimport { graphql, StaticQuery } from 'gatsby'\nimport styled from 'styled-components'\n\nimport BackgroundImage from 'gatsby-background-image'\n\nconst BackgroundSection = ({ className }) => (\n <StaticQuery query={graphql`\n query {\n desktop: file(relativePath: { eq: \"seamless-bg-desktop.jpg\" }) {\n childImageSharp {\n fluid(quality: 90, maxWidth: 4160) {\n ...GatsbyImageSharpFluid_withWebp\n }\n }\n }\n }\n `}\n render={data => {\n // Set ImageData.\n const imageData = data.desktop.childImageSharp.fluid\n return (\n <BackgroundImage Tag=\"section\"\n className={className}\n fluid={imageData}\n backgroundColor={`#040e18`}\n >\n <h1>Hello gatsby-background-image</h1>\n </BackgroundImage>\n )\n }\n }\n />\n)\n\nconst StyledBackgroundSection = styled(BackgroundSection)`\n width: 100%;\n background-position: bottom center;\n background-repeat: repeat-y;\n background-size: cover;\n`\n\nexport default StyledBackgroundSection\n\n```\n\n## How to Use with Multiple Images\n\nAs `gatsby-background-image` may now be used with [multiple backgrounds](https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Backgrounds_and_Borders/Using_multiple_backgrounds),\n**including CSS strings** like `rgba()` or suchlike this is what a component \nusing it might look like:\n\n```jsx\nimport { graphql, useStaticQuery } from 'gatsby'\nimport React from 'react'\nimport styled from 'styled-components'\n\nimport BackgroundImage from 'gatsby-background-image'\n\nconst MultiBackground = ({ children, className }) => {\n const {\n astronaut,\n seamlessBackground,\n } = useStaticQuery(\n graphql`\n query {\n astronaut: file(relativePath: { eq: \"astronaut.png\" }) {\n childImageSharp {\n fluid(quality: 100) {\n ...GatsbyImageSharpFluid_withWebp\n }\n }\n }\n seamlessBackground: file(\n relativePath: { eq: \"seamless-background.jpg\" }\n ) {\n childImageSharp {\n fluid(quality: 100, maxWidth: 420) {\n ...GatsbyImageSharpFluid_withWebp\n }\n }\n }\n }\n `\n )\n\n // Watch out for CSS's stacking order, especially when styling the individual\n // positions! The lowermost image comes last!\n const backgroundFluidImageStack = [\n seamlessBackground.childImageSharp.fluid,\n `linear-gradient(rgba(220, 15, 15, 0.73), rgba(4, 243, 67, 0.73))`\n astronaut.childImageSharp.fluid,\n ].reverse()\n\n return (\n <BackgroundImage\n Tag={`section`}\n id={`test`}\n className={className}\n fluid={backgroundFluidImageStack}\n >\n <StyledInnerWrapper>\n <h1>\n This is a test of multiple background images.\n </h1>\n </StyledInnerWrapper>\n </BackgroundImage>\n )\n}\n\nconst StyledInnerWrapper = styled.div`\n margin-top: 10%;\n display: flex; \n flex-direction: column; \n align-items: center;\n`\n\nconst StyledMultiBackground = styled(MultiBackground)`\n width: 100%;\n min-height: 100vh;\n /* You should set a background-size as the default value is \"cover\"! */\n background-size: auto;\n /* So we won't have the default \"lightgray\" background-color. */\n background-color: transparent;\n /* Now again, remember the stacking order of CSS: lowermost comes last! */\n background-repeat: no-repeat, no-repeat, repeat;\n background-position: center 155%, center, center;\n color: #fff;\n`\n\nexport default StyledMultiBackground\n\n```\n\n## Configuration & props\n\n`gatsby-background-image` nearly works the same as `gatsby-image` so have a look\nat their [options & props](https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-image#two-types-of-responsive-images)\nto get started. But be sure to also throw a glance at [Changed props](#changed-props), \n[props Not Available](#props-not-available) and [Handling of Remaining props](#handling-of-remaining-props) \nas well ; )!\n\n## Styling & Passed Through Styles\n\nYou may style your `gatsby-background-image` BackgroundImage-component every way\nyou like, be it global CSS, CSS-Modules or even with `styled-components` or your \nCSS-in-JS \"framework\" of choice. The `style={{}}` prop is supported as well.\n\nWhichever way you choose, *every* `background-*` style declared in the main \nclass (or the `style={{}}` prop) will directly get passed through to the \npseudo-elements as well (so you would have no need for specifically styling them)!\n\nThe specificity hereby is in ascending order:\n- class-styles\n- extracted `background-*` styles \n- `style={{}}` prop\n\nThe three `background-` styles seen above are necessary and will default to:\n\n| Name | Default Value | \n| ---------------------- | ---------------------- |\n| `background-position` | `center` | \n| `background-repeat` | `no-repeat` | \n| `background-size` | `cover` |\n\nTo be able to overwrite them for each pseudo-element individually, you may reset \ntheir values in the `style={{}}` prop with an empty string like such:\n\n```\nstyle={{\n // Defaults are overwrite-able by setting one or each of the following:\n backgroundSize: '',\n backgroundPosition: '',\n backgroundRepeat: '',\n}}\n```\n\n_**¡But be sure to target the `:before` and `:after` pseudo-elements in your CSS,\nlest your \"blurred-up\", traced placeholder SVG or lazy loaded background images\nmight jump around!**_\n\n#### Multiple Instances of Same Component\n\nShould you decide to use a single instance of a styled `<BackgroundImage />` for\nmultiple different images, it will automatically add an additional `className`, \na hashed 32bit integer of the current `srcSet` or `className` prefixed with `gbi-`, \nto prevent erroneous styling of individual instances. \nYou wouldn't have added the same class for different CSS `background-image`\nstyles on your own, or would you have ; )?\n\n**Be warned**: Styling the components `:before` & `:after` pseudo-elements \nwithin the main classes then only is going to work again for all instances if \nyou use `!important` on its CSS-properties (cause of CSS-specifity). \n\n#### Deprecated Styling\n\nThough now considered deprecated and to be removed in `1.0.0` at the latest \n(feel free to open an issue, should you really need them : ),\n`gatsby-background-image` has an added classId (as we had to name\npseudo-elements and introduce a className for the returned container\nin the beginning):\n\n| Name | Type | Description |\n| ---------------------- | ------------------- | ------------------------------------------------------------------------------------------------------------ |\n| `classId` | `string` | classID of the container element, defaults to a random lower case string of seven chars, followed by `_depr` |\n\nOnly if present now, pseudo-elements are created on a class by the name of \n`.gatsby-background-image-[YOUR_ID]` and the class is added to `BackgroundImage`.\nNow you are able to access it through CSS / CSS-in-JS with:\n\n```css\n.gatsby-background-image-[YOUR_ID]/*(:before, :after)*/ {\n background-repeat: repeat-y;\n background-position: bottom center;\n background-size: cover;\n}\n```\n\nBut as the paragraph-title states: This behavior is considered deprecated, so\ndon't count on it in production ; ).\n\n## Changed props\n\nThe `fluid` or `fixed` (as well as the deprecated `resolutions` & `sizes`) props\nmay be given as an array of images returned from `fluid` or `fixed` queries or \nCSS Strings like `rgba()` or such. \n\nThe `fadeIn` prop may be set to `soft` to ignore cached images and always\ntry to fade in if `critical` isn't set.\n\n| Name | Type | Description |\n| ---------------------- | --------------------- | ------------------------------------------------------------------------------- |\n| `fixed` \t | `object`/`array` | Data returned from one fixed query or an array of multiple ones or CSS string(s)|\n| `fluid` \t | `object`/`array` | Data returned from one fluid query or an array of multiple ones or CSS string(s)|\n| `fadeIn` | `boolean`/`string` | Defaults to fading in the image on load, may be forced by `soft` |\n\n## props Not Available\n\nAs `gatsby-background-image` doesn't use placeholder-images, the following\nprops from `gatsby-image` are not available, of course.\n\n| Name | Type | Old Usage |\n| ---------------------- | ------------------- | --------------------------------------------------------------|\n| `placeholderStyle` | `object` | Spread into the default styles of the placeholder img element |\n| `placeholderClassName` | `string` | A class that is passed to the placeholder img element |\n| `imgStyle` | `object` | Spread into the default styles of the actual img element |\n\n## Handling of Remaining props\n\nAfter every available prop is handled, the remaining ones get cleaned up and\nspread into the `<BackgroundImage />`'s container element.\nThis way you can \"safely\" add every ARIA or `data-*` attribute you might need\nwithout having to use `gatsby-image`'s `itemProp` ; ). \n\n## Contributing\n\nEveryone is more than welcome to contribute to this little package! \nDocs, Reviews, Testing, Code - whatever you want to add, just go for it : ).\nSo have a look at our [CONTRIBUTING](https://github.com/timhagn/gatsby-background-image/blob/master/CONTRIBUTING.md) file and give it a go.\nThanks in advance!\n\n## TODO\n\n- For the moment Internet Explorer 11 seems to have problems with `_tracedSVG`\nand parsing the `background-*` CSS props, gotta investigate further...\n\n*For anything else tell me by opening an issue or a PR : )!*\n\n## Acknowledgements\n\nThis package started by by pilfering `gatsby-image`s excellent work and adapting \nit - but it's definitely outgrowing those wee beginnings. \nThanks go to its creators & the @gatsbyjs Team, anyways : )! ","owner":{"name":"timhagn","avatar":"https://github.com/timhagn.png","link":"https://github.com/timhagn"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-component","gatsby-image","background-image","backgroundImage","background","image","react-component"],"computedKeywords":[],"computedMetadata":{},"created":1544723367807,"modified":1561198664049,"lastPublisher":{"name":"timhagn","email":"mail@timhagn.com","avatar":"https://gravatar.com/avatar/098c7032fb30d750d205b4d23f518a37","link":"https://www.npmjs.com/~timhagn"},"owners":[{"name":"timhagn","email":"mail@timhagn.com","avatar":"https://gravatar.com/avatar/098c7032fb30d750d205b4d23f518a37","link":"https://www.npmjs.com/~timhagn"}],"lastCrawl":"2019-06-24T10:14:46.152Z","_searchInternal":{"concatenatedName":"gatsbybackgroundimage","alternativeNames":["gatsbybackgroundimage","gatsby background image","gatsby-background-image"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/timhagn/gatsby-background-image/master/packages/gatsby-background-image/CHANGELOG.md","jsDelivrHits":0,"objectID":"gatsby-background-image","_highlightResult":{"name":{"value":"gatsby-background-image","matchLevel":"none","matchedWords":[]},"description":{"value":"Lazy-loading React background-image component with optional support for the blur-up effect.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"timhagn","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-component","matchLevel":"none","matchedWords":[]},{"value":"gatsby-image","matchLevel":"none","matchedWords":[]},{"value":"background-image","matchLevel":"none","matchedWords":[]},{"value":"backgroundImage","matchLevel":"none","matchedWords":[]},{"value":"background","matchLevel":"none","matchedWords":[]},{"value":"image","matchLevel":"none","matchedWords":[]},{"value":"react-component","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"timhagn","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbybackgroundimage","matchLevel":"none","matchedWords":[]},{"value":"gatsby background image","matchLevel":"none","matchedWords":[]},{"value":"gatsby-background-image","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-source-wordpress","downloadsLast30Days":29639,"downloadsRatio":0.00006051060965675513,"humanDownloadsLast30Days":"29.6k","popular":false,"version":"3.1.2","versions":{"1.0.0-beta.1":"2017-06-30T21:29:11.736Z","1.0.0-beta.2":"2017-06-30T21:37:55.136Z","1.0.0-beta.3":"2017-06-30T21:38:58.757Z","1.0.0-beta.4":"2017-06-30T21:40:03.799Z","1.0.0-beta.5":"2017-07-01T10:56:38.000Z","1.0.0-beta.6":"2017-07-01T14:22:13.186Z","1.0.0-beta.7":"2017-07-02T17:10:00.040Z","1.0.1":"2017-07-06T19:49:08.352Z","1.1.0":"2017-07-12T03:18:23.258Z","1.3.0":"2017-07-19T06:32:01.294Z","1.4.0":"2017-07-25T23:27:32.159Z","1.4.1":"2017-07-26T17:34:03.169Z","1.4.2":"2017-07-26T21:39:17.190Z","1.5.0":"2017-07-27T19:27:57.066Z","1.6.3":"2017-08-01T17:56:26.626Z","1.7.0":"2017-08-10T15:41:07.363Z","1.7.1":"2017-08-10T17:40:49.066Z","1.7.2":"2017-08-10T22:04:36.588Z","1.7.3":"2017-08-11T14:03:30.383Z","1.7.4":"2017-08-14T21:24:31.407Z","1.7.5":"2017-08-17T14:38:11.344Z","1.7.6":"2017-08-19T01:52:49.084Z","1.8.0-alpha.22c8a6f1":"2017-08-24T16:12:38.953Z","2.0.0":"2017-08-25T18:07:12.052Z","1.7.7":"2017-08-25T18:22:03.565Z","1.7.8":"2017-08-29T00:05:51.731Z","1.7.9":"2017-08-30T22:58:54.575Z","1.7.10":"2017-08-31T23:42:25.298Z","1.8.0-alpha.76b32701":"2017-09-15T18:02:18.796Z","1.8.0-alpha.93f2e2a2":"2017-09-16T11:51:22.295Z","2.1.0-alpha.5db7a275":"2017-09-16T13:47:54.227Z","1.8.0-alpha.1460dad9":"2017-09-18T12:29:51.211Z","2.0.1":"2017-09-19T22:56:32.973Z","2.0.2":"2017-09-20T13:45:31.237Z","2.0.3":"2017-09-22T00:56:12.480Z","2.0.4":"2017-09-25T15:01:53.325Z","2.0.5":"2017-09-25T20:30:30.072Z","2.0.6":"2017-09-28T23:28:49.927Z","2.0.7":"2017-09-29T20:18:14.558Z","2.0.8":"2017-09-29T22:14:58.473Z","2.0.9":"2017-10-01T21:51:15.225Z","2.0.10":"2017-10-02T22:16:19.754Z","2.0.12":"2017-10-07T04:08:19.937Z","2.0.13":"2017-10-09T21:08:31.859Z","2.0.14":"2017-10-12T17:36:38.088Z","2.0.15":"2017-10-12T18:04:58.253Z","2.0.16":"2017-10-12T20:50:49.210Z","2.0.17":"2017-10-12T22:38:37.652Z","2.0.18":"2017-10-13T16:07:41.602Z","2.0.19":"2017-10-13T18:48:41.614Z","2.0.20":"2017-10-15T06:02:57.396Z","2.0.21":"2017-10-16T20:07:39.099Z","2.0.22":"2017-10-17T01:53:10.576Z","2.0.23":"2017-10-17T19:14:07.575Z","2.0.24":"2017-10-17T20:33:45.155Z","2.0.25":"2017-10-19T14:59:07.096Z","2.0.26":"2017-10-19T18:51:40.473Z","2.0.27":"2017-10-20T16:37:33.994Z","2.0.28":"2017-10-23T14:58:00.395Z","2.0.29":"2017-10-25T19:43:26.216Z","2.0.30":"2017-10-26T06:26:24.509Z","2.0.31":"2017-10-26T21:46:26.160Z","2.0.32":"2017-10-27T16:58:32.960Z","2.0.33":"2017-11-01T00:00:25.484Z","2.0.34":"2017-11-02T20:02:17.014Z","2.0.35":"2017-11-06T18:21:16.993Z","2.0.36":"2017-11-07T08:15:59.303Z","2.0.37":"2017-11-21T17:10:34.843Z","2.0.38":"2017-11-29T00:11:06.706Z","2.0.39":"2017-11-29T02:03:33.550Z","2.0.40":"2017-11-30T03:17:22.361Z","2.0.41":"2017-12-10T00:46:18.291Z","2.0.42":"2017-12-13T03:08:08.476Z","2.1.0-alpha.f20ac0ed":"2018-01-11T18:40:05.669Z","2.1.0-alpha.a0a09c94":"2018-01-11T18:49:08.186Z","2.1.0-alpha.b50f2063":"2018-01-11T18:55:58.548Z","2.0.43":"2018-01-12T01:32:44.628Z","2.1.0-alpha.03b9df85":"2018-01-12T14:37:21.644Z","2.1.0-alpha.e9df8e57":"2018-01-12T14:48:32.083Z","2.1.0-alpha.8c822451":"2018-01-12T15:01:48.106Z","2.1.0-alpha.e5586916":"2018-01-12T15:23:29.080Z","2.1.0-alpha.9da1bca1":"2018-01-12T18:08:52.056Z","2.0.44":"2018-01-15T17:30:21.585Z","2.1.0-alpha.aeb05561":"2018-01-18T01:54:00.317Z","2.1.0-alpha.7b47e00d":"2018-01-18T02:10:54.886Z","2.1.0-alpha.f5c1df61":"2018-01-18T17:31:37.786Z","2.0.45":"2018-01-20T01:31:12.569Z","2.0.46":"2018-01-20T03:11:49.136Z","2.0.47":"2018-01-20T03:15:43.672Z","2.0.48":"2018-01-20T17:48:58.225Z","2.0.49":"2018-01-20T17:49:29.063Z","2.1.0-alpha.926cb6da":"2018-01-21T01:42:57.798Z","2.1.0-alpha.3f307d61":"2018-01-21T02:23:40.449Z","2.1.0-alpha.d1544e1b":"2018-01-25T00:15:00.765Z","2.0.50":"2018-01-25T22:23:03.653Z","2.0.51":"2018-01-26T02:37:48.558Z","2.0.52":"2018-01-29T18:16:52.002Z","2.0.53":"2018-02-05T16:31:05.585Z","2.0.54":"2018-02-06T04:00:56.070Z","2.1.0-alpha.53bbd4cd":"2018-02-10T20:35:58.063Z","2.1.0-alpha.2b695217":"2018-02-10T22:37:45.140Z","2.1.0-alpha.32ef58da":"2018-02-11T03:45:47.600Z","2.1.0-alpha.5182142b":"2018-02-11T04:13:48.809Z","2.0.55":"2018-02-13T01:13:05.880Z","2.0.56":"2018-02-14T19:30:39.755Z","2.1.0-alpha.6ab84875":"2018-02-15T02:08:00.291Z","2.1.0-alpha.9d4de2a6":"2018-02-15T20:33:41.096Z","2.1.0-alpha.dd504153":"2018-02-15T21:31:04.113Z","2.1.0-alpha.b68b7f5c":"2018-02-15T22:02:05.219Z","2.1.0-alpha.bb258cb5":"2018-02-16T00:30:41.254Z","2.1.0-alpha.e28a1c8e":"2018-02-16T01:12:08.560Z","2.0.57":"2018-02-16T20:44:40.067Z","2.1.0-alpha.067e672c":"2018-02-17T02:46:23.670Z","2.1.0-alpha.d0b8dd9e":"2018-02-17T19:06:40.915Z","2.0.57-0":"2018-02-17T19:31:40.251Z","2.0.58":"2018-02-20T19:32:40.371Z","2.0.59":"2018-02-22T23:37:32.698Z","2.0.60":"2018-02-23T18:13:52.094Z","2.0.61":"2018-02-25T21:45:03.135Z","2.1.0-alpha.e66c6c9c":"2018-02-27T01:25:53.546Z","2.0.62":"2018-02-28T20:41:26.083Z","2.1.0-alpha.2cbec6d6":"2018-03-03T06:47:47.419Z","2.0.57-1":"2018-03-03T07:25:37.738Z","2.0.63":"2018-03-04T07:23:53.319Z","2.1.0-alpha.f98688ee":"2018-03-07T02:26:49.806Z","2.1.0-alpha.9fe50b00":"2018-03-08T03:05:23.333Z","2.0.66":"2018-03-08T05:26:24.761Z","2.0.67":"2018-03-08T22:56:28.241Z","2.0.68":"2018-03-13T06:17:16.288Z","2.0.69":"2018-03-15T22:14:46.405Z","2.1.0-alpha.34eda94b":"2018-03-17T21:23:21.724Z","2.1.0-alpha.12622d64":"2018-03-18T00:01:38.962Z","2.1.0-alpha.84bd71b4":"2018-03-18T00:41:40.878Z","2.1.0-alpha.6ad61a13":"2018-03-21T17:51:13.382Z","2.1.0-alpha.5f47082e":"2018-03-23T22:49:17.716Z","2.0.57-2":"2018-03-23T23:20:30.665Z","2.0.70":"2018-03-27T22:39:49.178Z","2.0.71":"2018-03-29T02:10:51.642Z","2.1.0-alpha.95fcd4af":"2018-03-29T02:24:31.222Z","2.1.0-alpha.20252dc3":"2018-03-29T02:46:14.126Z","2.0.72":"2018-04-03T18:31:50.548Z","2.0.73":"2018-04-04T15:14:34.575Z","2.1.0-alpha.4a09f745":"2018-04-05T22:15:51.829Z","2.0.57-3":"2018-04-06T05:44:13.230Z","2.0.74":"2018-04-06T20:46:16.320Z","2.0.75":"2018-04-06T23:49:21.855Z","2.0.76":"2018-04-07T19:29:16.460Z","2.1.0-alpha.76793cd8":"2018-04-07T22:13:47.446Z","2.0.77":"2018-04-14T17:40:47.650Z","2.0.78":"2018-04-14T23:43:52.958Z","2.0.79":"2018-04-15T22:18:33.603Z","2.0.80":"2018-04-17T19:37:55.106Z","2.0.81":"2018-04-19T16:34:39.853Z","2.1.0-alpha.5c9569c0":"2018-04-19T16:58:54.815Z","2.1.0-alpha.523a4286":"2018-04-19T23:54:26.512Z","2.1.0-alpha.5421f383":"2018-04-20T06:55:01.838Z","2.1.0-alpha.e9c3027b":"2018-04-20T17:59:18.952Z","2.0.57-4":"2018-04-22T01:56:16.764Z","2.0.82":"2018-04-24T17:49:18.310Z","2.0.57-5":"2018-04-25T16:27:19.434Z","2.0.57-6":"2018-04-26T18:21:44.037Z","2.0.57-7":"2018-04-27T22:10:17.400Z","2.0.83":"2018-05-01T06:24:45.671Z","2.0.84":"2018-05-04T00:17:15.287Z","2.0.57-8":"2018-05-10T17:35:21.020Z","2.0.85":"2018-05-15T18:26:23.679Z","2.0.57-11":"2018-05-15T20:20:14.792Z","2.0.57-12":"2018-05-18T15:36:07.927Z","2.0.86":"2018-05-31T12:39:04.617Z","2.0.57-13":"2018-05-31T13:11:46.084Z","2.0.57-14":"2018-05-31T14:26:18.274Z","2.0.57-15":"2018-05-31T17:22:25.171Z","2.0.87":"2018-05-31T18:46:42.317Z","2.0.88":"2018-06-01T16:55:18.481Z","2.0.89":"2018-06-05T02:21:14.718Z","2.0.90":"2018-06-05T22:54:38.571Z","2.0.91":"2018-06-06T22:18:54.815Z","2.0.57-16":"2018-06-11T15:26:49.814Z","2.0.57-17":"2018-06-11T16:57:19.821Z","3.0.0-alpha.80a21f04":"2018-06-16T19:38:08.866Z","3.0.0-alpha.2":"2018-06-16T23:34:00.645Z","2.0.92":"2018-06-17T01:54:15.773Z","3.0.0-beta.0":"2018-06-17T06:54:22.903Z","3.0.0-beta.1":"2018-06-17T08:13:19.590Z","3.0.0-beta.2":"2018-06-20T17:16:09.589Z","3.0.0-beta.3":"2018-06-20T20:46:06.107Z","3.0.0-beta.4":"2018-06-21T11:08:33.167Z","2.0.93":"2018-06-21T18:49:36.833Z","3.0.0-beta.5":"2018-07-09T22:12:36.743Z","3.0.0-beta.6":"2018-07-13T23:57:14.078Z","3.0.0-beta.7":"2018-07-14T05:45:54.517Z","3.0.0-beta.8":"2018-07-18T14:11:41.139Z","3.0.0-beta.9":"2018-07-18T21:17:36.523Z","3.0.0-beta.10":"2018-07-19T01:31:28.853Z","3.0.0-beta.11":"2018-07-19T23:17:13.153Z","3.0.0-beta.12":"2018-07-20T13:49:26.014Z","3.0.0-beta.13":"2018-07-21T16:00:42.653Z","3.0.0-beta.14":"2018-07-24T21:32:29.670Z","3.0.0-beta.15":"2018-07-27T19:00:54.734Z","3.0.0-beta.16":"2018-07-31T14:24:32.792Z","3.0.0-beta.17":"2018-08-04T18:36:09.863Z","3.0.0-beta.18":"2018-08-08T07:53:57.706Z","3.0.0-beta.19":"2018-08-13T17:44:14.919Z","3.0.0-beta.20":"2018-08-20T19:53:02.209Z","3.0.0-beta.21":"2018-08-21T00:39:01.036Z","3.0.0-rc.0":"2018-08-21T01:00:05.591Z","3.0.0-rc.1":"2018-08-29T18:30:44.756Z","3.0.0-rc.2":"2018-09-07T22:43:54.215Z","3.0.0-rc.6":"2018-09-11T12:13:19.987Z","3.0.0-rc.7":"2018-09-12T15:27:21.633Z","3.0.0-rc.8":"2018-09-13T17:49:09.128Z","3.0.0-rc.9":"2018-09-13T21:04:47.716Z","3.0.0":"2018-09-17T20:43:40.596Z","3.0.1":"2018-09-18T10:08:22.108Z","3.0.2":"2018-10-05T23:41:22.174Z","3.0.3":"2018-10-09T19:57:57.479Z","3.0.4":"2018-10-10T00:11:29.185Z","3.0.5":"2018-10-12T19:36:59.189Z","3.0.6":"2018-10-15T20:30:20.061Z","3.0.7":"2018-10-19T02:33:22.277Z","3.0.8":"2018-10-23T12:19:20.936Z","3.0.9":"2018-10-24T17:05:47.031Z","3.0.10":"2018-10-29T15:25:13.629Z","3.0.11":"2018-11-01T15:35:34.992Z","3.0.12":"2018-11-05T20:17:40.141Z","3.0.13":"2018-11-08T01:37:26.650Z","3.0.14":"2018-11-14T20:23:46.312Z","3.0.15":"2018-11-26T14:15:24.413Z","3.0.16":"2018-11-29T12:17:43.905Z","3.0.17":"2018-12-01T22:52:44.092Z","3.0.18":"2018-12-03T22:53:01.710Z","3.0.19":"2018-12-06T16:04:15.598Z","3.0.20":"2018-12-11T11:25:58.198Z","3.0.21":"2018-12-18T15:44:49.396Z","3.0.22":"2019-01-08T18:29:36.690Z","3.0.25":"2019-01-11T19:06:30.628Z","3.0.27":"2019-01-23T16:32:45.757Z","3.0.28":"2019-01-25T10:19:24.967Z","3.0.29":"2019-01-28T13:13:07.264Z","3.0.30":"2019-01-31T18:49:31.548Z","3.0.31":"2019-02-01T12:26:08.026Z","3.0.32":"2019-02-01T19:02:50.947Z","3.0.33":"2019-02-04T23:09:57.109Z","3.0.34":"2019-02-12T12:39:50.851Z","3.0.35":"2019-02-15T18:36:16.135Z","3.0.36":"2019-02-19T18:27:20.196Z","3.0.37":"2019-02-20T19:55:10.040Z","3.0.38":"2019-02-22T13:42:28.778Z","3.0.39":"2019-02-25T06:01:31.435Z","3.0.40":"2019-02-25T06:39:25.808Z","3.0.41":"2019-02-28T11:32:25.281Z","3.0.42-alpha.0":"2019-03-04T07:14:31.391Z","3.0.42":"2019-03-04T09:43:49.815Z","3.0.43":"2019-03-05T20:25:45.272Z","3.0.44":"2019-03-11T15:26:02.919Z","3.0.45":"2019-03-13T20:55:12.510Z","3.0.46":"2019-03-14T18:47:05.884Z","3.0.47":"2019-03-15T15:58:21.257Z","3.0.48":"2019-03-19T23:48:38.732Z","3.0.49":"2019-03-22T13:36:30.029Z","3.0.50":"2019-03-27T14:04:48.886Z","3.0.51":"2019-03-28T21:12:36.537Z","3.0.52":"2019-04-05T12:28:20.651Z","3.0.53":"2019-04-08T11:06:56.101Z","3.0.54":"2019-04-15T14:37:57.309Z","3.0.55":"2019-04-23T12:30:53.263Z","3.0.56":"2019-04-23T13:37:03.541Z","3.0.57":"2019-04-24T17:08:16.171Z","3.0.58":"2019-04-30T07:05:59.616Z","3.0.59":"2019-05-14T20:03:39.132Z","3.0.60":"2019-05-15T10:53:54.403Z","3.0.61":"2019-05-16T19:29:36.486Z","3.0.62":"2019-05-20T17:47:42.863Z","3.0.63":"2019-05-31T13:56:55.582Z","3.0.64":"2019-05-31T18:23:00.626Z","3.0.65":"2019-06-10T11:09:14.538Z","3.0.66":"2019-06-18T12:41:44.946Z","3.0.67-reporter-npm.9":"2019-06-18T20:12:52.151Z","3.0.67":"2019-06-18T20:53:54.117Z","3.0.68-reporter-npm.8":"2019-06-19T08:22:14.355Z","3.0.68":"2019-06-19T09:38:38.534Z","3.0.69":"2019-06-19T10:16:28.283Z","3.1.0":"2019-06-20T13:50:51.788Z","3.1.1":"2019-06-25T08:42:43.991Z","3.1.2":"2019-06-26T08:05:28.625Z"},"tags":{"latest":"3.1.2","reporter-npm":"3.0.68-reporter-npm.8"},"description":"Gatsby source plugin for building websites using the Wordpress CMS as a data source.","dependencies":{"@babel/runtime":"^7.0.0","axios":"^0.19.0","better-queue":"^3.8.6","bluebird":"^3.5.0","deep-map":"^1.5.0","deep-map-keys":"^1.2.0","gatsby-source-filesystem":"^2.1.1","json-stringify-safe":"^5.0.1","lodash":"^4.17.10","minimatch":"^3.0.4","qs":"^6.4.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-source-wordpress","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-source-wordpress","head":"354492f68061ace43256c40c82e1fd2dafd895e2","branch":"354492f68061ace43256c40c82e1fd2dafd895e2"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-source-wordpress","head":"354492f68061ace43256c40c82e1fd2dafd895e2"},"gitHead":"354492f68061ace43256c40c82e1fd2dafd895e2","readme":"# gatsby-source-wordpress\n\nSource plugin for pulling data into [Gatsby](https://github.com/gatsbyjs) from\nWordPress sites using the\n[WordPress REST API](https://developer.wordpress.org/rest-api/reference/).\n\nAn example site for this plugin is available.\n\n- [Demo](https://using-wordpress.gatsbyjs.org/)\n- [Example site source code](https://github.com/gatsbyjs/gatsby/tree/master/examples/using-wordpress)\n\n## Features\n\n- Pulls data from self-hosted WordPress sites, or sites hosted on [WordPress.com](https://wordpress.com)\n- Should work with any number of posts (tested on a site with 900 posts)\n- Can authenticate to wordpress.com's API using OAuth 2 so media can be queried\n- Easily create responsive images in Gatsby from WordPress images. See [image\n processing](#image-processing) section.\n\n## WordPress and custom entities\n\nThis module currently pulls the following entities from WordPress:\n\n- [x] All entities are supported (posts, pages, tags, categories, media, types,\n users, statuses, taxonomies, site metadata, ...)\n- [x] Any new entity should be pulled as long as the IDs are correct.\n- [x] [ACF Entities (Advanced Custom Fields)](https://www.advancedcustomfields.com/)\n- [x] Custom Post Types (any type you could have registered and enabled in the REST API)\n- [x] Post Meta (any meta fields you could have registered and enabled in the REST API)\n\nWe welcome PRs adding support for data from other plugins.\n\nNote : If some fields are missing, check [troubleshooting missing fields](#missing-fields) section.\n\n## Install\n\n`npm install --save gatsby-source-wordpress`\n\n## How to use\n\nFirst, you need a way to pass environment variables to the build process, so secrets and other secured data aren't committed to source control. We recommend using [`dotenv`][dotenv] which will then expose environment variables. [Read more about dotenv and using environment variables here][envvars]. Then we can _use_ these environment variables and configure our plugin.\n\n```javascript\n// In your gatsby-config.js\nmodule.exports = {\n plugins: [\n /*\n * Gatsby's data processing layer begins with “source”\n * plugins. Here the site sources its data from Wordpress.\n */\n {\n resolve: \"gatsby-source-wordpress\",\n options: {\n /*\n * The base URL of the Wordpress site without the trailingslash and the protocol. This is required.\n * Example : 'gatsbyjsexamplewordpress.wordpress.com' or 'www.example-site.com'\n */\n baseUrl: \"gatsbyjsexamplewordpress.wordpress.com\",\n // The protocol. This can be http or https.\n protocol: \"http\",\n // Indicates whether the site is hosted on wordpress.com.\n // If false, then the assumption is made that the site is self hosted.\n // If true, then the plugin will source its content on wordpress.com using the JSON REST API V2.\n // If your site is hosted on wordpress.org, then set this to false.\n hostingWPCOM: false,\n // If useACF is true, then the source plugin will try to import the Wordpress ACF Plugin contents.\n // This feature is untested for sites hosted on wordpress.com.\n // Defaults to true.\n useACF: true,\n // Include specific ACF Option Pages that have a set post ID\n // Regardless if an ID is set, the default options route will still be retrieved\n // Must be using V3 of ACF to REST to include these routes\n // Example: `[\"option_page_1\", \"option_page_2\"]` will include the proper ACF option\n // routes with the ID option_page_1 and option_page_2\n // The IDs provided to this array should correspond to the `post_id` value when defining your\n // options page using the provided `acf_add_options_page` method, in your WordPress setup\n // Dashes in IDs will be converted to underscores for use in GraphQL\n acfOptionPageIds: [],\n auth: {\n // If auth.user and auth.pass are filled, then the source plugin will be allowed\n // to access endpoints that are protected with .htaccess.\n htaccess_user: \"your-htaccess-username\",\n htaccess_pass: \"your-htaccess-password\",\n htaccess_sendImmediately: false,\n\n // If hostingWPCOM is true then you will need to communicate with wordpress.com API\n // in order to do that you need to create an app (of type Web) at https://developer.wordpress.com/apps/\n // then add your clientId, clientSecret, username, and password here\n // Learn about environment variables: https://www.gatsbyjs.org/docs/environment-variables\n // If two-factor authentication is enabled then you need to create an Application-Specific Password,\n // see https://en.support.wordpress.com/security/two-step-authentication/#application-specific-passwords\n wpcom_app_clientSecret: process.env.WORDPRESS_CLIENT_SECRET,\n wpcom_app_clientId: \"54793\",\n wpcom_user: \"gatsbyjswpexample@gmail.com\",\n wpcom_pass: process.env.WORDPRESS_PASSWORD,\n\n // If you use \"JWT Authentication for WP REST API\" (https://wordpress.org/plugins/jwt-authentication-for-wp-rest-api/)\n // or (https://github.com/jonathan-dejong/simple-jwt-authentication) requires jwt_base_path, path can be found in wordpress wp-api.\n // plugin, you can specify user and password to obtain access token and use authenticated requests against wordpress REST API.\n jwt_user: process.env.JWT_USER,\n jwt_pass: process.env.JWT_PASSWORD,\n jwt_base_path: \"/jwt-auth/v1/token\", // Default - can skip if you are using https://wordpress.org/plugins/jwt-authentication-for-wp-rest-api/\n },\n // Set verboseOutput to true to display a verbose output on `npm run develop` or `npm run build`\n // It can help you debug specific API Endpoints problems.\n verboseOutput: false,\n // Set how many pages are retrieved per API request.\n perPage: 100,\n // Search and Replace Urls across WordPress content.\n searchAndReplaceContentUrls: {\n sourceUrl: \"https://source-url.com\",\n replacementUrl: \"https://replacement-url.com\",\n },\n // Set how many simultaneous requests are sent at once.\n concurrentRequests: 10,\n // Set WP REST API routes whitelists\n // and blacklists using glob patterns.\n // Defaults to whitelist the routes shown\n // in the example below.\n // See: https://github.com/isaacs/minimatch\n // Example: `[\"/*/*/comments\", \"/yoast/**\"]`\n // ` will either include or exclude routes ending in `comments` and\n // all routes that begin with `yoast` from fetch.\n // Whitelisted routes using glob patterns\n includedRoutes: [\n \"**/categories\",\n \"**/posts\",\n \"**/pages\",\n \"**/media\",\n \"**/tags\",\n \"**/taxonomies\",\n \"**/users\",\n ],\n // Blacklisted routes using glob patterns\n excludedRoutes: [\"**/posts/1456\"],\n // use a custom normalizer which is applied after the built-in ones.\n normalizer: function({ entities }) {\n return entities\n },\n },\n },\n ],\n}\n```\n\n## WordPress Plugins\n\nThese plugins were tested. We welcome PRs adding support for data from other\nplugins.\n\n- [x] Custom Post Types : it will work seamlessly, no further option needs to be\n activated. (\"Show in REST API\" setting needs to be set to true on the\n custom post in the plugin settings for this to work. It's set to \"false\"\n by default.)\n\n- [x] [ACF](https://www.advancedcustomfields.com/) The option `useACF: true`\n must be activated in your site's `gatsby-config.js`.\n\n - You must have the plugin\n [acf-to-rest-api](https://github.com/airesvsg/acf-to-rest-api) installed in\n WordPress.\n - Will pull the `acf: { ... }` fields's contents from any entity which has it\n attached (pages, posts, medias, ... you choose from in WordPress backend\n while creating a Group of Fields).\n - [ACF Pro](https://www.advancedcustomfields.com/pro/) same as ACF :\n - Will work with\n [Flexible content](https://www.advancedcustomfields.com/resources/flexible-content/)\n and premium stuff like that (repeater, gallery, ...).\n - Will pull the content attached to the\n [options page](https://www.advancedcustomfields.com/add-ons/options-page/).\n\n- [x] [WP-API-MENUS](https://wordpress.org/plugins/wp-api-menus/) which gives\n you the menus and menu locations endpoint.\n\n- [x] [WPML-REST-API](https://github.com/shawnhooper/wpml-rest-api) which adds\n the current locale and available translations to all post types translated with WPML.\n\n- [x] [wp-rest-polylang](https://github.com/maru3l/wp-rest-polylang) which adds\n the current locale and available translations to all post types translated with Polylang.\n\n- [x] [Yoast](https://yoast.com/wordpress/plugins/seo/)\n - You must have the plugin [wp-api-yoast-meta](https://github.com/maru3l/wp-api-yoast-meta) installed in wordpress.\n - Will pull the `yoast_meta: { ... }` field's contents in entity.\n - Work with Yoast premium :\n - Will create Yoast redirects model base on Yoast redirect\n\n## How to use Gatsby with Wordpress.com hosting\n\nSet `hostingWPCOM: true`.\n\nYou will need to provide an [API Key](https://en.support.wordpress.com/api-keys/).\n\nNote : you don't need this for Wordpress.org hosting in which your WordPress\nwill behave like a self-hosted instance.\n\n## Test your WordPress API\n\nBefore you run your first query, ensure the WordPress JSON API is working correctly by visiting /wp-json at your WordPress install. The result should be similar to the [WordPress demo API](https://demo.wp-api.org/wp-json/).\n\nIf you see a page on your site, rather than the JSON output, check if your permalink settings are set to “Plain”. After changing this to any of the other settings, the JSON API should be accessible.\n\n## Fetching Data: WordPress REST API Route Selection\n\nBy default `gatsby-source-wordpress` plugin will fetch data from all endpoints provided by introspection `/wp-json` response. To customize the routes fetched, two configuration options are available: `includeRoutes` for whitelisting and `excludeRoutes` for blacklisting. Both options expect an array of glob patterns. Glob matching is done by [minimatch](https://github.com/isaacs/minimatch). To test your glob patterns, [use this tool](http://pthrasher.github.io/minimatch-test/). You can inspect discovered routes by using `verboseOutput: true` configuration option.\n\nIf an endpoint is whitelisted and not blacklisted, it will be fetched. Otherwise, it will be ignored.\n\n### Example:\n\n```javascript\nincludedRoutes: [\n \"**/posts\",\n \"**/pages\",\n \"**/media\",\n \"**/categories\",\n \"**/tags\",\n \"**/taxonomies\",\n \"**/users\",\n],\n```\n\nWhich would include most commonly used endpoints:\n\n- Posts\n- Pages\n- Media\n- Categories\n- Tags\n- Taxonomies\n- Users\n\nand would skip pulling Comments.\n\n## How to query\n\nYou can query nodes created from Wordpress using GraphQL like the following:\nNote : Learn to use the GraphQL tool and Ctrl+Spacebar at\n<http://localhost:3000/___graphiql> to discover the types and properties of your\nGraphQL model.\n\n### Query posts\n\n```graphql\n{\n allWordpressPost {\n edges {\n node {\n id\n slug\n title\n content\n excerpt\n date\n modified\n }\n }\n }\n}\n```\n\n### Query pages\n\n```graphql\n{\n allWordpressPage {\n edges {\n node {\n id\n title\n content\n excerpt\n date\n modified\n slug\n status\n }\n }\n }\n}\n```\n\nSame thing for other type of entity (tag, media, categories, ...).\n\n### Query any other entity\n\nIn the following example, `${Manufacturer}` will be replaced by the endpoint\nprefix and `${Endpoint}` by the name of the endpoint.\n\nTo know what's what, check the URL of the endpoint. You can set `verboseOutput: true` in order to get more information of what's executed by the source plugin\nbehind the scene.\n\nFor example the following URL:\n`http://my-blog.wordpress.com/wp-json/acf/v2/options`\n\n- Manufacturer : `acf`\n- Endpoint : `options`\n- Final GraphQL Type : AllWordpressAcfOptions\n\nFor example the following URL:\n`http://my-blog.wordpress.com/wp-api-menus/v2/menu-locations`\n\n- Manufacturer : `wpapimenus`\n- Endpoint : `menulocations`\n- Final GraphQL Type : AllWordpressWpApiMenusMenuLocations\n\n```graphql\n{\n allWordpress${Manufacturer}${Endpoint} {\n edges {\n node {\n id\n type\n // Put your fields here\n }\n }\n }\n}\n```\n\n### Query ACF Options\n\nWhether you are using V2 or V3 of ACF to REST, the query below will return `options` as the default ACF Options page data.\n\nIf you have specified `acfOptionPageIds` in your site's `gatsby-config.js` (ex: `option_page_1`), then they will be accessible by their ID:\n\n```\n{\n allWordpressAcfOptions {\n edges {\n node{\n option_page_1 {\n test_acf\n }\n options {\n test_acf\n }\n }\n }\n }\n}\n```\n\n### Query posts with the child ACF Fields Node\n\nMention the apparition of `childWordpressAcfField` in the query below :\n\n```graphql\n{\n allWordpressPost {\n edges {\n node {\n id\n slug\n title\n content\n excerpt\n date\n modified\n author\n featured_media\n template\n categories\n tags\n acf {\n // use ___GraphiQL debugger and Ctrl+Spacebar to describe your model.\n }\n }\n }\n }\n}\n```\n\n### Query pages with the child ACF Fields Node\n\nMention the apparition of `childWordpressAcfField` in the query below :\n\n```graphql\n{\n allWordpressPage {\n edges {\n node {\n id\n title\n content\n excerpt\n date\n modified\n slug\n author\n featured_media\n template\n acf {\n // use ___GraphiQL debugger and Ctrl+Spacebar to describe your model.\n }\n }\n }\n }\n}\n```\n\n### Query with ACF Flexible Content\n\nACF Flexible Content returns an array of objects with different types and are\nhandled differently than other fields.\n\nTo access those fields, instead of using their field name, you need to use\n`[field_name]_[post_type]` (if you have field named `page_builder` in\nyour WordPress pages you would need to use `page_builder_page`).\n\nTo access data stored in these fields, you need to use GraphQL\n[inline fragments](http://graphql.org/learn/queries/#inline-fragments). This\nrequire you to know types of nodes. The easiest way to get the types of nodes is to use\n`___GraphiQL` debugger and run the below query (adjust post type and field name):\n\n```graphQL\n{\n allWordpressPage {\n edges {\n node {\n title\n acf {\n page_builder_page {\n __typename\n }\n }\n }\n }\n }\n}\n```\n\nWhen you have node type names, you can use them to create inline fragments.\n\nFull example:\n\n```graphQL\n{\n allWordpressPage {\n edges {\n node {\n title\n acf {\n page_builder_page {\n __typename\n ... on WordPressAcf_hero {\n title\n subtitle\n }\n ... on WordpressAcf_text {\n text\n }\n ... on WordpressAcf_image {\n image {\n localFile {\n childImageSharp {\n fluid(maxWidth: 800) {\n ...GatsbyImageSharpFluid_withWebp\n }\n }\n }\n }\n }\n }\n }\n }\n }\n }\n}\n```\n\n### Query posts with the WPML Fields Node\n\n```graphql\n{\n allWordpressPost {\n edges {\n node {\n id\n slug\n title\n content\n excerpt\n date\n modified\n author\n featured_media\n template\n categories\n tags\n wpml_current_locale\n wpml_translations {\n locale\n wordpress_id\n post_title\n href\n }\n }\n }\n }\n}\n```\n\n### Query pages with the WPML Fields Node\n\n```graphql\n{\n allWordpressPage {\n edges {\n node {\n id\n title\n content\n excerpt\n date\n modified\n slug\n author\n featured_media\n template\n wpml_current_locale\n wpml_translations {\n locale\n wordpress_id\n post_title\n href\n }\n }\n }\n }\n}\n```\n\n### Query posts with the Polylang Fields Node\n\n```graphql\n{\n allWordpressPost {\n edges {\n node {\n id\n slug\n title\n content\n excerpt\n date\n modified\n author\n featured_media\n template\n categories\n tags\n polylang_current_lang\n polylang_translations {\n id\n slug\n title\n content\n excerpt\n date\n modified\n author\n featured_media\n template\n categories\n tags\n polylang_current_lang\n }\n }\n }\n }\n}\n```\n\n### Query pages with the Polylang Fields Node\n\n```graphql\n{\n allWordpressPage {\n edges {\n node {\n id\n title\n content\n excerpt\n date\n modified\n slug\n author\n featured_media\n template\n polylang_current_lang\n polylang_translations {\n id\n title\n content\n excerpt\n date\n modified\n slug\n author\n featured_media\n template\n polylang_current_lang\n }\n }\n }\n }\n}\n```\n\n### Query pages with the Yoast Fields Node\n\n```graphql\n{\n allWordpressPage {\n edges {\n node {\n yoast_meta {\n yoast_wpseo_title\n yoast_wpseo_metadesc\n yoast_wpseo_canonical\n yoast_wpseo_facebook_title\n yoast_wpseo_facebook_description\n yoast_wpseo_facebook_type\n yoast_wpseo_facebook_image\n yoast_wpseo_twitter_title\n yoast_wpseo_twitter_description\n yoast_wpseo_twitter_image\n yoast_wpseo_social_url\n yoast_wpseo_company_or_person\n yoast_wpseo_person_name\n yoast_wpseo_company_name\n yoast_wpseo_company_logo\n yoast_wpseo_website_name\n }\n }\n }\n }\n}\n```\n\n### Query Yoast Redirects\n\n**_only work with Yoast Premium_**\n\n```graphql\n{\n allWordpressYoastRedirects {\n edges {\n node {\n origin\n url\n type\n format\n }\n }\n }\n}\n```\n\n## Image processing\n\nTo use image processing you need `gatsby-transformer-sharp`, `gatsby-plugin-sharp` and their\ndependencies `gatsby-image` and `gatsby-source-filesystem` in your `gatsby-config.js`.\n\nYou can apply image processing to:\n\n- featured images (also known as post thumbnails),\n- ACF fields:\n - Image field type (return value must be set to `Image Object` or `Image URL` or field name must be `featured_media`),\n - Gallery field type.\n\nImage processing of inline images added in wordpress WYSIWIG editor is\ncurrently not supported.\n\nTo access image processing in your queries you need to use this pattern:\n\n```\n{\n imageFieldName {\n localFile {\n childImageSharp {\n ...ImageFragment\n }\n }\n }\n}\n```\n\nFull example:\n\n```graphql\n{\n allWordpressPost {\n edges {\n node {\n title\n featured_media {\n localFile {\n childImageSharp {\n fixed(width: 500, height: 300) {\n ...GatsbyImageSharpFixed_withWebp\n }\n }\n }\n }\n acf {\n image {\n localFile {\n childImageSharp {\n fluid(maxWidth: 500) {\n ...GatsbyImageSharpFluid_withWebp\n }\n }\n }\n }\n gallery {\n localFile {\n childImageSharp {\n resize(width: 180, height: 180) {\n src\n }\n }\n }\n }\n }\n }\n }\n }\n}\n```\n\nTo learn more about image processing check\n\n- documentation of [gatsby-plugin-sharp](/packages/gatsby-plugin-sharp/),\n- source code of [image processing example\n site](https://github.com/gatsbyjs/gatsby/tree/master/examples/image-processing).\n\n## Using a custom normalizer\n\nThe plugin uses the concept of normalizers to transform the json data from WordPress into\nGraphQL nodes. You can extend the normalizers by passing a custom function to your `gatsby-config.js`.\n\n### Example:\n\nYou have a custom post type `movie` and a related custom taxonomy `genre` in your WordPress site. Since\n`gatsby-source-wordpress` doesn't know about the relation of the two, we can build an additional normalizer function to map the movie GraphQL nodes to the genre nodes:\n\n```javascript\nfunction mapMoviesToGenres({ entities }) {\n const genres = entities.filter(e => e.__type === `wordpress__wp_genre`)\n\n return entities.map(e => {\n if (e.__type === `wordpress__wp_movie`) {\n let hasGenres = e.genres && Array.isArray(e.genres) && e.genres.length\n // Replace genres with links to their nodes.\n if (hasGenres) {\n e.genres___NODE = e.genres.map(\n c => genres.find(gObj => c === gObj.wordpress_id).id\n )\n delete e.genres\n }\n }\n return e\n })\n}\n```\n\nIn your `gatsby-config.js` you can then pass the function to the plugin options:\n\n```javascript\nmodule.exports = {\n plugins: [\n {\n resolve: \"gatsby-source-wordpress\",\n options: {\n // ...\n normalizer: mapMoviesToGenres,\n },\n },\n ],\n}\n```\n\nNext to the entities, the object passed to the custom normalizer function also contains other helpful Gatsby functions\nand also your `wordpress-source-plugin` options from `gatsby-config.js`. To learn more about the passed object see the [source code](https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-source-wordpress/src/gatsby-node.js).\n\n## Site's `gatsby-node.js` example\n\n```javascript\nconst path = require(`path`)\nconst slash = require(`slash`)\n\n// Implement the Gatsby API “createPages”. This is\n// called after the Gatsby bootstrap is finished so you have\n// access to any information necessary to programmatically\n// create pages.\n// Will create pages for WordPress pages (route : /{slug})\n// Will create pages for WordPress posts (route : /post/{slug})\nexports.createPages = async ({ graphql, actions }) => {\n const { createPage } = actions\n\n // The “graphql” function allows us to run arbitrary\n // queries against the local Gatsby GraphQL schema. Think of\n // it like the site has a built-in database constructed\n // from the fetched data that you can run queries against.\n const result = await graphql(`\n {\n allWordpressPage {\n edges {\n node {\n id\n path\n status\n template\n }\n }\n }\n allWordpressPost {\n edges {\n node {\n id\n path\n status\n template\n format\n }\n }\n }\n }\n `)\n\n // Check for any errors\n if (result.errors) {\n throw new Error(result.errors)\n }\n\n // Access query results via object destructuring\n const { allWordpressPage, allWordpressPost } = result.data\n\n // Create Page pages.\n const pageTemplate = path.resolve(`./src/templates/page.js`)\n // We want to create a detailed page for each page node.\n // The path field contains the relative original WordPress link\n // and we use it for the slug to preserve url structure.\n // The Page ID is prefixed with 'PAGE_'\n allWordpressPage.edges.forEach(edge => {\n // Gatsby uses Redux to manage its internal state.\n // Plugins and sites can use functions like \"createPage\"\n // to interact with Gatsby.\n createPage({\n // Each page is required to have a `path` as well\n // as a template component. The `context` is\n // optional but is often necessary so the template\n // can query data specific to each page.\n path: edge.node.path,\n component: slash(pageTemplate),\n context: {\n id: edge.node.id,\n },\n })\n })\n\n const postTemplate = path.resolve(`./src/templates/post.js`)\n // We want to create a detailed page for each post node.\n // The path field stems from the original WordPress link\n // and we use it for the slug to preserve url structure.\n // The Post ID is prefixed with 'POST_'\n allWordpressPost.edges.forEach(edge => {\n createPage({\n path: edge.node.path,\n component: slash(postTemplate),\n context: {\n id: edge.node.id,\n },\n })\n })\n}\n```\n\n## Troubleshooting\n\n### Missing Fields\n\nIf you have custom post types or metadata that are not showing up within the schema, make sure that they are enabled within the REST API.\n\n- **Custom Meta**\n\n To retrieve custom post meta in your queries, they first must be registered using WordPress' `register_meta()` function with `show_in_rest` set as `true`. You will then see your registered post meta in your Gatsby GraphQL Schema nested within the `meta` field for associated entities. For more details, see https://developer.wordpress.org/reference/functions/register_meta/.\n\n- **Custom Post Types**\n\n If you are programmatically registering post types with `register_post_type()` and would like to use them in your queries, make sure to have `show_in_rest` set as `true`. Otherwise if you are using a plugin such as CPT UI to register your custom post types, check your configurations to make sure that the post types you want to query are enabled to show in REST API.\n\n### GraphQL Error - Unknown Field on ACF\n\nACF returns `false` in cases where there is no data to be returned. This can cause conflicting data types in GraphQL and often leads to the error: `GraphQL Error Unknown field {field} on type {type}`.\n\nTo solve this, you can use the [acf/format_value filter](https://www.advancedcustomfields.com/resources/acf-format_value/). There are 2 possible ways to use this:\n\n- `acf/format_value` – filter for every field\n- `acf/format_value/type={$field_type}` – filter for a specific field based on it’s type\n\nUsing the following function, you can check for an empty field and if it's empty return `null`.\n\n```php\nif (!function_exists('acf_nullify_empty')) {\n /**\n * Return `null` if an empty value is returned from ACF.\n *\n * @param mixed $value\n * @param mixed $post_id\n * @param array $field\n *\n * @return mixed\n */\n function acf_nullify_empty($value, $post_id, $field) {\n if (empty($value)) {\n return null;\n }\n return $value;\n }\n}\n```\n\nYou can then apply this function to all ACF fields using the following code snippet:\n\n```php\nadd_filter('acf/format_value', 'acf_nullify_empty', 100, 3);\n```\n\nOr if you would prefer to target specific fields, you can use the `acf/format_value/type={$field_type}` filter. Here are some examples:\n\n```php\nadd_filter('acf/format_value/type=image', 'acf_nullify_empty', 100, 3);\nadd_filter('acf/format_value/type=gallery', 'acf_nullify_empty', 100, 3);\nadd_filter('acf/format_value/type=repeater', 'acf_nullify_empty', 100, 3);\n```\n\nThis code should be added as a plugin (recommended), or within the `functions.php` of a theme.\n\n### GraphQL Error - Unknown field `localFile` on type `[image field]`\n\nWordPress has a [known issue](https://core.trac.wordpress.org/ticket/41445) that can affect how media objects are returned through the REST API.\n\nDuring the upload process to the WordPress media library, the `post_parent` value ([seen here in the wp_posts table](https://codex.wordpress.org/Database_Description#Table:_wp_posts)) is set to the ID of the post the image is attached to. This value is unable to be changed by any WordPress administration actions.\n\nWhen the post an image is attached to becomes inaccessible (e.g. from changing visibility settings, or deleting the post), the image itself is restricted in the REST API:\n\n```\n {\n \"code\":\"rest_forbidden\",\n \"message\":\"You don't have permission to do this.\",\n \"data\":{\n \"status\":403\n }\n }\n```\n\nwhich prevents Gatsby from retrieving it.\n\nIn order to resolve this, you can manually change the `post_parent` value of the image record to `0` in the database. The only side effect of this change is that the image will no longer appear in the \"Uploaded to this post\" filter in the Add Media dialog in the WordPress administration area.\n\n### ACF Option Pages - Option page data not showing or not updating\n\nThis issue occurs when you are trying to pull in data from your ACF Option pages. On certain occasions (initial setup or rebuilding) the data will not appear or won't update to the latest data.\n\nTo resolve this issue, make sure that your ids in the `acfOptionPageIds` array, in the plugin config, corresponds to the `post_id` value when defining your Options page with the `acf_add_options_page` method provided by ACF.\n\n### Self-signed certificates\n\nWhen running locally, or in other situations that may involve self-signed certificates, you may run into the error: `The request failed with error code \"DEPTH_ZERO_SELF_SIGNED_CERT\"`.\n\nTo solve this, you can disable Node.js' rejection of unauthorized certificates by adding the following to `.env.development`:\n\n```\nNODE_TLS_REJECT_UNAUTHORIZED=0\n```\n\nPlease note that you need to add `dotenv`, as mentioned earlier, to expose environment variables in your gatsby-config.js or gatsby-node.js files.\n\n**CAUTION:** This should never be set in production. Always ensure that you disable `NODE_TLS_REJECT_UNAUTHORIZED` in development with `gatsby develop` only.\n\n[dotenv]: https://github.com/motdotla/dotenv\n[envvars]: https://www.gatsbyjs.org/docs/environment-variables\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","gatsby-source-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1498858151736,"modified":1561536331613,"lastPublisher":{"name":"pieh","email":"misiek.piechowiak@gmail.com","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"fichot.sebastien+publicnpm@gmail.com","name":"sebastienfichot","avatar":"https://gravatar.com/avatar/33d261ca47ae81df259822e65613ce91","link":"https://www.npmjs.com/~sebastienfichot"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-26T08:05:35.585Z","_searchInternal":{"concatenatedName":"gatsbysourcewordpress","alternativeNames":["gatsbysourcewordpress","gatsby source wordpress","gatsby-source-wordpress"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-source-wordpress/CHANGELOG.md","jsDelivrHits":0,"objectID":"gatsby-source-wordpress","_highlightResult":{"name":{"value":"gatsby-source-wordpress","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby source plugin for building websites using the Wordpress CMS as a data source.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"gatsby-source-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sebastienfichot","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbysourcewordpress","matchLevel":"none","matchedWords":[]},{"value":"gatsby source wordpress","matchLevel":"none","matchedWords":[]},{"value":"gatsby-source-wordpress","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-polyfill-io","downloadsLast30Days":29223,"downloadsRatio":0.00006403090592258378,"humanDownloadsLast30Days":"29.2k","popular":false,"version":"1.1.0","versions":{"1.0.2":"2018-05-29T15:30:43.962Z","1.0.3":"2018-05-29T15:51:42.569Z","1.0.4":"2018-08-20T13:12:09.920Z","1.0.5":"2018-09-07T18:30:54.071Z","1.1.0":"2019-03-06T16:06:45.898Z"},"tags":{"latest":"1.1.0"},"description":"A Gatsby plugin to polyfill your site with [Polyfill.io](https://polyfill.io/v2/docs/).","dependencies":{"babel-runtime":"^6.26.0"},"devDependencies":{"esca-scripts":"^0.14.3","opn-cli":"^3.1.0"},"repository":{"url":"https://github.com/escaladesports/gatsby-plugin-polyfill-io","project":"gatsby-plugin-polyfill-io","user":"escaladesports","host":"github.com","path":"","head":"51d2edf6c3f15ab1d38ab8bd7e6fed960ba30330","branch":"51d2edf6c3f15ab1d38ab8bd7e6fed960ba30330"},"githubRepo":{"user":"escaladesports","project":"gatsby-plugin-polyfill-io","path":"","head":"51d2edf6c3f15ab1d38ab8bd7e6fed960ba30330"},"gitHead":"51d2edf6c3f15ab1d38ab8bd7e6fed960ba30330","readme":"# gatsby-plugin-polyfill-io\n\nA Gatsby plugin to polyfill your site with [Polyfill.io](https://polyfill.io/v2/docs/).\n\n## Installation\n\nWith npm:\n\n```bash\nnpm install --save gatsby-plugin-polyfill-io\n```\n\nOr with Yarn:\n\n```bash\nyarn add gatsby-plugin-polyfill-io\n```\n\n## Implementation\n\n```javascript\n// In your gatsby-config.js\nplugins: [`gatsby-plugin-polyfill-io`]\n```\n\n## Options\n\nTo include [Polyfill.io options](https://polyfill.io/v2/docs/api):\n\n```javascript\nplugins: [\n {\n resolve: `gatsby-plugin-polyfill-io`,\n options: {\n features: [`Array.prototype.map`, `fetch`]\n },\n },\n]\n```","owner":{"name":"escaladesports","avatar":"https://github.com/escaladesports.png","link":"https://github.com/escaladesports"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby-plugin","gatsby","plugin","polyfill","polyfill.io"],"computedKeywords":[],"computedMetadata":{},"created":1527607843915,"modified":1558723572021,"lastPublisher":{"name":"ken85rose","email":"kennedy@kennedyrose.com","avatar":"https://gravatar.com/avatar/0dec49a05d40eddd3827688a1ad9680b","link":"https://www.npmjs.com/~ken85rose"},"owners":[{"email":"taustin@escaladesports.com","name":"tbaustin","avatar":"https://gravatar.com/avatar/85eeb95dc41f452aec4688d57e820929","link":"https://www.npmjs.com/~tbaustin"},{"email":"kennedy@kennedyrose.com","name":"ken85rose","avatar":"https://gravatar.com/avatar/0dec49a05d40eddd3827688a1ad9680b","link":"https://www.npmjs.com/~ken85rose"}],"lastCrawl":"2019-06-24T10:15:06.692Z","_searchInternal":{"concatenatedName":"gatsbypluginpolyfillio","alternativeNames":["gatsbypluginpolyfillio","gatsby plugin polyfill io","gatsby-plugin-polyfill-io"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":0,"objectID":"gatsby-plugin-polyfill-io","_highlightResult":{"name":{"value":"gatsby-plugin-polyfill-io","matchLevel":"none","matchedWords":[]},"description":{"value":"A Gatsby plugin to polyfill your site with [Polyfill.io](https://polyfill.io/v2/docs/).","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"escaladesports","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"plugin","matchLevel":"none","matchedWords":[]},{"value":"polyfill","matchLevel":"none","matchedWords":[]},{"value":"polyfill.io","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"tbaustin","matchLevel":"none","matchedWords":[]}},{"name":{"value":"ken85rose","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginpolyfillio","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin polyfill io","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-polyfill-io","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-eslint","downloadsLast30Days":27261,"downloadsRatio":0.00005973194149661419,"humanDownloadsLast30Days":"27.3k","popular":false,"version":"2.0.5","versions":{"1.0.0":"2018-04-23T05:03:48.107Z","1.0.2":"2018-04-23T05:25:35.899Z","1.0.3":"2018-04-25T22:39:19.323Z","2.0.0":"2018-08-16T02:26:54.711Z","2.0.1":"2018-08-16T02:28:53.364Z","2.0.2":"2019-01-14T01:09:16.129Z","2.0.3":"2019-01-14T05:11:47.697Z","2.0.4":"2019-01-28T05:46:59.093Z","2.0.5":"2019-04-28T15:54:21.914Z"},"tags":{"latest":"2.0.5"},"description":"Gatsby plugin to add support for ESLint","dependencies":{},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-es2015":"^6.24.1","babel-runtime":"^6.26.0","concurrently":"^3.6.1","onchange":"^4.1.0","prettier":"^1.14.2"},"repository":{"url":"https://github.com/mongkuen/gatsby-plugin-eslint","project":"gatsby-plugin-eslint","user":"mongkuen","host":"github.com","path":"","head":"b90009c5f012d90cbf784ecbf04b7c6ca0f6270f","branch":"b90009c5f012d90cbf784ecbf04b7c6ca0f6270f"},"githubRepo":{"user":"mongkuen","project":"gatsby-plugin-eslint","path":"","head":"b90009c5f012d90cbf784ecbf04b7c6ca0f6270f"},"gitHead":"b90009c5f012d90cbf784ecbf04b7c6ca0f6270f","readme":"# gatsby-plugin-eslint\n\nAdds ESLint to your Gatsby dev environment, maintaining code quality as you develop.\n\n**NOTE:** Plugin has different installation and usage instructions to support both Gatsby V1 and V2.\n\n## Install\n### Gatsby V2 Instructions\n\n1. Install the `gatsby-plugin-eslint` plugin:\n\n `npm install --save-dev gatsby-plugin-eslint`\n\n or\n\n `yarn add --dev gatsby-plugin-eslint`\n\n2. Install [ESLint](https://eslint.org/) and [`eslint-loader`](https://github.com/webpack-contrib/eslint-loader):\n\n `npm install --save-dev eslint eslint-loader`\n\n or\n\n `yarn add --dev eslint eslint-loader`\n\n### Gatsby V1 Instructions\n1. Install the `gatsby-plugin-eslint` plugin:\n\n `npm install --save-dev gatsby-plugin-eslint@^1.0.3`\n\n or\n\n `yarn add --dev gatsby-plugin-eslint@^1.0.3`\n\n2. Install [ESLint](https://eslint.org/) and [`eslint-loader`](https://github.com/webpack-contrib/eslint-loader):\n\n `npm install --save-dev eslint eslint-loader`\n\n or\n\n `yarn add --dev eslint eslint-loader`\n\n## Usage\n\n1. Create a `.eslintrc` file in your project root. Otherwise ESLint will complain.\n\n2. Add into `gatsby-config.js`.\n\n```javascript\n// gatsby-config.js\n\nmodule.exports = {\n plugins: [\n 'gatsby-plugin-eslint'\n ]\n}\n```\n\nIf no options are specified, the plugin defaults to:\n\n1. Lint `.js` and `.jsx` files.\n2. Exclude `node_modules`, `.cache`, and `public` folders from linting.\n3. Only lints in development in the `'develop'` stage. You may enable linting during other build/dev stages by adding any [Webpack Config Stage](https://www.gatsbyjs.org/docs/production-app/#webpack-config) into the `stages` array. For example, adding `'build-javascript'` into the `stages` array will enable linting during JS build time.\n4. Default [ESLint-Loader](https://github.com/webpack-contrib/eslint-loader#options) options.\n\nYou can specify your own linting filetypes, exclusions, and [ESLint-Loader options](https://github.com/webpack-contrib/eslint-loader#options):\n\n```javascript\n// gatsby-config.js\nmodule.exports = {\n plugins: [\n {\n resolve: 'gatsby-plugin-eslint',\n options: {\n test: /\\.js$|\\.jsx$/,\n exclude: /(node_modules|.cache|public)/,\n stages: ['develop'],\n options: {\n emitWarning: true,\n failOnError: false\n }\n }\n }\n ]\n}\n```\n\n## Configuring ESLint\n\nYou're free to install your own ESLint plugins and rules. Here are 2 easy ways to start linting:\n\n### Basic [`eslint-plugin-react`](https://github.com/yannickcr/eslint-plugin-react) Linting\n\n1. Follow [`eslint-plugin-react`](https://github.com/yannickcr/eslint-plugin-react) plugin installation procedures:\n\n `npm install --save-dev babel-eslint eslint-plugin-import eslint-plugin-react`\n\n or\n\n `yarn add --dev babel-eslint eslint-plugin-import eslint-plugin-react`\n\n2. Add `.eslintrc` file to project root:\n\n ```javascript\n {\n \"parser\": \"babel-eslint\",\n \"rules\": {\n \"strict\": 0\n },\n \"extends\": [\n \"eslint:recommended\",\n \"plugin:react/recommended\"\n ]\n }\n ```\n\n### AirBnB's [`eslint-config-airbnb`](https://www.npmjs.com/package/eslint-config-airbnb) Linting\n\n1. Follow [`eslint-config-airbnb`](https://www.npmjs.com/package/eslint-config-airbnb) plugin installation procedures:\n\n `npm install --save-dev eslint-config-airbnb eslint-plugin-import eslint-plugin-jsx-a11y eslint-plugin-react`\n\n or\n\n `yarn add --dev eslint-config-airbnb eslint-plugin-import eslint-plugin-jsx-a11y eslint-plugin-react`\n\n2. Add `.eslintrc` file to project root:\n\n ```javascript\n {\n \"extends\": \"airbnb\"\n }\n ```\n","owner":{"name":"mongkuen","avatar":"https://github.com/mongkuen.png","link":"https://github.com/mongkuen"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","eslint"],"computedKeywords":[],"computedMetadata":{},"created":1524459826183,"modified":1556466864729,"lastPublisher":{"name":"mongkuen","email":"mongkuen.sun@gmail.com","avatar":"https://gravatar.com/avatar/6265f40828cde9c50f569217ebabe0a9","link":"https://www.npmjs.com/~mongkuen"},"owners":[{"name":"mongkuen","email":"mongkuen.sun@gmail.com","avatar":"https://gravatar.com/avatar/6265f40828cde9c50f569217ebabe0a9","link":"https://www.npmjs.com/~mongkuen"}],"lastCrawl":"2019-06-24T10:14:55.699Z","_searchInternal":{"concatenatedName":"gatsbyplugineslint","alternativeNames":["gatsbyplugineslint","gatsby plugin eslint","gatsby-plugin-eslint"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":0,"objectID":"gatsby-plugin-eslint","_highlightResult":{"name":{"value":"gatsby-plugin-eslint","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin to add support for ESLint","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"mongkuen","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"eslint","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"mongkuen","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyplugineslint","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin eslint","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-eslint","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-transformer-yaml","downloadsLast30Days":27071,"downloadsRatio":0.00005931562995689236,"humanDownloadsLast30Days":"27.1k","popular":false,"version":"2.2.0","versions":{"1.0.0-alpha12-alpha.51e1923f":"2017-04-18T18:41:32.439Z","1.0.0-alpha12-alpha.571b4bbd":"2017-04-19T00:37:18.765Z","1.0.0-alpha12-alpha.c0bba969":"2017-04-19T20:36:15.722Z","1.0.0-alpha12-alpha.89d880ee":"2017-04-21T00:30:46.237Z","1.0.0-alpha12-alpha.b66dd8d3":"2017-04-21T00:37:35.964Z","1.0.0-alpha12-alpha.577b9e82":"2017-04-22T00:34:46.770Z","1.0.0-alpha12-alpha.8370739a":"2017-04-23T03:15:48.603Z","1.0.0-alpha13":"2017-04-24T22:09:23.722Z","1.0.0-alpha13-alpha.c6e3cbb2":"2017-04-26T19:36:59.300Z","1.0.0-alpha13-alpha.91dbde54":"2017-04-26T21:08:54.494Z","1.0.0-alpha13-alpha.ec011f40":"2017-04-27T00:58:11.658Z","1.0.0-alpha13-alpha.537d11c6":"2017-04-27T04:11:31.709Z","1.0.0-alpha13-alpha.0189ea42":"2017-04-28T22:29:34.549Z","1.0.0-alpha13-alpha.215cabc2":"2017-05-01T23:02:13.558Z","1.0.0-alpha13-alpha.526805ab":"2017-05-03T22:17:35.584Z","1.0.0-alpha13-alpha.0f0222b8":"2017-05-04T16:09:33.445Z","1.0.0-alpha13-alpha.7d186994":"2017-05-04T16:29:53.828Z","1.0.0-alpha13-alpha.a3ef328b":"2017-05-04T19:52:20.677Z","1.0.0-alpha13-alpha.84bd4b24":"2017-05-04T20:33:37.404Z","1.0.0-alpha13-alpha.7efda7f0":"2017-05-04T23:03:21.379Z","1.0.0-alpha13-alpha.435e0178":"2017-05-05T18:26:28.627Z","1.0.0-alpha13-alpha.e4457d15":"2017-05-05T19:35:56.006Z","1.0.0-alpha13-alpha.43a3774e":"2017-05-06T00:32:32.142Z","1.0.0-alpha14":"2017-05-06T01:18:32.643Z","1.0.0-alpha14-alpha.3145bea2":"2017-05-08T17:23:18.287Z","1.0.0-alpha14-alpha.e5097827":"2017-05-10T07:07:18.394Z","1.0.0-alpha14-alpha.5f9232df":"2017-05-11T14:45:22.004Z","1.0.0-alpha14-alpha.48e2735c":"2017-05-11T18:44:20.476Z","1.0.0-alpha14-alpha.42f0e16a":"2017-05-11T18:55:23.378Z","1.0.0-alpha14-alpha.1ebda6e4":"2017-05-11T19:12:21.804Z","1.0.0-alpha14-alpha.a4a50ee4":"2017-05-11T19:32:46.544Z","1.0.0-alpha14-alpha.6611f24e":"2017-05-11T22:34:30.273Z","1.0.0-alpha14-alpha.ac7022a4":"2017-05-11T23:39:48.178Z","1.0.0-alpha15":"2017-05-16T09:13:00.516Z","1.0.0-alpha15-alpha.6c40594a":"2017-05-16T13:55:52.178Z","1.0.0-alpha15-alpha.17ca92e9":"2017-05-16T17:30:23.126Z","1.0.0-alpha15-alpha.7211d781":"2017-05-17T11:33:56.379Z","1.0.0-alpha15-alpha.11f194aa":"2017-05-18T16:22:18.563Z","1.0.0-alpha15-alpha.62fcc2e1":"2017-05-20T10:11:54.629Z","1.0.0-alpha15-alpha.336b6aa8":"2017-05-22T14:14:47.093Z","1.0.0-alpha15-alpha.6ffaa855":"2017-05-22T14:30:08.993Z","1.0.0-alpha15-alpha.14012332":"2017-05-22T23:06:13.816Z","1.0.0-alpha15-alpha.94fac7a9":"2017-05-23T12:27:25.529Z","1.0.0-alpha15-alpha.330d917d":"2017-05-23T17:43:09.942Z","1.0.0-alpha15-alpha.4784b06f":"2017-05-25T18:40:16.474Z","1.0.0-alpha16":"2017-05-26T09:30:34.744Z","1.0.0-alpha16-alpha.c28a693a":"2017-05-27T15:00:59.347Z","1.0.0-alpha16-alpha.0e39282b":"2017-05-30T01:48:00.140Z","1.0.0-alpha16-alpha.b47e49cb":"2017-05-30T04:10:31.402Z","1.0.0-alpha16-alpha.a48b771d":"2017-05-30T05:59:35.012Z","1.0.0-alpha16-alpha.102adc51":"2017-05-31T02:38:04.749Z","1.0.0-alpha16-alpha.d918ccdc":"2017-06-01T16:17:01.103Z","1.0.0-alpha16-alpha.7b3bcd50":"2017-06-01T18:44:45.529Z","1.0.0-alpha16-alpha.4482ff94":"2017-06-01T21:37:57.240Z","1.0.0-alpha17":"2017-06-02T18:45:06.266Z","1.0.0-alpha19-alpha.81f2510a":"2017-06-03T02:37:04.994Z","1.0.0-alpha19-alpha.a2f3e881":"2017-06-03T15:38:12.210Z","1.0.0-alpha19-alpha.3c6183a4":"2017-06-03T19:39:24.845Z","1.0.0-alpha19-alpha.62172e76":"2017-06-03T23:34:21.715Z","1.0.0-alpha19-alpha.dcf76508":"2017-06-05T23:17:40.127Z","1.0.0-alpha19-alpha.0ae0ee2a":"2017-06-05T23:52:21.788Z","1.0.0-alpha.22":"2017-06-08T04:28:15.845Z","1.0.0-alpha.22-alpha.19f7c727":"2017-06-10T17:40:25.583Z","1.0.0-alpha.22-alpha.acbc22e8":"2017-06-10T22:37:41.414Z","1.0.0-alpha.22-alpha.0be09b66":"2017-06-11T01:15:06.388Z","1.0.0-alpha.22-alpha.96b0b727":"2017-06-11T01:21:39.166Z","1.0.0-alpha.22-alpha.2d2aa0ef":"2017-06-13T01:26:20.896Z","1.0.0-alpha.22-alpha.18f02e94":"2017-06-13T19:09:25.873Z","1.0.0-beta.1":"2017-06-15T20:26:10.811Z","1.0.0-beta.1-alpha.82c23a65":"2017-06-16T16:17:38.350Z","1.0.0-beta.2-alpha.4bef9d1e":"2017-06-18T06:20:44.739Z","1.0.0-beta.2-alpha.a1195641":"2017-06-20T03:50:56.295Z","1.0.0-beta.2-alpha.38d760b4":"2017-06-21T00:36:17.361Z","1.0.0-beta.3-alpha.404a27c8":"2017-06-22T01:38:33.002Z","1.0.0-beta.3-alpha.1cb4cf8b":"2017-06-22T05:41:57.530Z","1.0.0-beta.3-alpha.15f49df0":"2017-06-22T16:02:02.871Z","1.0.0-beta.3-alpha.a694e4ac":"2017-06-22T16:19:21.466Z","1.0.0-beta.3-alpha.590c01b7":"2017-06-23T00:07:05.578Z","1.0.0-beta.3-alpha.9451bcd6":"2017-06-23T01:45:53.672Z","1.0.0-beta.4-alpha.83182d4c":"2017-06-24T00:19:57.437Z","1.0.0-beta.5-alpha.c64a932e":"2017-06-27T02:33:55.814Z","1.0.0-beta.5-alpha.1a65ba72":"2017-06-27T04:15:34.887Z","1.0.0-beta.5-alpha.fb30fcd6":"2017-06-29T04:20:40.060Z","1.0.0-beta.5-alpha.08bddd92":"2017-06-30T23:11:21.985Z","1.0.0-beta.5-alpha.c16c2913":"2017-07-01T19:22:12.396Z","1.0.0-beta.5-alpha.dfde8a10":"2017-07-02T03:05:37.859Z","1.0.0-beta.6":"2017-07-02T06:43:23.842Z","1.0.0-beta.6-alpha.320adb17":"2017-07-03T23:41:16.510Z","1.0.0-beta.7-alpha.60d2ce84":"2017-07-04T23:24:54.161Z","1.0.0-beta.7-alpha.7dc2afa2":"2017-07-05T19:27:53.344Z","1.0.0-beta.7-alpha.594d939c":"2017-07-06T16:30:29.639Z","1.0.0":"2017-07-06T19:43:55.705Z","1.0.1":"2017-07-06T19:49:15.677Z","1.5.3":"2017-07-28T18:02:18.763Z","1.5.4":"2017-08-19T01:53:01.814Z","1.6.0-alpha.22c8a6f1":"2017-08-24T16:12:48.602Z","1.5.5":"2017-08-25T18:22:12.187Z","1.5.6":"2017-08-30T22:59:05.853Z","1.5.7":"2017-08-31T23:42:38.991Z","1.6.0-alpha.76b32701":"2017-09-15T18:02:47.791Z","1.6.0-alpha.93f2e2a2":"2017-09-16T11:51:53.419Z","1.6.0-alpha.5db7a275":"2017-09-16T13:47:31.245Z","1.6.0-alpha.1460dad9":"2017-09-18T12:30:17.991Z","1.5.8":"2017-10-02T22:16:14.351Z","1.5.9":"2017-10-08T00:29:58.760Z","1.5.10":"2017-10-12T17:36:39.964Z","1.5.11":"2017-10-12T18:04:57.030Z","1.5.12":"2017-11-29T00:10:42.227Z","1.5.13":"2017-12-10T00:46:00.528Z","1.5.14":"2017-12-13T03:08:00.649Z","1.6.0-alpha.f20ac0ed":"2018-01-11T18:39:57.276Z","1.6.0-alpha.a0a09c94":"2018-01-11T18:48:58.433Z","1.6.0-alpha.b50f2063":"2018-01-11T18:55:50.450Z","1.6.0-alpha.03b9df85":"2018-01-12T14:37:10.574Z","1.6.0-alpha.e9df8e57":"2018-01-12T14:48:21.378Z","1.6.0-alpha.8c822451":"2018-01-12T15:01:38.365Z","1.6.0-alpha.e5586916":"2018-01-12T15:23:18.275Z","1.6.0-alpha.9da1bca1":"2018-01-12T18:08:35.978Z","1.6.0-alpha.aeb05561":"2018-01-18T01:53:52.214Z","1.6.0-alpha.7b47e00d":"2018-01-18T02:10:44.024Z","1.6.0-alpha.f5c1df61":"2018-01-18T17:31:28.295Z","1.6.0-alpha.926cb6da":"2018-01-21T01:43:15.738Z","1.6.0-alpha.3f307d61":"2018-01-21T02:23:54.547Z","1.6.0-alpha.d1544e1b":"2018-01-25T00:15:18.647Z","2.1.0-alpha.53bbd4cd":"2018-02-10T20:35:42.613Z","2.1.0-alpha.2b695217":"2018-02-10T22:37:35.832Z","2.1.0-alpha.32ef58da":"2018-02-11T03:45:36.866Z","2.1.0-alpha.5182142b":"2018-02-11T04:13:39.551Z","1.5.15":"2018-02-13T01:12:52.074Z","2.1.0-alpha.6ab84875":"2018-02-15T02:07:43.127Z","2.1.0-alpha.9d4de2a6":"2018-02-15T20:33:30.009Z","2.1.0-alpha.dd504153":"2018-02-15T21:30:52.134Z","2.1.0-alpha.b68b7f5c":"2018-02-15T22:01:53.399Z","2.1.0-alpha.bb258cb5":"2018-02-16T00:30:31.462Z","2.1.0-alpha.e28a1c8e":"2018-02-16T01:11:58.212Z","2.1.0-alpha.067e672c":"2018-02-17T02:46:11.709Z","2.1.0-alpha.d0b8dd9e":"2018-02-17T19:06:28.766Z","2.0.1-0":"2018-02-17T19:31:56.600Z","2.1.0-alpha.e66c6c9c":"2018-02-27T01:26:25.309Z","1.5.16":"2018-02-28T20:41:08.597Z","2.1.0-alpha.2cbec6d6":"2018-03-03T06:47:38.058Z","2.0.1-1":"2018-03-03T07:25:22.939Z","2.1.0-alpha.f98688ee":"2018-03-07T02:26:40.009Z","2.1.0-alpha.9fe50b00":"2018-03-08T03:05:13.164Z","2.1.0-alpha.34eda94b":"2018-03-17T21:23:11.780Z","2.1.0-alpha.12622d64":"2018-03-18T00:01:25.448Z","2.1.0-alpha.84bd71b4":"2018-03-18T00:41:27.247Z","2.1.0-alpha.6ad61a13":"2018-03-21T17:50:57.932Z","2.1.0-alpha.5f47082e":"2018-03-23T22:49:00.235Z","2.0.1-2":"2018-03-23T23:20:15.593Z","2.1.0-alpha.95fcd4af":"2018-03-29T02:24:13.222Z","2.1.0-alpha.20252dc3":"2018-03-29T02:46:02.035Z","2.1.0-alpha.4a09f745":"2018-04-05T22:15:42.701Z","2.1.0-alpha.76793cd8":"2018-04-07T22:13:33.012Z","2.1.0-alpha.5c9569c0":"2018-04-19T16:58:42.707Z","2.1.0-alpha.523a4286":"2018-04-19T23:54:01.178Z","2.1.0-alpha.5421f383":"2018-04-20T06:54:42.233Z","2.1.0-alpha.e9c3027b":"2018-04-20T17:58:54.879Z","2.0.1-3":"2018-04-22T01:55:59.157Z","2.0.1-4":"2018-04-25T16:27:02.471Z","2.0.1-5":"2018-04-26T18:21:18.348Z","1.5.17":"2018-05-15T18:25:31.025Z","2.0.1-8":"2018-05-15T20:19:22.045Z","2.0.1-9":"2018-05-18T15:36:29.775Z","2.0.1-10":"2018-05-31T14:28:42.809Z","2.0.1-11":"2018-05-31T17:24:32.928Z","2.0.1-12":"2018-06-11T15:27:40.234Z","2.0.1-13":"2018-06-11T16:58:05.487Z","2.2.0-alpha.80a21f04":"2018-06-16T19:38:31.795Z","2.1.1-alpha.2":"2018-06-16T23:34:33.975Z","1.5.18":"2018-06-17T01:53:45.812Z","2.1.1-beta.0":"2018-06-17T06:54:33.495Z","2.1.1-beta.1":"2018-06-17T08:13:29.148Z","2.1.1-beta.2":"2018-06-20T20:46:00.737Z","2.1.1-beta.3":"2018-07-21T16:00:37.220Z","2.1.1-rc.0":"2018-08-21T01:00:00.709Z","2.1.1-rc.1":"2018-08-29T18:30:30.317Z","2.1.1-rc.2":"2018-09-05T13:12:39.378Z","2.1.1-rc.6":"2018-09-11T12:13:05.644Z","2.1.1":"2018-09-17T20:43:30.318Z","2.1.3":"2018-10-09T16:08:00.816Z","2.1.4":"2018-10-29T15:25:08.421Z","2.1.5":"2018-11-08T01:37:21.263Z","2.1.6":"2018-11-29T12:15:19.851Z","2.1.7":"2019-01-08T18:29:24.966Z","2.1.8":"2019-02-01T12:26:01.981Z","2.1.9":"2019-03-11T13:49:43.019Z","2.1.10":"2019-03-11T15:25:53.191Z","2.1.11":"2019-03-25T20:39:53.322Z","2.1.12":"2019-04-24T17:08:05.538Z","2.2.0":"2019-06-20T13:50:39.280Z"},"tags":{"latest":"2.2.0"},"description":"Gatsby transformer plugin for yaml","dependencies":{"@babel/runtime":"^7.0.0","js-yaml":"^3.13.0","lodash":"^4.17.10","unist-util-select":"^1.5.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-transformer-yaml","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-transformer-yaml","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-transformer-yaml","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-transformer-yaml\n\nParses YAML files. Supports arrays of objects and single objects.\n\nSupported extensions: `.yaml`, `.yml`\n\nBoth `.yaml` and `.yml` are treated in the same way. This document uses both of them interchangeably.\n\n## Install\n\n`npm install --save gatsby-transformer-yaml`\n\n**Note:** You also need to have `gatsby-source-filesystem` installed and configured so it\npoints to your files.\n\n## How to use\n\nIn your `gatsby-config.js`\n\n```javascript\nmodule.exports = {\n plugins: [\n `gatsby-transformer-yaml`,\n {\n resolve: `gatsby-source-filesystem`,\n options: {\n path: `./src/data/`,\n },\n },\n ],\n}\n```\n\nWhere the _source folder_ `./src/data/` contains the `.yaml` files.\n\n## Parsing algorithm\n\nYou can choose to structure your data as arrays of objects in individual files\nor as single objects spread across multiple files.\n\nThe _source folder_ can contain either the following:\n\n- **Array of Objects**: Where each file represents a collection. (_you probably want this one_)\n- **Single Object**: Where each _subfolder_ represents a collection; each file represents one \"record\".\n\n### Array of Objects\n\nThe algorithm for YAML arrays is to convert each item in the array into a node.\nThe type of the node is based on the filename.\n\nSo if your project has a `letters.yaml` which looks like:\n\n```yaml\n- character: a\n- character: b\n- character: c\n```\n\nThen the following three nodes would be created.\n\n```json\n[\n {\n \"character\": \"a\"\n },\n {\n \"character\": \"b\"\n },\n {\n \"character\": \"c\"\n }\n]\n```\n\n### Single Object\n\nThe algorithm for single YAML objects is to convert the object defined at the\nroot of the file into a node. The type of the node is based on the name of the\nparent directory.\n\nFor example, let's say your project has a data layout like:\n\n```\ndata/\n letters/\n a.yml\n b.yml\n c.yml\n```\n\nWhere each of `a.yml`, `b.yml` and `c.yml` look like:\n\n```yaml\ncharacter: a\n```\n\n```yaml\ncharacter: b\n```\n\n```yaml\ncharacter: c\n```\n\nThen the following three nodes would be created.\n\n```json\n[\n {\n \"character\": \"a\"\n },\n {\n \"character\": \"b\"\n },\n {\n \"character\": \"c\"\n }\n]\n```\n\n## How to query\n\nYou can query the nodes using GraphQL, like from the GraphiQL browser: `localhost:8000/___graphql`.\n\nRegardless of whether you choose to structure your data in arrays of objects or\nsingle objects, you'd be able to query your letters like:\n\n```graphql\n{\n allLettersYaml {\n edges {\n node {\n character\n }\n }\n }\n}\n```\n\nWhich would return:\n\n```javascript\n{\n allLettersYaml: {\n edges: [\n {\n node: {\n character: \"a\",\n },\n },\n {\n node: {\n character: \"b\",\n },\n },\n {\n node: {\n character: \"c\",\n },\n },\n ]\n }\n}\n```\n\nPlease do **note** that `allLettersYaml` **will not** show up if you do not have any `.yaml` files.\n\n## Configuration options\n\n**`typeName`** [string|function][optional]\n\nThe default naming convention documented above can be changed with\neither a static string value (e.g. to be able to query all yaml with a\nsimple query):\n\n```javascript\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-transformer-yaml`,\n options: {\n typeName: `Yaml`, // a fixed string\n },\n },\n ],\n}\n```\n\n```graphql\n{\n allYaml {\n edges {\n node {\n value\n }\n }\n }\n}\n```\n\nor a function that receives the following arguments:\n\n- `node`: the graphql node that is being processed, e.g. a File node with\n yaml content\n- `object`: a single object (either an item from an array or the whole yaml content)\n- `isArray`: boolean, true if `object` is part of an array\n\n```yaml\n- level: info\n message: hurray\n- level: info\n message: it works\n- level: warning\n message: look out\n```\n\n```javascript\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-transformer-yaml`,\n options: {\n typeName: ({ node, object, isArray }) => object.level,\n },\n },\n ],\n}\n```\n\n```graphql\n{\n allInfo {\n edges {\n node {\n message\n }\n }\n }\n}\n```\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","yaml"],"computedKeywords":[],"computedMetadata":{},"created":1492540892439,"modified":1561038641998,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:42.800Z","_searchInternal":{"concatenatedName":"gatsbytransformeryaml","alternativeNames":["gatsbytransformeryaml","gatsby transformer yaml","gatsby-transformer-yaml"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-transformer-yaml/CHANGELOG.md","jsDelivrHits":27,"objectID":"gatsby-transformer-yaml","_highlightResult":{"name":{"value":"gatsby-transformer-yaml","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby transformer plugin for yaml","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"yaml","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbytransformeryaml","matchLevel":"none","matchedWords":[]},{"value":"gatsby transformer yaml","matchLevel":"none","matchedWords":[]},{"value":"gatsby-transformer-yaml","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-prefetch-google-fonts","downloadsLast30Days":25966,"downloadsRatio":0.0000568944496864049,"humanDownloadsLast30Days":"26k","popular":false,"version":"1.4.2","versions":{"1.0.3":"2018-09-06T13:36:50.766Z","1.0.4":"2018-09-06T13:40:18.067Z","1.0.5":"2018-09-06T15:12:06.454Z","1.0.7":"2018-09-06T16:06:25.567Z","1.0.6":"2018-09-06T16:06:37.725Z","1.0.8":"2018-09-06T20:32:52.650Z","1.0.9":"2018-09-06T20:38:05.020Z","1.0.10":"2018-09-06T20:53:39.020Z","1.0.11":"2018-09-06T20:58:19.984Z","1.1.1":"2018-12-05T14:51:12.264Z","1.2.0":"2019-01-29T18:14:38.919Z","1.3.0":"2019-01-29T18:36:53.615Z","1.3.1":"2019-01-31T15:12:17.548Z","1.4.0":"2019-02-04T19:43:57.300Z","1.4.1":"2019-03-28T13:10:45.086Z","1.4.2":"2019-04-08T15:24:50.039Z"},"tags":{"latest":"1.4.2"},"description":"A Gatsby plugin to download and prefetch [Google Fonts](https://fonts.google.com/). Can increase performance as opposed to loading webfonts from Google&#39;s external stylesheet.","dependencies":{"@babel/runtime":"^7.2.0","clean-css":"^4.2.1","download":"^7.1.0","fs-extra":"^7.0.0","get-urls":"^8.0.0","globby":"^8.0.1","google-fonts-plugin":"2.0.2","object-hash":"^1.3.0"},"devDependencies":{"@babel/cli":"^7.1.2","@babel/core":"^7.1.2","@babel/plugin-proposal-class-properties":"^7.1.0","@babel/plugin-proposal-decorators":"^7.1.2","@babel/plugin-proposal-do-expressions":"^7.0.0","@babel/plugin-proposal-export-default-from":"^7.0.0","@babel/plugin-proposal-export-namespace-from":"^7.0.0","@babel/plugin-proposal-function-bind":"^7.0.0","@babel/plugin-proposal-function-sent":"^7.1.0","@babel/plugin-proposal-json-strings":"^7.0.0","@babel/plugin-proposal-logical-assignment-operators":"^7.0.0","@babel/plugin-proposal-nullish-coalescing-operator":"^7.0.0","@babel/plugin-proposal-numeric-separator":"^7.0.0","@babel/plugin-proposal-optional-chaining":"^7.0.0","@babel/plugin-proposal-pipeline-operator":"^7.0.0","@babel/plugin-proposal-throw-expressions":"^7.0.0","@babel/plugin-syntax-dynamic-import":"^7.0.0","@babel/plugin-syntax-import-meta":"^7.0.0","@babel/plugin-syntax-jsx":"^7.2.0","@babel/plugin-transform-runtime":"^7.1.0","@babel/preset-env":"^7.1.0","@babel/preset-react":"^7.0.0","child-process-async":"^1.0.1","child-process-promise":"^2.2.1","emotion":"^9.2.6","emotion-server":"^9.2.6","enzyme":"^3.5.0","enzyme-adapter-react-16":"^1.3.0","eslint":"^5.2.0","eslint-config-escalade-sports":"^1.0.1","gatsby":"^2.0.19","gatsby-plugin-emotion":"2.0.5","husky":"^0.14.3","identity-obj-proxy":"^3.0.0","isomorphic-fetch":"^2.2.1","jest":"^23.4.2","jest-dom":"^1.12.0","lint-staged":"^7.2.0","netlify-cms":"^1.9.3","netlify-lambda":"^0.4.0","npm-run-all":"^4.1.3","opn-cli":"^3.1.0","react":"^16.4.0","react-dom":"^16.4.0","react-helmet":"^5.2.0","react-netlify-form":"^2.0.7","react-no-ssr":"^1.1.0","react-test-renderer":"^16.4.2","react-testing-library":"^4.1.7","request":"^2.87.0","statable":"^0.3.2","static-server":"^2.2.1","strip-html-comments":"^1.0.0","toml":"^2.3.3","wt-cli":"^10.0.3"},"repository":{"url":"https://github.com/escaladesports/gatsby-plugin-prefetch-google-fonts","project":"gatsby-plugin-prefetch-google-fonts","user":"escaladesports","host":"github.com","path":"","head":"f93b6cca10451bdcad34d5496aeaa370d02d1b97","branch":"f93b6cca10451bdcad34d5496aeaa370d02d1b97"},"githubRepo":{"user":"escaladesports","project":"gatsby-plugin-prefetch-google-fonts","path":"","head":"f93b6cca10451bdcad34d5496aeaa370d02d1b97"},"gitHead":"f93b6cca10451bdcad34d5496aeaa370d02d1b97","readme":"# gatsby-plugin-prefetch-google-fonts\n\nA Gatsby plugin to download and prefetch [Google Fonts](https://fonts.google.com/). Can increase performance as opposed to loading webfonts from Google's external stylesheet.\n\n## Installation\n\nWith npm:\n\n```bash\nnpm install --save gatsby-plugin-prefetch-google-fonts\n```\n\nOr with Yarn:\n\n```bash\nyarn add gatsby-plugin-prefetch-google-fonts\n```\n\n## Usage\n\nIn your `gatsby-config.js` file, load in the plugin along with which web fonts to load.\n\n```javascript\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-prefetch-google-fonts`,\n options: {\n fonts: [\n {\n family: `Oswald`,\n subsets: [`latin`],\n },\n {\n family: `Open Sans`,\n variants: [`400`, `700`]\n },\n ],\n },\n }\n ]\n}\n```\n\nFor a list of all available font family options, consult the [google-fonts-plugin readme](https://github.com/SirPole/google-fonts-plugin).","owner":{"name":"escaladesports","avatar":"https://github.com/escaladesports.png","link":"https://github.com/escaladesports"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby-plugin","gatsby","plugin","web","font","loader","google","webfont","webfontloader","prefetch","download","downloader","local"],"computedKeywords":[],"computedMetadata":{},"created":1536241010490,"modified":1558723573339,"lastPublisher":{"name":"ken85rose","email":"kennedy@kennedyrose.com","avatar":"https://gravatar.com/avatar/0dec49a05d40eddd3827688a1ad9680b","link":"https://www.npmjs.com/~ken85rose"},"owners":[{"email":"taustin@escaladesports.com","name":"tbaustin","avatar":"https://gravatar.com/avatar/85eeb95dc41f452aec4688d57e820929","link":"https://www.npmjs.com/~tbaustin"},{"email":"kennedy@kennedyrose.com","name":"ken85rose","avatar":"https://gravatar.com/avatar/0dec49a05d40eddd3827688a1ad9680b","link":"https://www.npmjs.com/~ken85rose"}],"lastCrawl":"2019-06-24T10:15:06.726Z","_searchInternal":{"concatenatedName":"gatsbypluginprefetchgooglefonts","alternativeNames":["gatsbypluginprefetchgooglefonts","gatsby plugin prefetch google fonts","gatsby-plugin-prefetch-google-fonts"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":0,"objectID":"gatsby-plugin-prefetch-google-fonts","_highlightResult":{"name":{"value":"gatsby-plugin-prefetch-google-fonts","matchLevel":"none","matchedWords":[]},"description":{"value":"A Gatsby plugin to download and prefetch [Google Fonts](https://fonts.google.com/). Can increase performance as opposed to loading webfonts from Google's external stylesheet.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"escaladesports","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"plugin","matchLevel":"none","matchedWords":[]},{"value":"web","matchLevel":"none","matchedWords":[]},{"value":"font","matchLevel":"none","matchedWords":[]},{"value":"loader","matchLevel":"none","matchedWords":[]},{"value":"google","matchLevel":"none","matchedWords":[]},{"value":"webfont","matchLevel":"none","matchedWords":[]},{"value":"webfontloader","matchLevel":"none","matchedWords":[]},{"value":"prefetch","matchLevel":"none","matchedWords":[]},{"value":"download","matchLevel":"none","matchedWords":[]},{"value":"downloader","matchLevel":"none","matchedWords":[]},{"value":"local","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"tbaustin","matchLevel":"none","matchedWords":[]}},{"name":{"value":"ken85rose","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginprefetchgooglefonts","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin prefetch google fonts","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-prefetch-google-fonts","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-sentry","downloadsLast30Days":25949,"downloadsRatio":0.00005685720075916663,"humanDownloadsLast30Days":"25.9k","popular":false,"version":"1.0.1","versions":{"0.0.1":"2017-10-22T19:28:11.217Z","0.0.2":"2017-11-04T23:26:07.835Z","0.0.3":"2018-02-20T19:20:29.407Z","0.0.4":"2018-04-05T17:53:00.654Z","0.1.0":"2018-06-23T17:53:29.764Z","1.0.0":"2018-12-13T00:45:42.370Z","1.0.1":"2019-01-25T16:58:03.466Z"},"tags":{"latest":"1.0.1"},"description":"Gatsby plugin to add Sentry error tracking to your site.","dependencies":{"@sentry/browser":"latest"},"devDependencies":{},"repository":{"url":"https://github.com/octalmage/gatsby-plugin-sentry","project":"gatsby-plugin-sentry","user":"octalmage","host":"github.com","path":"","head":"f394871f4f105e4e6d459e44e851a432d154368b","branch":"f394871f4f105e4e6d459e44e851a432d154368b"},"githubRepo":{"user":"octalmage","project":"gatsby-plugin-sentry","path":"","head":"f394871f4f105e4e6d459e44e851a432d154368b"},"gitHead":"f394871f4f105e4e6d459e44e851a432d154368b","readme":"# gatsby-plugin-sentry\n\nGatsby plugin to add Sentry error tracking to your site.\n\nLearn more about Sentry [here](https://sentry.io).\n\n## Install\n\n`npm install --save gatsby-plugin-sentry`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nplugins: [\n {\n resolve: \"gatsby-plugin-sentry\",\n options: {\n dsn: \"YOUR_SENTRY_DSN_URL\",\n // Optional settings, see https://docs.sentry.io/clients/node/config/#optional-settings\n environment: process.env.NODE_ENV,\n enabled: (() => [\"production\", \"stage\"].indexOf(process.env.NODE_ENV) !== -1)()\n }\n }\n];\n```\n\nNow `Sentry` is available in global window object. so you can use it in `react 16` like:\n\n```javascript\nexport default class ErrorBoundary extends React.Component {\n \n constructor(props) {\n super(props);\n this.state = { error: null };\n }\n\n componentDidCatch(error, errorInfo) {\n this.setState({ error });\n Sentry.configureScope((scope) => {\n Object.keys(errorInfo).forEach(key => {\n scope.setExtra(key, errorInfo[key]);\n });\n });\n Sentry.captureException(error);\n }\n\n render() {\n if (this.state.error) {\n // render fallback UI\n return <h1>Something went wrong!</h1>;\n } else {\n // when there's not an error, render children untouched\n return this.props.children;\n }\n }\n}\n```\n","owner":{"name":"octalmage","avatar":"https://github.com/octalmage.png","link":"https://github.com/octalmage"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","sentry"],"computedKeywords":[],"computedMetadata":{},"created":1508700491217,"modified":1548435485965,"lastPublisher":{"name":"octalmage","email":"jason@stallin.gs","avatar":"https://gravatar.com/avatar/19dea15ef740d66cd0eb40bc8479d8dc","link":"https://www.npmjs.com/~octalmage"},"owners":[{"name":"octalmage","email":"jason@stallin.gs","avatar":"https://gravatar.com/avatar/19dea15ef740d66cd0eb40bc8479d8dc","link":"https://www.npmjs.com/~octalmage"}],"lastCrawl":"2019-06-24T10:15:06.789Z","_searchInternal":{"concatenatedName":"gatsbypluginsentry","alternativeNames":["gatsbypluginsentry","gatsby plugin sentry","gatsby-plugin-sentry"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":3,"objectID":"gatsby-plugin-sentry","_highlightResult":{"name":{"value":"gatsby-plugin-sentry","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin to add Sentry error tracking to your site.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"octalmage","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"sentry","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"octalmage","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginsentry","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin sentry","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-sentry","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-root-import","downloadsLast30Days":24597,"downloadsRatio":0.0000538948154870408,"humanDownloadsLast30Days":"24.6k","popular":false,"version":"2.0.5","versions":{"1.0.0":"2018-04-26T02:46:34.012Z","1.0.1":"2018-08-13T06:09:45.705Z","1.0.2":"2018-08-13T06:11:36.245Z","2.0.0":"2018-08-14T02:40:16.272Z","2.0.1":"2018-08-16T01:28:02.765Z","2.0.2":"2018-08-16T01:37:51.702Z","2.0.3":"2018-08-16T01:43:51.072Z","2.0.4":"2018-08-16T01:46:18.134Z","2.0.5":"2019-01-14T00:15:54.902Z"},"tags":{"latest":"2.0.5"},"description":"Gatsby plugin to set Webpack to resolve import root","dependencies":{},"devDependencies":{"babel-cli":"^6.26.0","babel-preset-es2015":"^6.24.1","babel-preset-stage-2":"^6.24.1","babel-runtime":"^6.26.0","concurrently":"^3.6.1","onchange":"^3.3.0","prettier":"^1.12.1"},"repository":{"url":"https://github.com/mongkuen/gatsby-plugin-root-import","project":"gatsby-plugin-root-import","user":"mongkuen","host":"github.com","path":"","head":"b1b37d2a8fd02e9aea3c3767b9af4a6c901805f4","branch":"b1b37d2a8fd02e9aea3c3767b9af4a6c901805f4"},"githubRepo":{"user":"mongkuen","project":"gatsby-plugin-root-import","path":"","head":"b1b37d2a8fd02e9aea3c3767b9af4a6c901805f4"},"gitHead":"b1b37d2a8fd02e9aea3c3767b9af4a6c901805f4","readme":"# gatsby-plugin-root-import\n\nSet Webpack to resolve root, allowing you to import modules from an absolute project path rather than relative `../../` paths.\n\n**NOTE:** Plugin has different installation and usage instructions to support both Gatsby V1 and V2.\n\n<hr/>\n\n## Gatsby V2 Instructions\n### Install\n\n1. Install the `gatsby-plugin-root-import` plugin:\n\n `npm install --save-dev gatsby-plugin-root-import`\n\n or\n\n `yarn add --dev gatsby-plugin-root-import`\n\n### Usage\n\nAdd into `gatsby-config.js`.\n\n```javascript\n// gatsby-config.js\n\nmodule.exports = {\n plugins: [\n 'gatsby-plugin-root-import'\n ]\n}\n```\n\n### Default Settings\nWebpack v4 drops `resolve.root` in favor of `resolve.alias` found [here](https://webpack.js.org/configuration/resolve/#resolve-alias).\n\nIf no options are specified, the plugin creates a default alias of `src` to your project `src` folder.\n\nThis means you should be able to import modules like such:\n```javascript\n// importing gatsbyProject/src/yourFolder/YourComponent.js\n\nimport YourComponent from 'src/yourFolder/YourComponent'\n```\n\n### Plugin Options\n\nYou can pass as many keys as you want into the plugin options, and they will map to Webpack's `alias` configuration.\n\n`alias` takes an object with keys of your alias names, and values of directory strings [like so](https://webpack.js.org/configuration/resolve/#resolve-alias).\n\n```javascript\n// gatsby-config.js\nconst path = require('path')\n\nmodule.exports = {\n plugins: [\n {\n resolve: 'gatsby-plugin-root-import',\n options: {\n src: path.join(__dirname, 'src'),\n pages: path.join(__dirname, 'src/pages')\n }\n }\n ]\n}\n```\n\n\nThis means you should be able to import modules like such:\n```javascript\n// from the 'src' alias\n// importing gatsbyProject/src/yourFolder/YourComponent.js\n\nimport YourComponent from 'src/yourFolder/YourComponent'\n\n// from the 'pages' alias\n// importing gatsbyProject/src/pages/YourPage.js\n\nimport YourPage from 'pages/YourPage'\n```\n\n<hr/>\n\n## Gatsby V1 Instructions\n### Install\n\n1. Install the `gatsby-plugin-root-import` plugin:\n\n `npm install --save-dev --save-exact gatsby-plugin-root-import@1.0.0`\n\n or\n\n `yarn add --dev gatsby-plugin-root-import@1.0.0`\n\n### Usage\n\nAdd into `gatsby-config.js`.\n\n```javascript\n// gatsby-config.js\n\nmodule.exports = {\n plugins: [\n 'gatsby-plugin-root-import'\n ]\n}\n```\n\n### Default Settings\n\nIf no options are specified, the plugin defaults to your project root folder.\n\nThis means you should be able to import modules like such:\n```javascript\n// importing gatsbyProject/src/yourFolder/YourComponent.js\n\nimport YourComponent from 'src/yourFolder/YourComponent'\n```\n\n### Plugin Options\n\nYou can pass a `root` option. You can specify your own folder, such as `src`.\nThis option corresponds with Webpack v3's `resolve.root` found [here](https://github.com/webpack/docs/wiki/configuration#resolveroot).\nThis may be both a directory string, or an array of directory strings.\n\n```javascript\n// gatsby-config.js\nconst path = require('path')\n\nmodule.exports = {\n plugins: [\n {\n resolve: 'gatsby-plugin-root-import',\n options: {\n root: path.join(__dirname, 'src')\n }\n }\n ]\n}\n```\n\nThis means you can import modules with project's `src` folder as `root`:\n```javascript\n// importing gatsbyProject/src/yourFolder/YourComponent.js\n\nimport YourComponent from 'yourFolder/YourComponent'\n```\n","owner":{"name":"mongkuen","avatar":"https://github.com/mongkuen.png","link":"https://github.com/mongkuen"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","import","root"],"computedKeywords":[],"computedMetadata":{},"created":1524710793831,"modified":1547424957704,"lastPublisher":{"name":"mongkuen","email":"mongkuen.sun@gmail.com","avatar":"https://gravatar.com/avatar/6265f40828cde9c50f569217ebabe0a9","link":"https://www.npmjs.com/~mongkuen"},"owners":[{"name":"mongkuen","email":"mongkuen.sun@gmail.com","avatar":"https://gravatar.com/avatar/6265f40828cde9c50f569217ebabe0a9","link":"https://www.npmjs.com/~mongkuen"}],"lastCrawl":"2019-06-24T10:15:06.765Z","_searchInternal":{"concatenatedName":"gatsbypluginrootimport","alternativeNames":["gatsbypluginrootimport","gatsby plugin root import","gatsby-plugin-root-import"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":0,"objectID":"gatsby-plugin-root-import","_highlightResult":{"name":{"value":"gatsby-plugin-root-import","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin to set Webpack to resolve import root","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"mongkuen","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"import","matchLevel":"none","matchedWords":[]},{"value":"root","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"mongkuen","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginrootimport","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin root import","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-root-import","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-remark-external-links","downloadsLast30Days":23653,"downloadsRatio":0.00005182640446863342,"humanDownloadsLast30Days":"23.7k","popular":false,"version":"0.0.4","versions":{"0.0.1":"2017-09-29T20:46:12.739Z","0.0.2":"2017-09-29T21:40:47.768Z","0.0.3":"2017-09-29T21:53:09.653Z","0.0.4":"2017-12-16T00:03:33.221Z"},"tags":{"latest":"0.0.4"},"description":"Automatically adds the target and rel attributes to external links in markdown.","dependencies":{"babel-runtime":"^6.26.0","is-relative-url":"^2.0.0","unist-util-find":"^1.0.1","unist-util-visit":"^1.1.3"},"devDependencies":{"babel-cli":"^6.26.0","cross-env":"^5.0.5","dedent":"^0.7.0","jest":"^21.2.1","remark":"^8.0.0"},"repository":{"url":"https://github.com/JLongley/gatsby-remark-external-links","project":"gatsby-remark-external-links","user":"JLongley","host":"github.com","path":"","head":"69dbd33707fb1a5799c0ced6b5bc7f70768d1377","branch":"69dbd33707fb1a5799c0ced6b5bc7f70768d1377"},"githubRepo":{"user":"JLongley","project":"gatsby-remark-external-links","path":"","head":"69dbd33707fb1a5799c0ced6b5bc7f70768d1377"},"gitHead":"69dbd33707fb1a5799c0ced6b5bc7f70768d1377","readme":"# gatsby-remark-external-links\nAdds the target and rel attributes to external links in markdown.\n\nThis is a gatsby port of the [remark-external-links](https://github.com/xuopled/remark-external-links) remark plugin.\n\n## Usage \n1. Install plugin to your site:\n\n```bash\nyarn add gatsby-remark-external-links\n```\n\n2. Add following to your `gatsby-config.js`:\n```js\n plugins: [ \n {\n resolve: `gatsby-transformer-remark`,\n options: {\n plugins: [\n {\n resolve: \"gatsby-remark-external-links\",\n options: {\n target: \"_self\",\n rel: \"nofollow\"\n }\n }\n ]\n }\n },\n```\n\n3. Restart gastby.\n\n## API\n\n#### options\n\n##### target\n\nType: `string`\nDefault: `_blank`\n\nSpecifies where to display the linked URL.\nThe value should be on of : `_self`, `_blank`, `_parent`, `_top`\n\n*You can specify `null` to not add the `target` attribute to your links*\n\n##### rel\n\nType: `string`\nDefault: `nofollow noopener noreferrer`\n\nSpecifies the relationship of the target object to the link object.\nThe value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types).\n\n*You can specify `null` to not add the `rel` attribute to your links*\n\n*[When using target, consider adding rel=\"noopener noreferrer\" to avoid exploitation of the window.opener API.](https://developer.mozilla.org/en/docs/Web/HTML/Element/a)*\n\n## License\n\nMIT","owner":{"name":"JLongley","avatar":"https://github.com/JLongley.png","link":"https://github.com/JLongley"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","remark"],"computedKeywords":[],"computedMetadata":{},"created":1506717972739,"modified":1513382613221,"lastPublisher":{"name":"jdlongley","email":"jimmylongley@gmail.com","avatar":"https://gravatar.com/avatar/2ab3099784096f75c185b911b4fb8b63","link":"https://www.npmjs.com/~jdlongley"},"owners":[{"name":"jdlongley","email":"jimmylongley@gmail.com","avatar":"https://gravatar.com/avatar/2ab3099784096f75c185b911b4fb8b63","link":"https://www.npmjs.com/~jdlongley"}],"lastCrawl":"2019-06-24T10:15:17.096Z","_searchInternal":{"concatenatedName":"gatsbyremarkexternallinks","alternativeNames":["gatsbyremarkexternallinks","gatsby remark external links","gatsby-remark-external-links"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":29,"objectID":"gatsby-remark-external-links","_highlightResult":{"name":{"value":"gatsby-remark-external-links","matchLevel":"none","matchedWords":[]},"description":{"value":"Automatically adds the target and rel attributes to external links in markdown.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"JLongley","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"remark","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"jdlongley","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyremarkexternallinks","matchLevel":"none","matchedWords":[]},{"value":"gatsby remark external links","matchLevel":"none","matchedWords":[]},{"value":"gatsby-remark-external-links","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-force-trailing-slashes","downloadsLast30Days":23259,"downloadsRatio":0.00005096310580205237,"humanDownloadsLast30Days":"23.3k","popular":false,"version":"1.0.4","versions":{"1.0.0":"2018-07-15T17:49:25.670Z","1.0.1":"2018-07-15T17:50:36.645Z","1.0.2":"2018-07-22T12:30:48.889Z","1.0.3":"2018-08-29T02:42:05.568Z","1.0.4":"2018-08-29T03:00:45.803Z"},"tags":{"latest":"1.0.4"},"description":"Forces trailing slashes on all pages","dependencies":{"@babel/runtime":"7.0.0-beta.51"},"devDependencies":{"@babel/cli":"7.0.0-beta.51","@babel/core":"7.0.0-beta.51","@babel/preset-env":"^7.0.0-beta.53","cross-env":"^5.1.4","lodash":"^4.17.10"},"repository":{"url":"https://github.com/BayPhillips/gatsby-plugin-force-trailing-slashes","project":"gatsby-plugin-force-trailing-slashes","user":"BayPhillips","host":"github.com","path":"","head":"ad5dc889af961a7be7f74ff394fd86997ca84a69","branch":"ad5dc889af961a7be7f74ff394fd86997ca84a69"},"githubRepo":{"user":"BayPhillips","project":"gatsby-plugin-force-trailing-slashes","path":"","head":"ad5dc889af961a7be7f74ff394fd86997ca84a69"},"gitHead":"ad5dc889af961a7be7f74ff394fd86997ca84a69","readme":"# gatsby-plugin-force-trailing-slashes\r\n\r\nThis plugin forces trailing slashes from your project's paths. For\r\nexample, `yoursite.com/about` becomes `yoursite.com/about/`.\r\n\r\n## Usage\r\n\r\nInstall:\r\n\r\n```\r\nnpm install --save-dev gatsby-plugin-force-trailing-slashes\r\n```\r\n\r\nThen configure via `gatsby-config.js`.\r\n\r\n```js\r\n{\r\n ...\r\n plugins: [\r\n ...,\r\n `gatsby-plugin-force-trailing-slashes`,\r\n ]\r\n}\r\n```\r\n\r\n### Options\r\n\r\nYou can optionally provide additional paths to exclude from having being changed.\r\n\r\n```js\r\n plugins: [\r\n {\r\n resolve: `gatsby-plugin-force-trailing-slashes`,\r\n options: {\r\n excludedPaths: [`/404.html`, `/my-dedicated-route`],\r\n },\r\n },\r\n ]\r\n\r\n## Requirements\r\n\r\nRequires Gatsby v2","owner":{"name":"BayPhillips","avatar":"https://github.com/BayPhillips.png","link":"https://github.com/BayPhillips"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","slash"],"computedKeywords":[],"computedMetadata":{},"created":1531676965604,"modified":1535511648461,"lastPublisher":{"name":"bayphillips","email":"bay.phillips@gmail.com","avatar":"https://gravatar.com/avatar/f7dd333f82bcdba689bc81b2f0d5af6b","link":"https://www.npmjs.com/~bayphillips"},"owners":[{"name":"bayphillips","email":"bay.phillips@gmail.com","avatar":"https://gravatar.com/avatar/f7dd333f82bcdba689bc81b2f0d5af6b","link":"https://www.npmjs.com/~bayphillips"}],"lastCrawl":"2019-06-24T10:14:55.730Z","_searchInternal":{"concatenatedName":"gatsbypluginforcetrailingslashes","alternativeNames":["gatsbypluginforcetrailingslashes","gatsby plugin force trailing slashes","gatsby-plugin-force-trailing-slashes"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":0,"objectID":"gatsby-plugin-force-trailing-slashes","_highlightResult":{"name":{"value":"gatsby-plugin-force-trailing-slashes","matchLevel":"none","matchedWords":[]},"description":{"value":"Forces trailing slashes on all pages","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"BayPhillips","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"slash","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"bayphillips","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginforcetrailingslashes","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin force trailing slashes","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-force-trailing-slashes","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-netlify-cache","downloadsLast30Days":22216,"downloadsRatio":0.00004867777456031623,"humanDownloadsLast30Days":"22.2k","popular":false,"version":"1.2.0","versions":{"0.0.1":"2018-06-06T09:49:53.961Z","0.0.2":"2018-06-06T12:17:47.078Z","0.1.0":"2018-06-11T08:43:51.453Z","1.0.0-beta0":"2018-08-29T09:08:12.803Z","1.0.0":"2018-10-03T12:59:54.403Z","1.1.0":"2019-02-26T03:22:16.802Z","1.2.0-beta.0":"2019-02-26T06:29:21.639Z","1.2.0":"2019-05-10T09:11:54.562Z"},"tags":{"latest":"1.2.0","next":"1.0.0-beta0","beta":"1.2.0-beta.0"},"description":"Cache your build files on Netlify","dependencies":{"babel-runtime":"^6.26.0","fs-extra":"^7.0.0"},"devDependencies":{"babel-cli":"^6.26.0","cross-env":"^5.2.0","eslint":"^5.6.1","eslint-config-prettier":"^3.1.0","eslint-config-standard":"^12.0.0","eslint-plugin-import":"^2.14.0","eslint-plugin-node":"^7.0.1","eslint-plugin-prettier":"^3.0.0","eslint-plugin-promise":"^4.0.1","eslint-plugin-standard":"^4.0.0","prettier":"^1.14.3"},"repository":{"url":"https://github.com/axe312ger/gatsby-plugin-netlify-cache","project":"gatsby-plugin-netlify-cache","user":"axe312ger","host":"github.com","path":"","head":"6659a5421d5bfc08231622a61351aab3d5fd99f5","branch":"6659a5421d5bfc08231622a61351aab3d5fd99f5"},"githubRepo":{"user":"axe312ger","project":"gatsby-plugin-netlify-cache","path":"","head":"6659a5421d5bfc08231622a61351aab3d5fd99f5"},"gitHead":"6659a5421d5bfc08231622a61351aab3d5fd99f5","readme":"# gatsby-plugin-netlify-cache\n\n<p align=\"center\">\n <a href=\"https://www.npmjs.com/package/gatsby-plugin-netlify-cache\">\n <img src=\"https://img.shields.io/npm/v/gatsby-plugin-netlify-cache.svg\" alt=\"NPM\">\n </a>\n &nbsp;\n <a href=\"http://npm-stat.com/charts.html?package=gatsby-plugin-netlify-cache\">\n <img src=\"https://img.shields.io/npm/dm/gatsby-plugin-netlify-cache.svg\" alt=\"NPM downloads\">\n </a>\n</p>\n\n> This plugin caches your build files locally or in the Netlify cache directory. It will massively speed up subsequent builds.\n\n## ☁️ Installation\n\n```sh\nnpm install gatsby-plugin-netlify-cache\n```\n\n## 🛫 Setup\n\nAdd `'gatsby-plugin-netlify-cache'` to the plugins in your `gatsby-config.js` file.\n\n## ✋ Usage\n\n### Locally\n\nIn your local environment nothing happens to avoid conflicts with your development process. It actually checks if `process.env.NETLIFY_BUILD_BASE` exists to detect a Netlify environment.\n\n### Netlify\n\nIt automatically restores your cache and caches new files within the Netlify cache folder. This folder is [undocumented but works fine](https://www.contentful.com/blog/2018/05/17/faster-static-site-builds-part-one-process-only-what-you-need/#caching-for-the-win). To reset the cache, hit the `Clear build cache` checkbox in the Netlify app.\n\nThese folders are cached by default:\n\n* `.cache` directory\n* `public` directory\n\n\n## ⚙️ Configuration\n\n### `cachePublic` - default: `false`\n\nCaching the public directory on long term can result in a huge directory size which can break your netlify build. Enable this with caution.\n\n```js\nplugins: [\n {\n resolve: \"gatsby-plugin-netlify-cache\",\n options: {\n cachePublic: true\n }\n }\n]\n```\n\n### `extraDirsToCache` - default: `[]`\n\nIf you need additionals directories to be cached, you can use the option `extraDirsToCache` to include one or multiple directories to Netlify cache:\n\n```js\nplugins: [\n {\n resolve: \"gatsby-plugin-netlify-cache\",\n options: {\n extraDirsToCache: [\n \"extraDir\",\n \".extraDotDir\",\n \"extra/dir\"\n ]\n }\n }\n]\n```\n\n> Note: the directory path is relative to the project root directory\n","owner":{"name":"axe312ger","avatar":"https://github.com/axe312ger.png","link":"https://github.com/axe312ger"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","netlify","cache"],"computedKeywords":[],"computedMetadata":{},"created":1528278593895,"modified":1557479517123,"lastPublisher":{"name":"axe312","email":"roetsch.beni@googlemail.com","avatar":"https://gravatar.com/avatar/9deffeac1bef56ed97c1fa509c7204d2","link":"https://www.npmjs.com/~axe312"},"owners":[{"name":"axe312","email":"roetsch.beni@googlemail.com","avatar":"https://gravatar.com/avatar/9deffeac1bef56ed97c1fa509c7204d2","link":"https://www.npmjs.com/~axe312"}],"lastCrawl":"2019-06-24T10:15:06.630Z","_searchInternal":{"concatenatedName":"gatsbypluginnetlifycache","alternativeNames":["gatsbypluginnetlifycache","gatsby plugin netlify cache","gatsby-plugin-netlify-cache"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":0,"objectID":"gatsby-plugin-netlify-cache","_highlightResult":{"name":{"value":"gatsby-plugin-netlify-cache","matchLevel":"none","matchedWords":[]},"description":{"value":"Cache your build files on Netlify","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"axe312ger","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"netlify","matchLevel":"none","matchedWords":[]},{"value":"cache","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"axe312","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginnetlifycache","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin netlify cache","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-netlify-cache","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-webpack-bundle-analyzer","downloadsLast30Days":20959,"downloadsRatio":0.00004592354505805131,"humanDownloadsLast30Days":"21k","popular":false,"version":"1.0.5","versions":{"0.1.0":"2018-01-04T16:36:38.880Z","0.1.1":"2018-01-04T16:51:17.525Z","1.0.2":"2018-08-21T13:15:54.125Z","1.0.3":"2018-08-30T13:04:12.095Z","1.0.4":"2019-01-02T15:04:31.015Z","1.0.5":"2019-05-13T13:20:00.890Z"},"tags":{"latest":"1.0.5"},"description":"A Gatsby plugin to help analyze your bundle content.","dependencies":{"webpack-bundle-analyzer":"^3.3.2"},"devDependencies":{"@babel/cli":"^7.0.0-rc.1","@babel/core":"^7.0.0-rc.1","@babel/preset-env":"^7.0.0-rc.1","opn-cli":"^3.1.0"},"repository":{"url":"https://github.com/escaladesports/gatsby-plugin-webpack-bundle-analyzer","project":"gatsby-plugin-webpack-bundle-analyzer","user":"escaladesports","host":"github.com","path":"","head":"4745202fde61f1f93deb8e0b81aadba437200c9c","branch":"4745202fde61f1f93deb8e0b81aadba437200c9c"},"githubRepo":{"user":"escaladesports","project":"gatsby-plugin-webpack-bundle-analyzer","path":"","head":"4745202fde61f1f93deb8e0b81aadba437200c9c"},"gitHead":"4745202fde61f1f93deb8e0b81aadba437200c9c","readme":"# gatsby-plugin-webpack-bundle-analyzer\n\nA Gatsby plugin to help analyze your bundle content with [webpack-bundle-analyzer](https://github.com/webpack-contrib/webpack-bundle-analyzer).\n\n## Install\n\nWith Yarn:\n\n```bash\nyarn add gatsby-plugin-webpack-bundle-analyzer\n```\n\nOr with npm:\n\n```bash\nnpm install --save gatsby-plugin-webpack-bundle-analyzer\n```\n\n## Usage\n\n```javascript\n// In your gatsby-config.js\nplugins: [\n\t'gatsby-plugin-webpack-bundle-analyzer',\n]\n```\n\n## Options\n\nSee [original plugin](https://github.com/webpack-contrib/webpack-bundle-analyzer#options-for-plugin) for a list of available options.\n\nAdditional options:\n\n- `production`: Run the analyzer on a production build. Defaults to `false`\n- `disable`: Set to true to toggle off the analyzer. Defaults to `false`\n\n```javascript\nplugins: [\n\t{\n\t\tresolve: 'gatsby-plugin-webpack-bundle-analyzer',\n\t\toptions: {\n\t\t\tanalyzerPort: 3000,\n\t\t\tproduction: true,\n\t\t},\n\t},\n]\n```\n\n","owner":{"name":"escaladesports","avatar":"https://github.com/escaladesports.png","link":"https://github.com/escaladesports"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","webpack","bundle","analyzer","webpack-bundle-analyzer"],"computedKeywords":[],"computedMetadata":{},"created":1515083798880,"modified":1558723579446,"lastPublisher":{"name":"ken85rose","email":"kennedy@kennedyrose.com","avatar":"https://gravatar.com/avatar/0dec49a05d40eddd3827688a1ad9680b","link":"https://www.npmjs.com/~ken85rose"},"owners":[{"email":"taustin@escaladesports.com","name":"tbaustin","avatar":"https://gravatar.com/avatar/85eeb95dc41f452aec4688d57e820929","link":"https://www.npmjs.com/~tbaustin"},{"email":"kennedy@kennedyrose.com","name":"ken85rose","avatar":"https://gravatar.com/avatar/0dec49a05d40eddd3827688a1ad9680b","link":"https://www.npmjs.com/~ken85rose"}],"lastCrawl":"2019-06-24T10:15:06.936Z","_searchInternal":{"concatenatedName":"gatsbypluginwebpackbundleanalyzer","alternativeNames":["gatsbypluginwebpackbundleanalyzer","gatsby plugin webpack bundle analyzer","gatsby-plugin-webpack-bundle-analyzer"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":3,"objectID":"gatsby-plugin-webpack-bundle-analyzer","_highlightResult":{"name":{"value":"gatsby-plugin-webpack-bundle-analyzer","matchLevel":"none","matchedWords":[]},"description":{"value":"A Gatsby plugin to help analyze your bundle content.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"escaladesports","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"webpack","matchLevel":"none","matchedWords":[]},{"value":"bundle","matchLevel":"none","matchedWords":[]},{"value":"analyzer","matchLevel":"none","matchedWords":[]},{"value":"webpack-bundle-analyzer","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"tbaustin","matchLevel":"none","matchedWords":[]}},{"name":{"value":"ken85rose","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginwebpackbundleanalyzer","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin webpack bundle analyzer","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-webpack-bundle-analyzer","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-lodash","downloadsLast30Days":19876,"downloadsRatio":0.0000435505692816369,"humanDownloadsLast30Days":"19.9k","popular":false,"version":"3.1.0","versions":{"1.0.1":"2017-09-18T22:19:10.088Z","1.0.2":"2017-09-18T23:57:53.472Z","1.0.3":"2017-09-20T13:48:07.823Z","1.0.4":"2017-09-20T22:33:10.725Z","1.0.5":"2017-11-29T00:09:24.302Z","1.0.6":"2017-12-10T00:45:21.988Z","1.0.7":"2017-12-20T23:25:52.136Z","1.1.0-alpha.f20ac0ed":"2018-01-11T18:38:55.461Z","1.1.0-alpha.a0a09c94":"2018-01-11T18:47:50.369Z","1.1.0-alpha.b50f2063":"2018-01-11T18:54:56.484Z","1.1.0-alpha.03b9df85":"2018-01-12T14:36:00.882Z","1.1.0-alpha.e9df8e57":"2018-01-12T14:47:18.033Z","1.1.0-alpha.8c822451":"2018-01-12T15:00:46.304Z","1.1.0-alpha.e5586916":"2018-01-12T15:22:19.080Z","1.1.0-alpha.9da1bca1":"2018-01-12T18:07:21.070Z","1.1.0-alpha.aeb05561":"2018-01-18T01:52:52.830Z","1.1.0-alpha.7b47e00d":"2018-01-18T02:09:56.188Z","1.1.0-alpha.f5c1df61":"2018-01-18T17:30:14.546Z","1.1.0-alpha.926cb6da":"2018-01-21T01:42:08.545Z","1.1.0-alpha.3f307d61":"2018-01-21T02:22:45.132Z","1.0.8":"2018-01-23T19:17:35.816Z","1.1.0-alpha.d1544e1b":"2018-01-25T00:14:12.883Z","2.1.0-alpha.53bbd4cd":"2018-02-10T20:34:25.260Z","2.1.0-alpha.2b695217":"2018-02-10T22:36:35.302Z","2.1.0-alpha.32ef58da":"2018-02-11T03:44:34.747Z","2.1.0-alpha.5182142b":"2018-02-11T04:12:17.516Z","1.0.9":"2018-02-13T01:11:52.431Z","2.1.0-alpha.6ab84875":"2018-02-15T02:06:34.989Z","2.1.0-alpha.9d4de2a6":"2018-02-15T20:32:15.924Z","2.1.0-alpha.9e381f74":"2018-02-15T21:12:26.215Z","2.1.0-alpha.dd504153":"2018-02-15T21:29:32.043Z","2.1.0-alpha.b68b7f5c":"2018-02-15T22:00:37.191Z","2.1.0-alpha.bb258cb5":"2018-02-16T00:29:31.397Z","2.1.0-alpha.e28a1c8e":"2018-02-16T01:10:58.252Z","2.1.0-alpha.067e672c":"2018-02-17T02:45:03.645Z","2.1.0-alpha.d0b8dd9e":"2018-02-17T19:04:59.543Z","2.0.1-0":"2018-02-17T19:30:57.096Z","2.1.0-alpha.e66c6c9c":"2018-02-27T01:24:44.728Z","1.0.10":"2018-02-28T20:39:50.170Z","3.0.0-alpha.2cbec6d6":"2018-03-03T06:46:29.132Z","3.0.0-alpha.2":"2018-03-03T07:23:44.732Z","3.0.0-alpha.f98688ee":"2018-03-07T02:25:36.391Z","3.0.0-alpha.3":"2018-03-07T02:34:36.002Z","1.0.11":"2018-03-07T18:06:19.737Z","3.0.0-alpha.9fe50b00":"2018-03-08T03:04:13.872Z","3.0.0-alpha.34eda94b":"2018-03-17T21:22:09.609Z","3.0.0-alpha.12622d64":"2018-03-17T23:59:59.695Z","3.0.0-alpha.84bd71b4":"2018-03-18T00:39:45.215Z","3.0.0-alpha.6ad61a13":"2018-03-21T17:49:20.992Z","3.0.0-alpha.5f47082e":"2018-03-23T22:47:27.673Z","3.0.0-alpha.4":"2018-03-23T23:18:52.352Z","3.0.0-alpha.95fcd4af":"2018-03-29T02:22:15.841Z","3.0.0-alpha.20252dc3":"2018-03-29T02:44:01.530Z","3.0.0-alpha.4a09f745":"2018-04-05T22:14:45.453Z","3.0.0-alpha.76793cd8":"2018-04-07T22:12:08.801Z","3.0.0-alpha.5c9569c0":"2018-04-19T16:56:47.028Z","3.0.0-alpha.523a4286":"2018-04-19T23:51:45.048Z","3.0.0-alpha.5421f383":"2018-04-20T06:52:41.395Z","3.0.0-alpha.e9c3027b":"2018-04-20T17:56:12.001Z","3.0.0-alpha.5":"2018-04-22T01:53:45.229Z","3.0.0-alpha.6":"2018-04-25T16:25:05.424Z","3.0.0-alpha.7":"2018-04-26T18:19:21.655Z","3.0.0-alpha.8":"2018-05-11T21:43:35.288Z","3.0.0-alpha.10":"2018-05-15T19:54:14.062Z","3.0.0-alpha.11":"2018-05-31T14:03:49.086Z","3.0.0-alpha.12":"2018-05-31T17:15:36.599Z","3.0.0-alpha.13":"2018-06-11T15:22:24.105Z","3.0.0-alpha.14":"2018-06-11T16:54:46.463Z","3.0.1-alpha.1":"2018-06-16T19:08:41.062Z","3.1.0-alpha.8ac171a1":"2018-06-16T19:25:16.026Z","3.1.0-alpha.e328d33f":"2018-06-16T19:32:46.698Z","3.1.0-alpha.80a21f04":"2018-06-16T19:36:55.951Z","3.0.1-alpha.2":"2018-06-16T23:32:39.917Z","3.0.1-beta.0":"2018-06-17T06:53:51.178Z","3.0.1-beta.1":"2018-06-17T08:12:50.967Z","3.0.1-beta.2":"2018-06-20T20:45:23.983Z","3.0.1-beta.3":"2018-07-21T16:00:06.670Z","3.0.1-rc.0":"2018-08-21T00:58:28.193Z","3.0.1-rc.1":"2018-08-29T18:28:44.946Z","3.0.1":"2018-09-17T20:41:46.476Z","3.0.2":"2018-10-29T15:23:51.175Z","3.0.3":"2018-11-29T12:13:39.819Z","3.0.4":"2019-02-01T12:25:05.255Z","3.0.5":"2019-03-11T15:24:19.635Z","3.1.0":"2019-06-20T13:48:54.890Z"},"tags":{"latest":"3.1.0"},"description":"Easy modular Lodash builds. Adds the Lodash webpack &amp; Babel plugins to your Gatsby build","dependencies":{"@babel/runtime":"^7.0.0","babel-plugin-lodash":"^3.2.11","lodash-webpack-plugin":"^0.11.5"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.1.4"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-lodash","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-lodash","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-lodash","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-lodash\n\nAdds the Lodash webpack & Babel plugins for easy modular, small Lodash builds.\n\n## Install\n\n`npm install --save gatsby-plugin-lodash lodash`\n\n## How to use\n\nAdd the plugin to your `gatsby-config.js`.\n\n```javascript\nplugins: [`gatsby-plugin-lodash`]\n```\n\nBy default this plugin enables all\n[feature sets](https://github.com/lodash/lodash-webpack-plugin#feature-sets). If\nyou know you don't need some of them, you can remove support for features sets\nby setting a `disabledFeatures` option like the following:\n\n```javascript\nplugins: [\n {\n resolve: `gatsby-plugin-lodash`,\n options: {\n disabledFeatures: [`shorthands`, `cloning`],\n },\n },\n]\n```\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1505773150088,"modified":1561038538782,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"monastic.panic@gmail.com","name":"monastic.panic","avatar":"https://gravatar.com/avatar/766f4ddfb297054c3fb362a83f2233c8","link":"https://www.npmjs.com/~monastic.panic"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:15:06.559Z","_searchInternal":{"concatenatedName":"gatsbypluginlodash","alternativeNames":["gatsbypluginlodash","gatsby plugin lodash","gatsby-plugin-lodash"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-lodash/CHANGELOG.md","jsDelivrHits":23,"objectID":"gatsby-plugin-lodash","_highlightResult":{"name":{"value":"gatsby-plugin-lodash","matchLevel":"none","matchedWords":[]},"description":{"value":"Easy modular Lodash builds. Adds the Lodash webpack &amp; Babel plugins to your Gatsby build","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"monastic.panic","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginlodash","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin lodash","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-lodash","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-material-ui","downloadsLast30Days":19754,"downloadsRatio":0.00004032951797157599,"humanDownloadsLast30Days":"19.8k","popular":false,"version":"2.1.0","versions":{"0.1.0":"2017-09-11T20:36:34.999Z","0.1.2":"2017-09-11T20:38:29.244Z","0.1.3":"2017-09-11T20:48:55.857Z","1.2.2":"2019-02-14T20:11:13.744Z","2.0.0-alpha.2":"2019-02-14T20:14:12.565Z","1.2.3":"2019-02-14T20:17:50.725Z","2.0.0-alpha.3":"2019-02-14T20:19:38.777Z","1.2.4":"2019-02-14T21:40:30.826Z","2.0.0-alpha.4":"2019-04-07T19:14:41.656Z","2.0.0-alpha.5":"2019-04-18T18:34:00.769Z","2.0.0-alpha.6":"2019-04-19T20:26:08.913Z","2.0.0-beta.0":"2019-05-04T15:26:42.168Z","1.2.5":"2019-05-11T19:05:12.529Z","2.0.0-beta.1":"2019-05-12T15:26:31.245Z","2.0.0-beta.2":"2019-05-12T16:08:32.693Z","2.0.0":"2019-05-23T18:49:10.435Z","2.0.1":"2019-05-24T04:04:11.538Z","2.1.0":"2019-06-26T12:15:51.108Z"},"tags":{"latest":"2.1.0","next":"2.0.0-beta.2"},"description":"Gatsby plugin for Material-UI with built-in server-side rendering support","dependencies":{"autoprefixer":"^9.5.1","clean-css":"^4.2.1","postcss":"^7.0.16"},"devDependencies":{"@babel/cli":"^7.4.4","@babel/core":"^7.4.4","babel-jest":"^24.8.0","babel-preset-gatsby-package":"^0.1.4","cross-env":"^5.2.0","jest":"^24.8.0"},"repository":{"url":"https://github.com/hupe1980/gatsby-plugin-material-ui","project":"gatsby-plugin-material-ui","user":"hupe1980","host":"github.com","path":"","head":"08b3937d92bc1998e1f935565a070f4a72127393","branch":"08b3937d92bc1998e1f935565a070f4a72127393"},"githubRepo":{"user":"hupe1980","project":"gatsby-plugin-material-ui","path":"","head":"08b3937d92bc1998e1f935565a070f4a72127393"},"gitHead":"08b3937d92bc1998e1f935565a070f4a72127393","readme":"# gatsby-plugin-material-ui\n\n> A [Gatsby](https://github.com/gatsbyjs/gatsby) plugin for [@material-ui/styles](https://github.com/mui-org/material-ui) with built-in server-side rendering support.\n\nThis is the plugin for Material-UI v4.\nThe plugin for v3 can be found [here](https://github.com/hupe1980/gatsby-plugin-material-ui/tree/v1.2.5).\n\n## Install\n\n```sh\nnpm install gatsby-plugin-material-ui @material-ui/styles\n```\n\n## How to use\n\nThe default options should be enough to cover the most common use cases.\n\n```js\nmodule.exports = {\n plugins: [`gatsby-plugin-material-ui`],\n};\n```\n\n## Usage with styled-components or else\n\nIf using Material-UI together with other styling providers (like styled-components), you should make sure Material-UI styles end up on top of `<head>` (so the other styling providers can overwrite it).\n\nYou can leverage the `injectFirst: true` prop the [`StylesProvider`](https://material-ui.com/styles/api/#stylesprovider) component:\n\n```js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-material-ui`,\n options: {\n stylesProvider: {\n injectFirst: true,\n },\n },\n },\n `gatsby-plugin-styled-components`,\n ],\n};\n```\n\n## Autoprefixing and minification\n\nBy default, the plugin adds vendor-specific prefixes and minimizes the server-side CSS.\nThe following options are available for deactivating:\n\n| Option | Default | Description |\n| -------------------- | ------- | ------------------------------------ |\n| disableAutoprefixing | false | Opt-out autoprefixing (autoprefixer) |\n| disableMinification | false | Opt-out minification (clean-css) |\n\n\n```js\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-material-ui`,\n options: {\n disableAutoprefixing: false,\n disableMinification: false,\n },\n },\n ],\n};\n```\n\n## Advanced\n\nYou can use the `pathToStylesProvider` option instead of the `stylesProvider` one to provide rich object props to the [`StylesProvider`](https://material-ui.com/styles/api/#stylesprovider) component.\n\n**gatsby-config.js.js**\n```\nmodule.exports = {\n plugins: [\n {\n resolve: `gatsby-plugin-material-ui`,\n options: {\n pathToStylesProvider: `src/styles-provider-props`,\n },\n },\n ],\n};\n\n```\n\n**src/styles-provider-props.js**\n```\nimport { jssPreset } from \"@material-ui/styles\";\nimport { create } from \"jss\";\n\nconst stylesProviderProps = {\n jss: create({ ...jssPreset(), insertionPoint: `mui-inject-first` }),\n};\n\nexport default stylesProviderProps;\n```\n\n## Examples\n\nYou can find an official integration example of this plugin [on Material-UI side](https://github.com/mui-org/material-ui/tree/master/examples/gatsby), then you can pick one of the [Page Layout Examples](https://material-ui.com/getting-started/page-layout-examples/).\n\nIf you want to save time with a more opinionated solution. You can start with [a premade theme](https://github.com/hupe1980/gatsby-theme-material-ui).\n","owner":{"name":"hupe1980","avatar":"https://github.com/hupe1980.png","link":"https://github.com/hupe1980"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["react","gatsby","gatsby-plugin","material-ui"],"computedKeywords":[],"computedMetadata":{},"created":1505162194999,"modified":1561551355301,"lastPublisher":{"name":"hupe1980","email":"hello@webappsolutions.de","avatar":"https://gravatar.com/avatar/a11646b6b90167ed82b3627601da4ce7","link":"https://www.npmjs.com/~hupe1980"},"owners":[{"email":"hello@webappsolutions.de","name":"hupe1980","avatar":"https://gravatar.com/avatar/a11646b6b90167ed82b3627601da4ce7","link":"https://www.npmjs.com/~hupe1980"},{"email":"olivier.tassinari@gmail.com","name":"oliviertassinari","avatar":"https://gravatar.com/avatar/e2b3127c877367bce1892635ffe153d0","link":"https://www.npmjs.com/~oliviertassinari"},{"email":"porteta@gmail.com","name":"porteta","avatar":"https://gravatar.com/avatar/2479e55ef67d669ca154355dc3cec38c","link":"https://www.npmjs.com/~porteta"}],"lastCrawl":"2019-06-26T12:15:56.311Z","_searchInternal":{"concatenatedName":"gatsbypluginmaterialui","alternativeNames":["gatsbypluginmaterialui","gatsby plugin material ui","gatsby-plugin-material-ui"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":0,"objectID":"gatsby-plugin-material-ui","_highlightResult":{"name":{"value":"gatsby-plugin-material-ui","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin for Material-UI with built-in server-side rendering support","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"hupe1980","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"react","matchLevel":"none","matchedWords":[]},{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"material-ui","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"hupe1980","matchLevel":"none","matchedWords":[]}},{"name":{"value":"oliviertassinari","matchLevel":"none","matchedWords":[]}},{"name":{"value":"porteta","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginmaterialui","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin material ui","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-material-ui","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-compile-es6-packages","downloadsLast30Days":19701,"downloadsRatio":0.00004316712444241943,"humanDownloadsLast30Days":"19.7k","popular":false,"version":"1.1.0","versions":{"1.0.0":"2018-09-21T06:29:00.170Z","1.0.1":"2018-09-21T06:29:19.252Z","1.0.2":"2018-09-21T06:35:17.220Z","1.0.3":"2018-09-21T06:45:51.764Z","1.0.4":"2018-09-21T06:46:58.287Z","1.0.5":"2018-09-21T06:47:30.502Z","1.0.6":"2018-09-21T06:49:02.538Z","1.1.0":"2019-03-27T08:38:18.229Z"},"tags":{"latest":"1.1.0"},"description":"Easily add support for compiling ES6 packages into Gasby projects","dependencies":{"@babel/runtime":"^7.0.0","regex-escape":"^3.4.8"},"devDependencies":{"@babel/cli":"^7.1.0","@babel/core":"^7.1.0","@babel/preset-env":"^7.1.0","cross-env":"^5.2.0"},"repository":{"url":"https://github.com/robwalkerco/gatsby-plugin-compile-es6-packages","project":"gatsby-plugin-compile-es6-packages","user":"robwalkerco","host":"github.com","path":"","head":"9675909a5343e7a47df4f96d6257bb70e939674c","branch":"9675909a5343e7a47df4f96d6257bb70e939674c"},"githubRepo":{"user":"robwalkerco","project":"gatsby-plugin-compile-es6-packages","path":"","head":"9675909a5343e7a47df4f96d6257bb70e939674c"},"gitHead":"9675909a5343e7a47df4f96d6257bb70e939674c","readme":"# gatsby-plugin-compile-es6-packages\n\n[![npm version](https://img.shields.io/npm/v/gatsby-plugin-compile-es6-packages.svg?style=flat-square)](https://www.npmjs.com/package/gatsby-plugin-compile-es6-packages)\n[![npm downloads](https://img.shields.io/npm/dt/gatsby-plugin-compile-es6-packages.svg?style=flat-square)](https://www.npmjs.com/package/gatsby-plugin-compile-es6-packages)\n\nAllows you to easily specify npm modules to be included in transpiling with babel.\n\nThis plugin works with Gatsby V2+\n\nDiscussion of this issue at https://github.com/gatsbyjs/gatsby/issues/3780\n\n## Install\n\n`npm install --save gatsby-plugin-compile-es6-packages`\n\n## How to use\n\nAdd the plugin to your `gatsby-config.js`.\nSpecify the npm modules containing ES6 code that require transpilation.\n\n```javascript\nplugins: [\n {\n resolve: `gatsby-plugin-compile-es6-packages`,\n options: {\n modules: [`query-string`]\n }\n }\n];\n```\n\nYou may also need to use other plugins to handle any specific babel config to transpile the es6 code (i.e. `gatsby-plugin-flow`)\n","owner":{"name":"robwalkerco","avatar":"https://github.com/robwalkerco.png","link":"https://github.com/robwalkerco"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","es6","webpack"],"computedKeywords":[],"computedMetadata":{},"created":1537511340023,"modified":1553675900775,"lastPublisher":{"name":"robwalkerco","email":"hi@robwalker.co","avatar":"https://gravatar.com/avatar/8f5247fd1731baf38dd2edc094464a5b","link":"https://www.npmjs.com/~robwalkerco"},"owners":[{"name":"robwalkerco","email":"hi@robwalker.co","avatar":"https://gravatar.com/avatar/8f5247fd1731baf38dd2edc094464a5b","link":"https://www.npmjs.com/~robwalkerco"}],"lastCrawl":"2019-06-24T10:14:55.640Z","_searchInternal":{"concatenatedName":"gatsbyplugincompilees6packages","alternativeNames":["gatsbyplugincompilees6packages","gatsby plugin compile es6 packages","gatsby-plugin-compile-es6-packages"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":2,"objectID":"gatsby-plugin-compile-es6-packages","_highlightResult":{"name":{"value":"gatsby-plugin-compile-es6-packages","matchLevel":"none","matchedWords":[]},"description":{"value":"Easily add support for compiling ES6 packages into Gasby projects","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"robwalkerco","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"es6","matchLevel":"none","matchedWords":[]},{"value":"webpack","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"robwalkerco","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyplugincompilees6packages","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin compile es6 packages","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-compile-es6-packages","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-google-fonts","downloadsLast30Days":19663,"downloadsRatio":0.00004308386213447507,"humanDownloadsLast30Days":"19.7k","popular":false,"version":"1.0.1","versions":{"0.0.0":"2017-09-18T20:25:10.367Z","0.0.1":"2017-09-18T20:33:38.507Z","0.0.2":"2017-09-18T21:27:32.651Z","0.0.3":"2017-09-26T09:48:07.713Z","0.0.4":"2018-03-14T14:19:01.165Z","1.0.0":"2019-05-15T13:25:23.882Z","1.0.1":"2019-06-07T06:24:40.438Z"},"tags":{"latest":"1.0.1"},"description":"Bring Google Fonts to Gatsby","dependencies":{},"devDependencies":{},"repository":{"url":"https://github.com/didierfranc/gatsby-plugin-google-fonts","project":"gatsby-plugin-google-fonts","user":"didierfranc","host":"github.com","path":"","head":"a6aacfb19311f92e275ee30d5def0cafa27d3ac4","branch":"a6aacfb19311f92e275ee30d5def0cafa27d3ac4"},"githubRepo":{"user":"didierfranc","project":"gatsby-plugin-google-fonts","path":"","head":"a6aacfb19311f92e275ee30d5def0cafa27d3ac4"},"gitHead":"a6aacfb19311f92e275ee30d5def0cafa27d3ac4","readme":"# gatsby-plugin-google-fonts\n\n## How to use it ?\n\n```js\nyarn add gatsby-plugin-google-fonts\n// or\nnpm install gatsby-plugin-google-fonts --save\n```\n\nAdd some fonts to your `gatsby-config.js`:\n\n```js\nmodule.exports = {\n siteMetadata: {\n title: `I like Google fonts`\n },\n plugins: [\n {\n resolve: `gatsby-plugin-google-fonts`,\n options: {\n fonts: [\n `limelight`,\n `source sans pro\\:300,400,400i,700` // you can also specify font weights and styles\n ],\n display: 'swap'\n }\n }\n ]\n}\n```\n\n\n## How to find great ideas ?\n\n- https://fonts.google.com\n- http://fontpair.co/\n","owner":{"name":"didierfranc","avatar":"https://github.com/didierfranc.png","link":"https://github.com/didierfranc"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","react","google","fonts"],"computedKeywords":[],"computedMetadata":{},"created":1505766310367,"modified":1559888683308,"lastPublisher":{"name":"didierfranc","email":"mail@didierfranc.com","avatar":"https://gravatar.com/avatar/c9e53f7ec2632879956931c128a90c9e","link":"https://www.npmjs.com/~didierfranc"},"owners":[{"name":"didierfranc","email":"mail@didierfranc.com","avatar":"https://gravatar.com/avatar/c9e53f7ec2632879956931c128a90c9e","link":"https://www.npmjs.com/~didierfranc"}],"lastCrawl":"2019-06-24T10:14:55.803Z","_searchInternal":{"concatenatedName":"gatsbyplugingooglefonts","alternativeNames":["gatsbyplugingooglefonts","gatsby plugin google fonts","gatsby-plugin-google-fonts"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":9,"objectID":"gatsby-plugin-google-fonts","_highlightResult":{"name":{"value":"gatsby-plugin-google-fonts","matchLevel":"none","matchedWords":[]},"description":{"value":"Bring Google Fonts to Gatsby","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"didierfranc","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"react","matchLevel":"none","matchedWords":[]},{"value":"google","matchLevel":"none","matchedWords":[]},{"value":"fonts","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"didierfranc","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbyplugingooglefonts","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin google fonts","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-google-fonts","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-flow","downloadsLast30Days":18740,"downloadsRatio":0.00004106146449677377,"humanDownloadsLast30Days":"18.7k","popular":false,"version":"1.1.0","versions":{"1.0.1-beta.0":"2018-08-20T19:52:49.230Z","1.0.1-rc.0":"2018-08-21T00:58:13.781Z","1.0.1-rc.1":"2018-08-29T18:28:31.210Z","1.0.1":"2018-09-17T20:41:27.181Z","1.0.2":"2018-10-01T21:11:53.437Z","1.0.3":"2019-03-11T13:49:31.525Z","1.0.4":"2019-03-11T15:24:07.951Z","1.0.5":"2019-04-23T20:57:27.098Z","1.0.6":"2019-05-24T22:12:51.404Z","1.1.0":"2019-06-20T13:48:44.033Z"},"tags":{"latest":"1.1.0"},"description":"Provides drop-in support for Flow by adding @babel/preset-flow.","dependencies":{"@babel/preset-flow":"^7.0.0-rc.1","@babel/runtime":"^7.0.0"},"devDependencies":{"@babel/cli":"^7.0.0","@babel/core":"^7.0.0","babel-preset-gatsby-package":"^0.2.0","cross-env":"^5.0.5"},"repository":{"url":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-plugin-flow","host":"github.com","user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-flow","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","branch":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"githubRepo":{"user":"gatsbyjs","project":"gatsby","path":"/tree/master/packages/gatsby-plugin-flow","head":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6"},"gitHead":"90d9440bcd44c2b6d70c78bd30adc8c0eec90fc6","readme":"# gatsby-plugin-flow\n\nProvides drop-in support for Flow by adding `@babel/preset-flow`.\n\n## Install\n\n`npm install gatsby-plugin-flow`\n\n## How to use\n\n1. Include the plugin in your `gatsby-config.js` file.\n1. You're good to go.\n\n`gatsby-config.js`\n\n```javascript\nplugins: [`gatsby-plugin-flow`]\n```\n","owner":{"name":"gatsbyjs","avatar":"https://github.com/gatsbyjs.png","link":"https://github.com/gatsbyjs"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1534794769129,"modified":1561038528245,"lastPublisher":{"name":"dschau","email":"dustinschau@gmail.com","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},"owners":[{"email":"dustinschau@gmail.com","name":"dschau","avatar":"https://gravatar.com/avatar/9015274323adee38f4536bbf562129ee","link":"https://www.npmjs.com/~dschau"},{"email":"freiksenet@gmail.com","name":"freiksenet","avatar":"https://gravatar.com/avatar/81f97378970030094af9972ce5cb290e","link":"https://www.npmjs.com/~freiksenet"},{"email":"jamo@isotalo.fi","name":"jamo","avatar":"https://gravatar.com/avatar/b7ac9e40aee1b0a673fbf90fcb2f7885","link":"https://www.npmjs.com/~jamo"},{"email":"mathews.kyle@gmail.com","name":"kylemathews","avatar":"https://gravatar.com/avatar/e567aa8adbd2d49cd9990ea1ed19d4eb","link":"https://www.npmjs.com/~kylemathews"},{"email":"michael.allanson@gmail.com","name":"m-allanson","avatar":"https://gravatar.com/avatar/4aae96e1aa2376d0279362ad2726b3f0","link":"https://www.npmjs.com/~m-allanson"},{"email":"anthony@moocar.me","name":"moocar","avatar":"https://gravatar.com/avatar/c95dd95268d5ceb68e32ecf164796a17","link":"https://www.npmjs.com/~moocar"},{"email":"misiek.piechowiak@gmail.com","name":"pieh","avatar":"https://gravatar.com/avatar/f3da60dded840e1e82616cd79613ba3d","link":"https://www.npmjs.com/~pieh"},{"email":"me@sidharthachatterjee.com","name":"sidharthachatterjee","avatar":"https://gravatar.com/avatar/cb6abe87d0f9d4720bb60e336fc220d3","link":"https://www.npmjs.com/~sidharthachatterjee"},{"email":"ward@coding-tech.com","name":"wardpeet","avatar":"https://gravatar.com/avatar/e574acc76c077a5bac76b07ba89aa9cb","link":"https://www.npmjs.com/~wardpeet"}],"lastCrawl":"2019-06-24T10:14:55.728Z","_searchInternal":{"concatenatedName":"gatsbypluginflow","alternativeNames":["gatsbypluginflow","gatsby plugin flow","gatsby-plugin-flow"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":"https://raw.githubusercontent.com/gatsbyjs/gatsby/master/packages/gatsby-plugin-flow/CHANGELOG.md","jsDelivrHits":0,"objectID":"gatsby-plugin-flow","_highlightResult":{"name":{"value":"gatsby-plugin-flow","matchLevel":"none","matchedWords":[]},"description":{"value":"Provides drop-in support for Flow by adding @babel/preset-flow.","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gatsbyjs","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"dschau","matchLevel":"none","matchedWords":[]}},{"name":{"value":"freiksenet","matchLevel":"none","matchedWords":[]}},{"name":{"value":"jamo","matchLevel":"none","matchedWords":[]}},{"name":{"value":"kylemathews","matchLevel":"none","matchedWords":[]}},{"name":{"value":"m-allanson","matchLevel":"none","matchedWords":[]}},{"name":{"value":"moocar","matchLevel":"none","matchedWords":[]}},{"name":{"value":"pieh","matchLevel":"none","matchedWords":[]}},{"name":{"value":"sidharthachatterjee","matchLevel":"none","matchedWords":[]}},{"name":{"value":"wardpeet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginflow","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin flow","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-flow","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-source-prismic","downloadsLast30Days":18492,"downloadsRatio":0.00004051806838176844,"humanDownloadsLast30Days":"18.5k","popular":false,"version":"2.3.0-alpha.3","versions":{"0.1.0":"2017-08-04T19:33:03.669Z","0.1.1":"2017-09-08T20:14:20.403Z","0.1.2":"2017-09-18T19:07:31.902Z","0.1.3":"2017-09-22T21:53:20.718Z","0.1.4":"2017-10-09T03:22:09.859Z","0.2.0":"2018-05-03T06:50:21.054Z","0.3.0-alpha.1":"2018-05-05T18:38:13.397Z","0.3.0-alpha.2":"2018-05-05T23:43:10.214Z","1.0.0-alpha.1":"2018-05-05T23:43:28.937Z","1.0.0-alpha.2":"2018-05-06T04:44:17.602Z","1.0.0-alpha.3":"2018-05-06T06:20:24.518Z","1.0.0-alpha.4":"2018-05-08T09:24:49.886Z","1.0.0-alpha.5":"2018-05-09T20:29:39.354Z","1.0.0-alpha.6":"2018-05-12T09:17:19.543Z","1.0.0-alpha.7":"2018-05-12T09:19:32.708Z","1.0.0-alpha.8":"2018-05-13T05:10:35.049Z","1.0.0-alpha.9":"2018-05-13T18:34:33.744Z","1.0.0-alpha.10":"2018-05-16T05:11:58.981Z","1.0.0":"2018-05-25T10:02:40.109Z","1.0.1":"2018-05-29T09:31:39.758Z","2.0.0-alpha.1":"2018-06-13T05:38:42.277Z","2.0.0-alpha.2":"2018-06-19T21:07:11.632Z","1.0.2":"2018-06-19T21:07:57.185Z","1.1.0":"2018-08-24T03:16:33.739Z","2.0.0-alpha.3":"2018-08-24T03:20:03.380Z","2.0.0-alpha.4":"2018-09-07T20:09:40.661Z","1.2.0":"2018-09-07T20:12:31.086Z","2.0.0-alpha.5":"2018-09-07T22:14:16.545Z","2.0.0":"2018-10-06T19:01:48.932Z","2.1.0":"2018-10-27T19:07:46.598Z","2.1.1":"2018-12-18T04:21:30.860Z","2.2.0":"2018-12-18T20:45:06.140Z","1.3.0":"2019-01-04T20:01:49.862Z","2.3.0-alpha.0":"2019-02-22T01:34:47.168Z","2.3.0-alpha.1":"2019-03-01T00:07:28.326Z","2.3.0-alpha.2":"2019-03-01T00:23:09.642Z","2.3.0-alpha.3":"2019-03-01T19:59:40.144Z","2.3.0-previews.0":"2019-03-12T21:43:02.886Z","2.3.0-previews.1":"2019-03-12T21:52:39.965Z","2.3.0-previews.2":"2019-03-12T23:44:45.719Z","2.3.0-previews.3":"2019-03-12T23:54:13.798Z","2.3.0-previews.4":"2019-03-13T20:11:37.737Z","2.3.0-previews.5":"2019-03-14T01:19:37.370Z","2.3.0-previews.6":"2019-03-14T01:30:32.670Z","2.3.0-previews.7":"2019-03-14T01:41:30.653Z","2.3.0-previews.8":"2019-03-16T00:38:35.722Z","2.3.0-alpha.4":"2019-03-16T21:44:59.976Z","2.3.0-alpha.5":"2019-03-16T21:52:32.109Z","2.3.0-alpha.6":"2019-03-19T00:36:09.587Z","2.3.0-previews.9":"2019-03-20T03:48:24.094Z","2.3.0-previews.10":"2019-05-01T21:15:51.768Z","2.3.0-previews.11":"2019-05-01T23:47:12.595Z","2.3.0-previews.12":"2019-05-16T03:21:38.460Z","2.3.0-alpha.7":"2019-05-18T00:55:03.031Z","3.0.0-alpha.0":"2019-05-18T00:56:10.256Z","3.0.0-alpha.1":"2019-05-19T03:23:12.397Z","3.0.0-alpha.2":"2019-05-22T23:36:14.377Z","3.0.0-alpha.3":"2019-05-24T00:54:01.055Z","3.0.0-alpha.4":"2019-06-13T23:33:06.159Z","3.0.0-beta.0":"2019-06-13T23:36:19.940Z"},"tags":{"latest":"2.3.0-alpha.3","preview":"0.2.0","next":"3.0.0-beta.0","gatsby-v1":"1.3.0","previews":"2.3.0-previews.12"},"description":"Gatsby source plugin for building websites using prismic.io as a data source","dependencies":{"asyncro":"^3.0.0","easygraphql-mock":"^0.1.11","gatsby":"^2.0.91","gatsby-node-helpers":"^0.3.0","gatsby-source-filesystem":"^2.0.1","pascalcase":"^0.1.1","prismic-dom":"^2.1.0","prismic-javascript":"^1.1.5","ramda":"^0.26.1","ramda-adjunct":"^2.9.0"},"devDependencies":{"@babel/cli":"^7.0.0-beta.56","@babel/core":"^7.0.0-beta.56","@babel/plugin-proposal-object-rest-spread":"^7.0.0-beta.56","@babel/plugin-transform-async-to-generator":"^7.0.0-beta.56","@babel/preset-env":"^7.0.0-beta.56","babel-core":"^7.0.0-0","babel-jest":"^23.4.2","jest":"^23.4.2","prettier":"^1.5.3"},"repository":{"url":"https://github.com/angeloashmore/gatsby-source-prismic","project":"gatsby-source-prismic","user":"angeloashmore","host":"github.com","path":"","branch":"master"},"githubRepo":{"user":"angeloashmore","project":"gatsby-source-prismic","path":"","head":"master"},"gitHead":"master","readme":"","owner":{"name":"angeloashmore","avatar":"https://github.com/angeloashmore.png","link":"https://github.com/angeloashmore"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","gatsby-source-plugin"],"computedKeywords":[],"computedMetadata":{},"created":1501875183669,"modified":1560468982334,"lastPublisher":{"name":"angeloashmore","email":"angeloashmore@me.com","avatar":"https://gravatar.com/avatar/7504e0b621ce6cd4f76f811dba32fb46","link":"https://www.npmjs.com/~angeloashmore"},"owners":[{"email":"angeloashmore@me.com","name":"angeloashmore","avatar":"https://gravatar.com/avatar/7504e0b621ce6cd4f76f811dba32fb46","link":"https://www.npmjs.com/~angeloashmore"},{"email":"charles@simplesessions.com","name":"simplesessions","avatar":"https://gravatar.com/avatar/79fff52f44d7a9fac142fbbe3bbdb6d8","link":"https://www.npmjs.com/~simplesessions"}],"lastCrawl":"2019-06-24T10:15:26.867Z","_searchInternal":{"concatenatedName":"gatsbysourceprismic","alternativeNames":["gatsbysourceprismic","gatsby source prismic","gatsby-source-prismic"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":6,"objectID":"gatsby-source-prismic","_highlightResult":{"name":{"value":"gatsby-source-prismic","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby source plugin for building websites using prismic.io as a data source","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"angeloashmore","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"gatsby-source-plugin","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"angeloashmore","matchLevel":"none","matchedWords":[]}},{"name":{"value":"simplesessions","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbysourceprismic","matchLevel":"none","matchedWords":[]},{"value":"gatsby source prismic","matchLevel":"none","matchedWords":[]},{"value":"gatsby-source-prismic","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-facebook-pixel","downloadsLast30Days":17862,"downloadsRatio":0.00003913766696058555,"humanDownloadsLast30Days":"17.9k","popular":false,"version":"1.0.3","versions":{"1.0.0":"2017-08-08T20:43:44.371Z","1.0.1":"2017-08-08T20:48:51.454Z","1.0.2":"2017-08-08T21:02:21.106Z","1.0.3":"2017-08-08T21:17:36.000Z"},"tags":{"latest":"1.0.3"},"description":"Gatsby plugin to add facebook pixel onto a site","dependencies":{},"devDependencies":{"babel-cli":"^6.24.1"},"repository":{"url":"https://github.com/gscopet/gatsby-plugin-facebook-pixel","project":"gatsby-plugin-facebook-pixel","user":"gscopet","host":"github.com","path":"","head":"abe59561d913e5086f379093410032966a438a1b","branch":"abe59561d913e5086f379093410032966a438a1b"},"githubRepo":{"user":"gscopet","project":"gatsby-plugin-facebook-pixel","path":"","head":"abe59561d913e5086f379093410032966a438a1b"},"gitHead":"abe59561d913e5086f379093410032966a438a1b","readme":"# gatsby-plugin-facebook-pixel\n\nEasily add Facebook Pixel to your Gatsby site. At this time, 'ViewContent' event is triggered via onRouteUpdate.\n\n## Install\n`npm install --save gatsby-plugin-facebook-pixel`\n\n## How to use\n\n```javascript\n// In your gatsby-config.js\nplugins: [\n {\n resolve: `gatsby-plugin-facebook-pixel`,\n options: {\n pixelId: 'pixel id here',\n },\n },\n]\n```\n","owner":{"name":"gscopet","avatar":"https://github.com/gscopet.png","link":"https://github.com/gscopet"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","facebook pixel"],"computedKeywords":[],"computedMetadata":{},"created":1502225024371,"modified":1502227056000,"lastPublisher":{"name":"gscopet","email":"gbscopet@gmail.com","avatar":"https://gravatar.com/avatar/0d5a35b6cf2857ccacdbe086f12a14f5","link":"https://www.npmjs.com/~gscopet"},"owners":[{"name":"gscopet","email":"gbscopet@gmail.com","avatar":"https://gravatar.com/avatar/0d5a35b6cf2857ccacdbe086f12a14f5","link":"https://www.npmjs.com/~gscopet"}],"lastCrawl":"2019-06-24T10:14:55.708Z","_searchInternal":{"concatenatedName":"gatsbypluginfacebookpixel","alternativeNames":["gatsbypluginfacebookpixel","gatsby plugin facebook pixel","gatsby-plugin-facebook-pixel"],"downloadsMagnitude":5,"jsDelivrPopularity":0},"dependents":0,"humanDependents":"0","changelogFilename":null,"jsDelivrHits":0,"objectID":"gatsby-plugin-facebook-pixel","_highlightResult":{"name":{"value":"gatsby-plugin-facebook-pixel","matchLevel":"none","matchedWords":[]},"description":{"value":"Gatsby plugin to add facebook pixel onto a site","matchLevel":"none","matchedWords":[]},"owner":{"name":{"value":"gscopet","matchLevel":"none","matchedWords":[]}},"keywords":[{"value":"gatsby","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin","matchLevel":"none","matchedWords":[]},{"value":"facebook pixel","matchLevel":"none","matchedWords":[]}],"owners":[{"name":{"value":"gscopet","matchLevel":"none","matchedWords":[]}}],"_searchInternal":{"alternativeNames":[{"value":"gatsbypluginfacebookpixel","matchLevel":"none","matchedWords":[]},{"value":"gatsby plugin facebook pixel","matchLevel":"none","matchedWords":[]},{"value":"gatsby-plugin-facebook-pixel","matchLevel":"none","matchedWords":[]}]}}},{"name":"gatsby-plugin-svgr","downloadsLast30Days":17449,"downloadsRatio":0.00003823273714003232,"humanDownloadsLast30Days":"17.4k","popular":false,"version":"2.0.2","versions":{"0.1.0":"2017-12-16T18:10:57.879Z","0.1.1":"2017-12-19T01:44:15.175Z","0.2.0":"2017-12-22T05:12:01.220Z","0.2.1":"2017-12-31T17:05:51.547Z","1.0.0":"2018-03-25T22:16:13.836Z","1.0.1":"2018-06-16T20:22:41.713Z","2.0.0-alpha":"2018-08-08T23:57:37.083Z","2.0.0":"2018-11-11T01:52:17.698Z","2.0.1":"2018-11-17T01:00:43.621Z","2.0.2":"2019-03-15T16:14:48.299Z"},"tags":{"latest":"2.0.2","next":"2.0.0-alpha"},"description":"Svgr plugin for gatsby","dependencies":{},"devDependencies":{},"repository":{"url":"https://github.com/zabute/gatsby-plugin-svgr","project":"gatsby-plugin-svgr","user":"zabute","host":"github.com","path":"","branch":"master"},"githubRepo":{"user":"zabute","project":"gatsby-plugin-svgr","path":"","head":"master"},"gitHead":"master","readme":"# gatsby-plugin-svgr [![npm version](https://badge.fury.io/js/gatsby-plugin-svgr.svg)](https://badge.fury.io/js/gatsby-plugin-svgr)\n\n[SVGR](https://github.com/smooth-code/svgr) plugin for [Gatsby](https://www.gatsbyjs.org)\n\n> **Note**: The master branch contains the Gatsbyjs V2 compatible version of this plugin. Work on the Gatsbyjs v1 compatible version is on-going in the [v1](https://github.com/zabute/gatsby-plugin-svgr/tree/v1) branch.\n\n## Installing\n\nAs of v2.0, SVGR is declared as a [peer dependency](https://nodejs.org/en/blog/npm/peer-dependencies/). You will need to add `gatsby-plugin-svgr` as well as `@svgr/webpack` to your dependencies.\n\n```console\n$ npm install @svgr/webpack gatsby-plugin-svgr\n```\nor\n```console\n$ yarn add @svgr/webpack gatsby-plugin-svgr\n```\n\n## Setup\n\n### Add it to your `gatsby-config.js`\n\n```js\nmodule.exports = {\n plugins: [\n 'gatsby-plugin-svgr',\n ],\n}\n```\n\n### Options\n\nAny options you configure `gatsby-plugin-svgr` with will be passed on to `svgr` with the exception of `include` and `exclude` (see below). You can [see a full list of SVGR options here](https://github.com/smooth-code/svgr#options) (you want the API override version). SVGR uses [SVGO](https://github.com/svg/svgo) to optimize SVGs; you can configure SVGO using `svgoConfig`; [see SVGO for a full list of configuration options](https://github.com/svg/svgo#what-it-can-do).\n\n```js\nmodule.exports = {\n plugins: [\n {\n resolve: 'gatsby-plugin-svgr',\n options: {\n prettier: true, // use prettier to format JS code output (default)\n svgo: true, // use svgo to optimize SVGs (default)\n svgoConfig: {\n removeViewBox: true, // remove viewBox when possible (default)\n cleanupIDs: true, // remove unused IDs and minify remaining IDs (default)\n },\n },\n },\n ],\n}\n```\n\n**Note**: SVGO does not produce unique IDs when using the `cleanupIDs` option; if you're using SVGs that rely on IDs (e.g. to target template elements with `use`) and include multiple SVGs on the same page you may wish to disable the `cleanupIDs` option to prevent conflicts. Alternately you can disable `svgo` altogether and perform any optimization either manually or through another build process.\n\n### Applying SVGR to only some resources\n\nBy default, SVGR is only used to load resources when loaded via JS (i.e. your stylesheets will fallback to the default loader). If you only want to apply SVGR to some resources, or you want to exclude some resources, you can pass `include` or `exclude` as options. These are passed directly to the SVGR loader as [Conditions](https://webpack.js.org/configuration/module/#condition).\n\n```js\n{\n resolve: 'gatsby-plugin-svgr',\n options: {\n exclude: /some_special_folder/,\n },\n}\n```\n\n## Usage\n\n```jsx\nimport starUrl, { ReactComponent as Star } from './star.svg'\n\nconst App = () => (\n <div>\n <img src={starUrl} alt=\"star\" />\n <Star />\n </div>\n)\n```\n","owner":{"name":"zabute","avatar":"https://github.com/zabute.png","link":"https://github.com/zabute"},"deprecated":false,"homepage":null,"license":"MIT","keywords":["gatsby","gatsby-plugin","svgr"],"computedKeywords":[],"computedMetadata":{},"created":1513447857879,"modified":1559272843966,"lastPublisher":{"name":"coreyward","email":"corey.atx@gmail.com","avatar":"https://gravatar.com/avatar/51a224bc83750d654f6d102c2055449b","link":"https://www.npmjs.com/~coreyward"},"owners":[{"email":"arde987@gmail.com","name":"zabute","avatar":"https://gravatar.com/avatar/9866182c26636bd02cc780fd09a2e0ae","link":"https://www.npmjs.com/~zabute"},{"email":"corey.atx@gmail.com","name":"coreyward","avatar":"https://gravatar.com/avatar/51a224bc83750d654f6d102c2055
View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment