{"bugs":{"url":"https://github.com/gatsbyjs/gatsby/issues"},"dist":{"shasum":"e23719b4ae21701b99ab8a6608515382dec8cacc","tarball":"https://registry.npmjs.org/gatsby-admin/-/gatsby-admin-0.25.0.tgz","fileCount":44,"integrity":"sha512-ZPR60Be5SNer0IHZGqU42H5ndz70pCxzjCCPezK21UPPrHbcek+9M49j+4IPBwz+ijXSLxfy02puaylesOk1lA==","signatures":[{"sig":"MEUCIQCGe/ME4rNiqnH7LM6XB127emSFgk5pKkvUHKypWcPFjQIgXBktATmFOVUJFElCsEnNOCd25I6bsgdn+U+ANFly3po=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173301,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjkH5SACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqsZw//R8SJI93wnfvz4g5MCFEyou05fdTXxvRV978rj8R6cGbpSvlI\r\nemg3Y+/tpbWHwibAzdpHqF0TIM04UTgIjgjrNrYf7HmHCv74iqZRv0hgBXEk\r\ne4tfBgVXn4A0VraTamCC+OCD0FUs49Sv5KHMQh6pjBDV7PXgEEHcqksn6VFo\r\niLIXIozsbtboiHc+6SRtjNL/8BPh7hIgBoGhC4e3NB7tE3e+Tu6Guq3gKtjI\r\n28mouuxU0LxBXdYq2co5kEt5L6exzhhwlAU3vUUft1tYfrv88mL6iPCaULke\r\nqUsIpPDuLg9wJnLxIrSiIcxRbubzwACqeOtZlrwF5YpeNhZM5dqY4cOoxtvG\r\nGtsClBLI0h3nTekVrLlLD0qrjDF4lxiUgkH2Kyd3N6M2RkbvOf+f2nBZV670\r\ncua8BYXc1NMXUMAmvUp2xu5XOybsPxnE1ZQtvsaT1faL1ueFiVSXRpjDdJk/\r\n7z4Mm6WjyHfDbEb8Gji0s2ubLdyMCHZ0Od1Ykv/EvBotl86YA9pCUVUQxyl2\r\nhFwImSjDbvY4acrL7Q5+AnErTUOhcBwOlx5vPHZNSuFv/Q5/7buJB6A3in87\r\nYE3bD03DuLYJj/u6cRN+SWekZ2dMvmCwst3oUUysrpnboMqY/VhUHM93K/k7\r\nOBOCCfauGgHV51gPEMkbZkVBvCdKp/iiQ8g=\r\n=ZuB3\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":"c1e67a23e298811afa9273a9698af17aec74589d","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","repository":{"url":"git+https://github.com/gatsbyjs/gatsby.git","type":"git","directory":"packages/gatsby-admin"},"_npmVersion":"lerna/3.22.1/node@v14.18.1+x64 (linux)","description":"A visual interface to configure your Gatsby site. Currently alpha testing.","directories":{},"maintainers":[{"name":"kathmbeck","email":"katherine.beck@gatsbyjs.com"},{"name":"j0sh77","email":"jcjohnson77@gmail.com"},{"name":"tyhopp","email":"hopp.ty.c@gmail.com"},{"name":"kgarbaya","email":"kgarbaya@gmail.com"},{"name":"marvinjudehk","email":"marvinjudehk@gmail.com"},{"name":"dschau","email":"dustinschau@gmail.com"},{"name":"kylemathews","email":"mathews.kyle@gmail.com"},{"name":"pieh","email":"misiek.piechowiak@gmail.com"},{"name":"wardpeet","email":"ward@coding-tech.com"},{"name":"tylerbarnes","email":"tyler@known.design"},{"name":"fk","email":"sechskilo@gmail.com"},{"name":"smthomas","email":"shane@codekarate.com"},{"name":"lekoarts","email":"lekoarts@gmail.com"},{"name":"rachelbahl","email":"rachel@gatsbyjs.com"},{"name":"daniellewgatsby","email":"daniel.lew@gatsbyjs.com"},{"name":"abhiaiyer","email":"abhiaiyer91+npm@gmail.com"},{"name":"mxstbr","email":"contact@mxstbr.com"}],"_nodeVersion":"14.18.1","dependencies":{"@babel/runtime":"^7.15.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ncp":"^2.0.0","yup":"^0.32.9","urql":"^1.11.6","react":"^16.12.0","formik":"^2.2.9","gatsby":"^3.15.0","rimraf":"^3.0.2","csstype":"^2.6.17","nodemon":"^2.0.12","theme-ui":"^0.11.1","lodash-es":"^4.17.21","react-dom":"^16.12.0","strict-ui":"^0.2.0-0","react-icons":"^3.11.0","query-string":"^6.14.1","react-helmet":"^6.1.0","normalize.css":"^8.0.1","@emotion/react":"^11.4.1","react-markdown":"^4.3.1","@emotion/styled":"^11.3.0","path-browserify":"^1.0.1","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.2.1","react-error-boundary":"^3.1.3","gatsby-source-graphql":"^3.15.0","gatsby-plugin-webfonts":"^1.1.4","@types/socket.io-client":"^1.4.36","react-instantsearch-dom":"^5.7.0","gatsby-plugin-typescript":"^3.15.0","@typescript-eslint/parser":"^4.29.3","subscriptions-transport-ws":"^0.9.19","@types/react-instantsearch-dom":"^5.2.6","@typescript-eslint/eslint-plugin":"^4.29.3"},"_npmOperationalInternal":{"tmp":"tmp/gatsby-admin_0.25.0_1670413905843_0.7368016729418492","host":"s3://npm-registry-packages"},"_id":"gatsby-admin@0.25.0","version":"0.25.0"}