{"bugs":{"url":"https://github.com/gatsbyjs/gatsby/issues"},"dist":{"shasum":"5f3e309c79cb96e9328db172603ae81f840ec54e","tarball":"https://registry.npmjs.org/gatsby-admin/-/gatsby-admin-0.8.10.tgz","fileCount":1492,"integrity":"sha512-Z76PHZGdzMR0YYg5xEq+hg/uAvQay4mQWmFAZFOk9mYrv4CQpKbjcBm2FIV/ChzL5agWA5dK0qUMqKSwJzH/9w==","signatures":[{"sig":"MEYCIQDdiVcxYpcLYiFkHrMZx0qMe10hB1r3tcftU6Sbgw+PvwIhAPsgQbIBhTfEpxzTs1imfoUCdfMoYAXUi1v6ja/U5vqy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":13666146,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgRiz0CRA9TVsSAnZWagAAU7MP/RAqogKUpyeoHAyiHyp4\nX5C+xhvjc+DN1ebwIjWCkHODmnLR2Gsq47igmxGlbgxwW4v5HBQ3N/JjtF+X\n3Qs4+xoeceCCdIW/8fyz3dK9jOJ7JI7hFJSgtaf4VkWeAdQBE1HvFm9J9wnT\nhcNVNGucjTV2NOEAF7qucqWzQjs7gPaWCE/reuyI1pD8MGeXH6quI1xyPN50\ncDotUcGry0WGvCFH3Kw6MJzNxN2ORdPA9OxMeutmmxVk6nSHfLLi9a9CMezp\nwwIJcZaqjYpdsxCgs2DyHuimqkJp9Es6oL8AS54VqgcwmkTu54AKPbfMG9RV\nUwHmXlYJyegklHE5ib0stxRy93jGtWOHF8ja9TE4YA+NXDHg5oZ1p+13LKzF\nzFSllt5KV6DkVfy2GmtFbWAcBKGfUUgJQKdPhrLTaj/kkQWhWLvF7sAxND8M\nIqBfbLIpxjcVzGYEEUQxcgvP/B6vYz2nqZX31oMW54evnGBjTUUEWkiqylx5\nJnBJdTXlrdGwNv7ccCdTbTEhSMHVcdouripYKT6zlgNjkCgaXnaYS55cP3UL\nFWjvot0CVHRFrBwbjq9fyiedP9RjhMt32/282YY5IJwYMjhj2n+JBZvEGN/H\nJdEsBxAd8VzMYZCsgJ3ro7KWY+2Mi6d9afVm3s4ppChUCnSFlYTtKGYR1QyT\nrjJT\r\n=jIzz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","name":"gatsby-admin","author":{"name":"Max Stoiber"},"readme":"# Gatsby Admin\n\nA visual interface to configure your Gatsby site. Currently alpha testing.\n\n## Getting started\n\nFor now, Gatsby Admin is marked as experimental and requires a flag to enable. Add the following flag when using `gatsby develop`:\n\n```shell\nGATSBY_EXPERIMENTAL_ENABLE_ADMIN=true gatsby develop\n```\n\nOr in the `scripts` section of your `package.json`:\n\n```json\n{\n  \"develop\": \"GATSBY_EXPERIMENTAL_ENABLE_ADMIN=true gatsby develop\"\n}\n```\n\n**Note**: If you’re on Windows you should install [`cross-env`](https://www.npmjs.com/package/cross-env) and prepend your script, e.g.:\n\n```json\n{\n  \"develop\": \"cross-env GATSBY_EXPERIMENTAL_ENABLE_ADMIN=true gatsby develop\"\n}\n```\n\nOnce you run `gatsby develop` with the flag enabled, you can visit `http://localhost:8000/___admin` to view Admin for your Gatsby site!\n\n![Gatsby Admin homepage showing a list of installed plugins, as well as a search input to search for plugins to install](https://user-images.githubusercontent.com/7525670/95580804-36df9200-0a38-11eb-80a7-fbd847a13da1.png)\n\nWhen you select an installed plugin or search for a new one, you will be able to install/uninstall/configure it:\n\n![Gatsby Admin plugin page showing the README of the gatsby-plugin-sitemap, as well as an input field to configure the options for said plugin](https://user-images.githubusercontent.com/7525670/95580764-27f8df80-0a38-11eb-9f26-8a2cbbc4b07d.png)\n\nLet us know what you think by hitting the \"Send feedback\" button in Admin or commenting in [the Admin umbrella issue](https://github.com/gatsbyjs/gatsby/issues/27402)!\n\n## Troubleshooting\n\nAdmin does not support all `gatsby-config.js` formats. If yours is not supported, we'd love if you could share what it looks like in the [umbrella issue](https://github.com/gatsbyjs/gatsby/issues/27402)!\n\n## Technical documentation\n\n### Architecture\n\nThe Gatsby Admin interface (this package) is a standard Gatsby site.\n\nIt uses [theme-ui](https://theme-ui.com) (with the [strict-ui](https://github.com/system-ui/theme-ui/pull/719) experimental extension) and [gatsby-interface](https://github.com/gatsby-inc/gatsby-interface) for styling.\n\nIt fetches its data from the [gatsby-recipes GraphQL server](https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-recipes/src/graphql-server), which exposes all the information Admin needs about the locally running Gatsby site, using [urql](https://github.com/FormidableLabs/urql).\n\nIt also listens to the [`gatsby develop` status server](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby/src/commands/develop.ts), which exposes information about whether you changed the config files and need to restart the develop process.\n\n#### Service Discovery\n\n`gatsby develop` automatically starts both the GraphQL and status server. However, both of these use random ports.\n\nTo discover where they are (and whether they are already running) there is a service discovery mechanism in `gatsby-core-utils`. It stores the ports of the running Gatsby site(s) at `~/.config/gatsby/sites/<pathhash>/<servername>.json`.\n\nAdmin can then fetch `http://localhost:8000/___services` (where `:8000` is the well-known port of the running site), which returns a list of all the random ports used by the site:\n\n```\n$ curl http://localhost:8000/___services | jq\n{\n  \"developproxy\": {\n    \"port\": 8000\n  },\n  \"developstatusserver\": {\n    \"port\": 60731\n  },\n  \"recipesgraphqlserver\": {\n    \"port\": 50400\n  }\n}\n```\n\nThat's how the Admin frontend knows to connect to `http://localhost:50400/graphql` to connect to the GraphQL server, and `http://localhost:60731` to connect to the develop status server.\n\n#### Production Deployment\n\nTo avoid clashing with the local site and potential issues with shadowing, `gatsby develop` statically serves the built files from the [develop parent proxy](https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby/src/utils/develop-proxy.ts).\n\nTo avoid issues with yarn, lerna, and circular dependencies, `gatsby-admin` copies its built files to `gatsby/gatsby-admin-public` which is then published to npm. While not an ideal solution, it fixes the issue and works relatively reliably.\n\n### Development\n\n#### Running it locally\n\nThe easiest way to work on Admin locally is to develop Admin itself.\n\n1. Make sure to have the dependencies installed by running `yarn` in the root folder\n2. Start the develop process for the Admin site by running `yarn workspace gatsby-admin run develop`\n\n> If you see eslint errors you'll need to temporarily replace all references to `___loader` with `window.___loader` in `packages/gatsby-link/index.js`.\n\n#### Running it on a local site\n\nTo try Admin with one of your sites locally, use the `gatsby-dev-cli` to copy the local versions of `gatsby`, `gatsby-cli`, `gatsby-recipes`, `gatsby-core-utils` and `gatsby-admin` into your project:\n\n```shell\n# Make sure to build the latest local versions of all packages\n~/gatsby\nyarn run watch\n\n~/my-gatsby-site\n$ gatsby-dev --packages gatsby gatsby-cli gatsby-recipes gatsby-core-utils gatsby-admin\n\n# In another tab, start your site with the Admin feature flag set\n~/my-gatsby-site\n$ GATSBY_EXPERIMENTAL_ENABLE_ADMIN=true gatsby develop\n```\n\nThen visit `http://localhost:8000/\\_\\_\\_admin` and you should see Gatsby Admin for your site!\n","gitHead":"37079abc11e1763cce7e67059c8974dbdb1d84dd","license":"MIT","scripts":{"build":"node ../gatsby/dist/bin/gatsby.js build --prefix-paths","watch":"nodemon --watch src --ext js,ts,tsx,json --exec \"yarn run build\"","develop":"gatsby develop","prebuild":"rimraf public","postbuild":"ncp public ../gatsby/gatsby-admin-public"},"_npmUser":{"name":"pieh","email":"misiek.piechowiak@gmail.com"},"homepage":"https://github.com/gatsbyjs/gatsby/tree/master/packages/gatsby-admin#readme","deprecated":"This package will no longer receive updates.","repository":{"url":"git+https://github.com/gatsbyjs/gatsby.git","type":"git","directory":"packages/gatsby-admin"},"_npmVersion":"lerna/3.22.1/node@v12.18.2+x64 (darwin)","description":"A visual interface to configure your Gatsby site. Currently alpha testing.","directories":{},"maintainers":[{"name":"rachelbahl","email":"rachel@gatsbyjs.com"},{"name":"dschau","email":"dustinschau@gmail.com"},{"name":"jamo","email":"jamo@isotalo.fi"},{"name":"kylemathews","email":"mathews.kyle@gmail.com"},{"name":"pieh","email":"misiek.piechowiak@gmail.com"},{"name":"sidharthachatterjee","email":"me@sidharthachatterjee.com"},{"name":"wardpeet","email":"ward@coding-tech.com"},{"name":"vladar","email":"vladimir.razuvaev@gmail.com"},{"name":"tylerbarnes","email":"tyler@known.design"},{"name":"ascorbic","email":"m@mk.gg"},{"name":"fk","email":"sechskilo@gmail.com"},{"name":"smthomas","email":"shane@codekarate.com"},{"name":"lekoarts","email":"lekoarts@gmail.com"},{"name":"laurieontech","email":"npm.laurie@gmail.com"},{"name":"mxstbr","email":"contact@mxstbr.com"}],"_nodeVersion":"12.18.2","_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ncp":"^2.0.0","yup":"^0.32.8","urql":"^1.11.6","react":"^16.12.0","formik":"^2.2.6","gatsby":"^2.32.10","rimraf":"^3.0.2","csstype":"^2.6.14","nodemon":"^2.0.7","theme-ui":"^0.4.0-rc.14","lodash-es":"^4.17.20","react-dom":"^16.12.0","strict-ui":"^0.2.0-0","typescript":"^3.9.7","react-icons":"^3.11.0","query-string":"^6.13.8","react-helmet":"^6.1.0","normalize.css":"^8.0.1","@emotion/react":"^11.1.4","react-markdown":"^4.3.1","@emotion/styled":"^11.0.0","remove-markdown":"^0.3.0","gatsby-interface":"^0.0.244","socket.io-client":"2.4.0","@feedback-fish/react":"^1.2.1","prism-react-renderer":"^1.1.1","react-error-boundary":"^3.1.0","gatsby-source-graphql":"^2.14.0","gatsby-plugin-webfonts":"^1.1.4","@types/socket.io-client":"^1.4.35","react-instantsearch-dom":"^5.7.0","gatsby-plugin-typescript":"^2.12.1","@typescript-eslint/parser":"^2.34.0","subscriptions-transport-ws":"^0.9.18","@types/react-instantsearch-dom":"^5.2.6","@typescript-eslint/eslint-plugin":"^2.34.0"},"_npmOperationalInternal":{"tmp":"tmp/gatsby-admin_0.8.10_1615211763424_0.9593922491163778","host":"s3://npm-registry-packages"},"_id":"gatsby-admin@0.8.10","version":"0.8.10"}