{"_id":"@adamlonsdale/backstage-plugin-armorcode","_rev":"1-7903f0e5988da4699a8b7c5049cc0b30","name":"@adamlonsdale/backstage-plugin-armorcode","dist-tags":{"latest":"0.0.4"},"versions":{"0.0.1-alpha":{"name":"@adamlonsdale/backstage-plugin-armorcode","version":"0.0.1-alpha","main":"src/index.ts","types":"src/index.ts","license":"Apache-2.0","homepage":"https://github.com/adamlonsdale/backstage-plugin-armorcode","bugs":{"url":"https://github.com/adamlonsdale/backstage-plugin-armorcode/issues"},"repository":{"type":"git","url":"https://github.com/adamlonsdale/backstage-plugin-armorcode.git"},"keywords":["Armorcode","Vulnerability","Backstage"],"publishConfig":{"access":"public","main":"dist/index.esm.js","types":"dist/index.d.ts"},"backstage":{"role":"frontend-plugin"},"scripts":{"start":"backstage-cli package start","build":"backstage-cli package build","lint":"backstage-cli package lint","test":"backstage-cli package test","clean":"backstage-cli package clean","prepack":"backstage-cli package prepack","postpack":"backstage-cli package postpack"},"dependencies":{"@backstage/catalog-model":"^1.1.3","@backstage/core-components":"^0.12.0","@backstage/core-plugin-api":"^1.1.0","@backstage/errors":"^1.1.3","@backstage/plugin-catalog-react":"^1.2.1","@backstage/theme":"^0.2.16","@material-ui/core":"^4.12.2","@material-ui/icons":"^4.9.1","@material-ui/lab":"4.0.0-alpha.57","chart.js":"^4.0.1","react-chartjs-2":"^5.0.1","react-use":"^17.2.4"},"peerDependencies":{"react":"^16.13.1 || ^17.0.0"},"devDependencies":{"@backstage/cli":"^0.21.1","@backstage/core-app-api":"^1.2.0","@backstage/dev-utils":"^1.0.8","@backstage/test-utils":"^1.2.2","@testing-library/jest-dom":"^5.10.1","@testing-library/react":"^12.1.3","@testing-library/user-event":"^14.0.0","@types/node":"^16.11.26","cross-fetch":"^3.1.5","msw":"^0.47.0"},"description":"Welcome to the `backstage-plugin-armorcode` plugin for Backstage!","_id":"@adamlonsdale/backstage-plugin-armorcode@0.0.1-alpha","dist":{"shasum":"73f19b04f1aa9bde483c48fe50a32e080c036803","integrity":"sha512-2WSdGJ5+gwsvt8MNgAqFp+Ho35Jp+1PBQhJwDSog3nvBM8ac2uLw2y6NNKVbBw9H4vQdRyFl0ksAaipOvtfl7A==","tarball":"https://registry.npmjs.org/@adamlonsdale/backstage-plugin-armorcode/-/backstage-plugin-armorcode-0.0.1-alpha.tgz","fileCount":16,"unpackedSize":41005,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD1c1ucfwBgOnNdlH2UKtmE5d3OIHuycEiC41PLhtuvZgIhAPiCe0nqq5q8akAuZRtrgM6KNDsvb+LiWw7/xAYyptKB"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkFzE3ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpL2w//QakAYG7q9FXZr5Z+gPM9KASJhHDkqRShkv9msUYrjfZ5apQ0\r\nFqrxAZIxYGosN5aJYsEViO+HfVnbBI0y2b3QtwJEo7fu1S+E8svcxISd1tUI\r\nCmSViXKhn99sOumLUsuIsCzSTddZ6lXq8j+sdkzUdyEaBU+TBnlc1a2f5+c5\r\nMAo7RWe+d+U3gewLxgQKMdcC/ND5ZliL1YqMgFyiU4YYjFEBy2fn8peyZR4e\r\nmU8iaHc9C3f9BpM5jpBXWCKitDBVIEVaAztDFPi6PE2OWUvgMVUIM5C4nS47\r\njTFuVRhP0KURtLkidBbBn31qlbu6ndrcwqEqYLCFBIOo8Q6tRygoBB4TNGop\r\nBgar349nnlZydRPHCTGhpD9VyiIxi1whZ+b9nQEB/tHIT+dXwfN9ct90OVOv\r\nQQbkuexy5o8bus/oKgZZyVD9BbNUct5TuMwdeD0tqgDpJESB6MNJuYasc5H2\r\neNIkcN35tJYD73OyOrGyO96J2SQzqDgKEHy4gTPRax5T6pLCqvgZFqtBzlWI\r\nyD4dVPVtAEjSw/tMRkxFlu4AUswfG//uI6BkjDK3O8JBFjdP9Guft7oEzsy0\r\n5IDWryp8CQv2Aq8mEMfGoXc1rYv371c4ONlJRA7hm/lhiw6v/OE7KTc8LISe\r\njRjvBegZhQH6dGjxMCj/RyX+tsHqBYpyHdI=\r\n=0G3d\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"adamlonsdale","email":"adamlonsdale@me.com"},"directories":{},"maintainers":[{"name":"adamlonsdale","email":"adamlonsdale@me.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/backstage-plugin-armorcode_0.0.1-alpha_1679241527654_0.46428822757390753"},"_hasShrinkwrap":false},"0.0.4":{"name":"@adamlonsdale/backstage-plugin-armorcode","version":"0.0.4","main":"src/index.ts","types":"src/index.ts","license":"Apache-2.0","homepage":"https://github.com/adamlonsdale/backstage-plugin-armorcode","bugs":{"url":"https://github.com/adamlonsdale/backstage-plugin-armorcode/issues"},"repository":{"type":"git","url":"https://github.com/adamlonsdale/backstage-plugin-armorcode.git"},"keywords":["Armorcode","Vulnerability","Backstage"],"publishConfig":{"access":"public","main":"dist/index.esm.js","types":"dist/index.d.ts"},"backstage":{"role":"frontend-plugin"},"scripts":{"start":"backstage-cli package start","build":"backstage-cli package build","lint":"backstage-cli package lint","test":"backstage-cli package test","clean":"backstage-cli package clean","prepack":"backstage-cli package prepack","postpack":"backstage-cli package postpack"},"dependencies":{"@backstage/catalog-model":"^1.1.3","@backstage/core-components":"^0.12.0","@backstage/core-plugin-api":"^1.1.0","@backstage/errors":"^1.1.3","@backstage/plugin-catalog-react":"^1.2.1","@backstage/theme":"^0.2.16","@material-ui/core":"^4.12.2","@material-ui/icons":"^4.9.1","@material-ui/lab":"4.0.0-alpha.57","chart.js":"^4.0.1","react-chartjs-2":"^5.0.1","react-use":"^17.2.4"},"peerDependencies":{"react":"^16.13.1 || ^17.0.0"},"devDependencies":{"@backstage/cli":"^0.21.1","@backstage/core-app-api":"^1.2.0","@backstage/dev-utils":"^1.0.8","@backstage/test-utils":"^1.2.2","@testing-library/jest-dom":"^5.10.1","@testing-library/react":"^12.1.3","@testing-library/user-event":"^14.0.0","@types/node":"^16.11.26","cross-fetch":"^3.1.5","msw":"^0.47.0"},"description":"Welcome to the `backstage-plugin-armorcode` plugin for Backstage!","_id":"@adamlonsdale/backstage-plugin-armorcode@0.0.4","dist":{"shasum":"5e07247b86a5b6ea3e30208611487d97bc5a2c33","integrity":"sha512-8S+5W5fpun1Fpu/Qq/+ZJcDUdpBGTY8eIyNY9ne3UFBkTd0R4Le4J80HhCzzzA0f8A6thIRjtQPqJmvVVMdY6A==","tarball":"https://registry.npmjs.org/@adamlonsdale/backstage-plugin-armorcode/-/backstage-plugin-armorcode-0.0.4.tgz","fileCount":16,"unpackedSize":36263,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF4xiZb7Hq8zrHdYMxRv39uQ2zKyXKCpSMHFUFnROLpZAiEAsAiwDVDumQniBCw6wOM+nFnJjQsKJe6CZR7C1Czg3g0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkRHWWACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpKnRAAgjhBwLEox0llf+XLXJnLyimsGC7b6TEGiOzk1te8s/DQ/2Sq\r\nGLx8iAeXT9WdaCyJ5RhFgxd+MB7Gll2axd9p1sowfa4Lz7F4K7DlQM9TWN/B\r\nrREBshyRUnDQMQHPLbyulFz3FPp/TH5t9rLoE9A9+XiA6RQjP2lkIFgvFPOl\r\n7/FzN+fWBQTaEqeM83PDZSnbIda/5M7yu8Kxh7ytFIkkNis0Ns+t5ad/UYML\r\nn2558cLTotAWWgtqpjhhyRUL1m8g1Nh5/0c7VYeZGJvia6/FXpx6A/uzXYVz\r\nYkiThzNvibf/j2rB1DcQJJeo4u4DZh5gKDYlhFrU+WfWJDvVac6q0IB6px1t\r\nOqoK2mHKW53eIOvM76ggsTfjF+oQyNKApXBYaWyqJxb8TImlptKdldmgr6Xg\r\n9g7IbVQ10ZenR++H0tA6OnKyZ4q+G6DwKd5d7mOcL+s7P+4DiprGde1g/Iyu\r\ng2zCU1mabgSknNPLUsPo9Yi9pC6sCq8knJBkSuRGqGiXB86lvb9SpUU17mjB\r\nWONYXKZIsxNLkoWvKAT7VMMQOEXb5Y5YUsQDaJkTLyIpmYXoLbDaZYbdlfdz\r\ns4imTQ9c7mW+qldK/XvdiLL/hGH4v8K8KgrUcaM0W5Dp5mkWLnaTEZ2w09MY\r\nHUGxgkAhl7Y0qmmAtl8uqPshsN09PGN56ZI=\r\n=YNsk\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"adamlonsdale","email":"adamlonsdale@me.com"},"directories":{},"maintainers":[{"name":"adamlonsdale","email":"adamlonsdale@me.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/backstage-plugin-armorcode_0.0.4_1682208150280_0.4217053977282761"},"_hasShrinkwrap":false}},"time":{"created":"2023-03-19T15:58:47.569Z","0.0.1-alpha":"2023-03-19T15:58:47.854Z","modified":"2023-04-23T00:02:30.643Z","0.0.4":"2023-04-23T00:02:30.527Z"},"maintainers":[{"name":"adamlonsdale","email":"adamlonsdale@me.com"}],"description":"Welcome to the `backstage-plugin-armorcode` plugin for Backstage!","homepage":"https://github.com/adamlonsdale/backstage-plugin-armorcode","keywords":["Armorcode","Vulnerability","Backstage"],"repository":{"type":"git","url":"https://github.com/adamlonsdale/backstage-plugin-armorcode.git"},"bugs":{"url":"https://github.com/adamlonsdale/backstage-plugin-armorcode/issues"},"license":"Apache-2.0","readme":"# backstage-plugin-armorcode\n\nWelcome to the `backstage-plugin-armorcode` plugin for Backstage!\n\n## Getting started\n\n### Example Renders\n\nOverview Page - Armorcode Vulnerability Chart - (Example image here when ready)\n\nService Entry Page - Armorcode Vulnerabilities List - Example image here when ready)\n\n### Prerequisites\n\nPlease ensure the following steps have been undertaken and installed prior to this plugin configuration.\n\n#### Armorcode Backend\n\nYou need to install and configure the [Armorcode Backend Plugin](https://github.com/adamlonsdale/backstage-plugin-armorcode-backend) before configuring the frontend.\n\n## Installation\n\nFirst add the relevant packages to your existing installation of Backstage\n\n```bash\n# From your Backstage root directory\nyarn add --cwd packages/app @adamlonsdale/backstage-plugin-armorcode\n```\n\n`Note: You have 2 Options, you can setup both too`\n\n### Vulnerability Chart Overview (Optional)\n\nAdd the Armorcode Vulnerability chart into your entity overview page\n\nImport the plugin to `packages/app/src/components/catalog/EntityPage.tsx`.\n\n#### EntityPage.tsx\n\n```typescript\nimport { ArmorcodeCard } from '@adamlonsdale/backstage-plugin-armorcode';\n\n// ...\n\nconst overviewContent = (\n  <Grid container spacing={3} alignItems=\"stretch\">\n    {entityWarningContent}\n    <Grid item md={6}>\n      <EntityAboutCard variant=\"gridItem\" />\n    </Grid>\n    \n    // ...\n    \n    <Grid item md={4} xs={12}>\n      <ArmorcodeCard />\n    </Grid>\n\n    // ...\n\n    <Grid item md={8} xs={12}>\n      <EntityHasSubcomponentsCard variant=\"gridItem\" />\n    </Grid>    \n  </Grid>\n);\n```\n\n### Vulnerabilities List (Optional)\n\nAdd the Armorcode Vulnerabilities List into the Service Entity page.\n\nImport the plugin to `packages/app/src/components/catalog/EntityPage.tsx`\n\n#### EntityPage.tsx\n\n```typescript\n// ...\nimport { ArmorcodePage } from '@adamlonsdale/backstage-plugin-armorcode';\n// ...\nconst serviceEntityPage = (\n  <EntityLayout>\n    <EntityLayout.Route path=\"/\" title=\"Overview\">\n      {overviewContent}\n    </EntityLayout.Route>\n\n    <EntityLayout.Route path=\"/ci-cd\" title=\"CI/CD\">\n      {cicdContent}\n    </EntityLayout.Route>\n\n    // ...\n\n    <EntityLayout.Route path=\"/armorcode\" title=\"Armorcode\">      \n      <ArmorcodePage />    \n    </EntityLayout.Route>\n\n    // ...\n\n  </EntityLayout>\n);\n```\n\n> Note: It is possible to hide the Armorcode service entity tab for those projects without Armorcode configured in the catalog-info.yaml\n\n```typescript\nimport { ArmorcodePage, isArmorcodeAvailable } from '@adamlonsdale/backstage-plugin-armorcode';\n\n// ...\n\n<EntityLayout.Route if={isArmorcodeAvailable} path=\"/armorcode\" title=\"Armorcode\">      \n  <ArmorcodePage />    \n</EntityLayout.Route>\n\n```\n\n## Configuration\n\nAdd the following into your `app-config.yaml`\n\n### Config\n\n```yaml\narmorcode:\n  host: https://app.armorcode.com\n  token: YOUR_API_TOKEN\n```\n\nAdd the following into your catalog-info.yaml\n\n### Catalog\n\n```yaml\napiVersion: backstage.io/v1alpha1\nkind: Component\nmetadata:\n  name: backstage\n  annotations:\n    armorcode/project: YOUR_PROJECT_NAME/YOUR_PROJECT_VERSION\n```\n","readmeFilename":"README.md"}