{"_id":"@benbravo73/backstage-plugin-backchat","_rev":"4-121fe80642b0bd6724f2e4f2090528d4","name":"@benbravo73/backstage-plugin-backchat","dist-tags":{"latest":"0.0.5"},"versions":{"0.0.1":{"name":"@benbravo73/backstage-plugin-backchat","version":"0.0.1","description":"A quick and dirty frontend plugin that integrates a GenAI feature into Backstage","main":"src/index.ts","types":"src/index.ts","publishConfig":{"access":"public","main":"dist/index.esm.js","types":"dist/index.d.ts"},"backstage":{"role":"frontend-plugin"},"sideEffects":false,"scripts":{"start":"backstage-cli package start","build":"backstage-cli package build","lint":"backstage-cli package lint","lint:all":"backstage-cli repo lint","test":"backstage-cli package test","clean":"backstage-cli package clean","prepack":"backstage-cli package prepack","postpack":"backstage-cli package postpack","fix":"backstage-cli repo fix","prepublish":"yarn tsc -p tsconfig.json && yarn run build && yarn test --watchAll=false"},"repository":{"type":"git","url":"git+https://github.com/benwilcock/backstage-plugin-backchat.git"},"keywords":["backstage","genai","generative","ai","ai","localai","private-ai","private","ai"],"author":{"name":"@benbravo73"},"license":"Apache-2.0","bugs":{"url":"https://github.com/benwilcock/backstage-plugin-backchat/issues"},"homepage":"https://github.com/benwilcock/backstage-plugin-backchat#readme","dependencies":{"@backstage/core-components":"^0.13.5","@backstage/core-plugin-api":"^1.6.0","@backstage/theme":"^0.4.2","@material-ui/core":"^4.9.13","@material-ui/icons":"^4.9.1","@material-ui/lab":"^4.0.0-alpha.60","react-use":"^17.2.4"},"peerDependencies":{"react":"^16.13.1 || ^17.0.0"},"devDependencies":{"@backstage/cli":"^0.22.13","@backstage/core-app-api":"^1.10.0","@backstage/dev-utils":"^1.0.21","@backstage/test-utils":"^1.4.3","@testing-library/jest-dom":"^5.10.1","@testing-library/react":"^12.1.3","@testing-library/user-event":"^14.0.0","msw":"^1.0.0","react":"^17.2.4","react-dom":"^17.2.4","react-router":"^6.3.0","react-router-dom":"^6.3.0"},"resolutions":{"@types/react":"^17.2.4","@types/react-dom":"^17"},"configSchema":"config.d.ts","licenseText":"                                 Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"[]\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright [yyyy] [name of copyright owner]\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n","_id":"@benbravo73/backstage-plugin-backchat@0.0.1","dist":{"shasum":"05b5bfe2ec2cd0179874575f67adb7d747dd5481","integrity":"sha512-dPb/W6EDo2Dxpd4fNwIe6XjEkMR1puTxCzOmNPwOHGFhinaS3H+1C8oOnBWh78GymPKU2jg3BvKpDT+QyRj4cw==","tarball":"https://registry.npmjs.org/@benbravo73/backstage-plugin-backchat/-/backstage-plugin-backchat-0.0.1.tgz","fileCount":14,"unpackedSize":23158,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHp65p/KcFrNP7F+LmRZlBu5YwgNix7pVcW4/seRQJjtAiEAiy9x3Riv5C+2fpDBm8SXMwPIOaMto199MAZf62lxxkc="}]},"_npmUser":{"name":"benbravo73","email":"benwilcock@gmail.com"},"directories":{},"maintainers":[{"name":"benbravo73","email":"benwilcock@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/backstage-plugin-backchat_0.0.1_1697200792276_0.2412029033075036"},"_hasShrinkwrap":false},"0.0.2":{"name":"@benbravo73/backstage-plugin-backchat","version":"0.0.2","description":"A quick and dirty frontend plugin that integrates a GenAI feature into Backstage","main":"src/index.ts","types":"src/index.ts","publishConfig":{"access":"public","main":"dist/index.esm.js","types":"dist/index.d.ts"},"backstage":{"role":"frontend-plugin"},"sideEffects":false,"scripts":{"start":"backstage-cli package start","build":"backstage-cli package build","lint":"backstage-cli package lint","lint:all":"backstage-cli repo lint","test":"backstage-cli package test","clean":"backstage-cli package clean","prepack":"backstage-cli package prepack","postpack":"backstage-cli package postpack","fix":"backstage-cli repo fix","prepublish":"yarn tsc -p tsconfig.json && yarn run build && yarn test --watchAll=false"},"repository":{"type":"git","url":"git+https://github.com/benwilcock/backstage-plugin-backchat.git"},"keywords":["backstage","genai","generative","ai","ai","localai","private-ai","private","ai"],"author":{"name":"@benbravo73"},"license":"Apache-2.0","bugs":{"url":"https://github.com/benwilcock/backstage-plugin-backchat/issues"},"homepage":"https://github.com/benwilcock/backstage-plugin-backchat#readme","dependencies":{"@backstage/core-components":"^0.13.5","@backstage/core-plugin-api":"^1.6.0","@backstage/theme":"^0.4.2","@material-ui/core":"^4.9.13","@material-ui/icons":"^4.9.1","@material-ui/lab":"^4.0.0-alpha.60","react-use":"^17.2.4"},"peerDependencies":{"react":"^16.13.1 || ^17.0.0"},"devDependencies":{"@backstage/cli":"^0.22.13","@backstage/core-app-api":"^1.10.0","@backstage/dev-utils":"^1.0.21","@backstage/test-utils":"^1.4.3","@testing-library/jest-dom":"^5.10.1","@testing-library/react":"^12.1.3","@testing-library/user-event":"^14.0.0","msw":"^1.0.0","react":"^17.2.4","react-dom":"^17.2.4","react-router":"^6.3.0","react-router-dom":"^6.3.0"},"resolutions":{"@types/react":"^17.2.4","@types/react-dom":"^17"},"configSchema":"config.d.ts","licenseText":"                                 Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"[]\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright [yyyy] [name of copyright owner]\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n","_id":"@benbravo73/backstage-plugin-backchat@0.0.2","dist":{"shasum":"de48bb1c4e748a486302709bb55f8f618324a356","integrity":"sha512-99kpirgVJjS6Lv+fU4Ja1iuupg08kiJq2+lSy52IABpE+5AaWECXFcRK0tj2P7JWPTfn/OE44DmQzNvs+w8vHQ==","tarball":"https://registry.npmjs.org/@benbravo73/backstage-plugin-backchat/-/backstage-plugin-backchat-0.0.2.tgz","fileCount":14,"unpackedSize":26233,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAhrXg0d2hb+Oij6+vxGlaFBIW01yBspHpZCOIwlBNVbAiEAjtOwbpKENH6jKGHQa/MZEfxWCqo7m8QlnRsErT/sCfU="}]},"_npmUser":{"name":"benbravo73","email":"benwilcock@gmail.com"},"directories":{},"maintainers":[{"name":"benbravo73","email":"benwilcock@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/backstage-plugin-backchat_0.0.2_1697205431474_0.8268005835778534"},"_hasShrinkwrap":false},"0.0.3":{"name":"@benbravo73/backstage-plugin-backchat","version":"0.0.3","description":"A quick and dirty frontend plugin that integrates a GenAI feature into Backstage","main":"src/index.ts","types":"src/index.ts","publishConfig":{"access":"public","main":"dist/index.esm.js","types":"dist/index.d.ts"},"backstage":{"role":"frontend-plugin"},"sideEffects":false,"scripts":{"start":"backstage-cli package start","build":"backstage-cli package build","lint":"backstage-cli package lint","lint:all":"backstage-cli repo lint","test":"backstage-cli package test","clean":"backstage-cli package clean","prepack":"backstage-cli package prepack","postpack":"backstage-cli package postpack","fix":"backstage-cli repo fix","prepublish":"yarn tsc -p tsconfig.json && yarn run build && yarn test --watchAll=false"},"repository":{"type":"git","url":"git+https://github.com/benwilcock/backstage-plugin-backchat.git"},"keywords":["backstage","genai","generative","ai","ai","localai","private-ai","private","ai"],"author":{"name":"@benbravo73"},"license":"Apache-2.0","bugs":{"url":"https://github.com/benwilcock/backstage-plugin-backchat/issues"},"homepage":"https://github.com/benwilcock/backstage-plugin-backchat#readme","dependencies":{"@backstage/core-components":"^0.13.5","@backstage/core-plugin-api":"^1.6.0","@backstage/theme":"^0.4.2","@material-ui/core":"^4.9.13","@material-ui/icons":"^4.9.1","@material-ui/lab":"^4.0.0-alpha.60","react-use":"^17.0.2"},"peerDependencies":{"react":"^16.13.1 || ^17.0.2"},"devDependencies":{"@backstage/cli":"^0.22.13","@backstage/core-app-api":"^1.10.0","@backstage/dev-utils":"^1.0.21","@backstage/test-utils":"^1.4.3","@testing-library/jest-dom":"^5.10.1","@testing-library/react":"^12.1.3","@testing-library/user-event":"^14.0.0","msw":"^1.0.0","react":"^17.0.2","react-dom":"^17.0.2","react-router":"^6.3.0","react-router-dom":"^6.3.0"},"resolutions":{"@types/react":"^17.0.68","@types/react-dom":"^17.0.2"},"configSchema":"config.d.ts","licenseText":"                                 Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"[]\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright [yyyy] [name of copyright owner]\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n","_id":"@benbravo73/backstage-plugin-backchat@0.0.3","dist":{"shasum":"05454c51a654434d830e776bf12b8a285742a7a3","integrity":"sha512-zPdVWNYSXU/sAPxkwyhdwJcUuKM+DB4TSt/HNsRvqa3zpTK2ik+4u9l3nXbtz1CxiC6+OHw+vL/LgiA3Xmo9HQ==","tarball":"https://registry.npmjs.org/@benbravo73/backstage-plugin-backchat/-/backstage-plugin-backchat-0.0.3.tgz","fileCount":14,"unpackedSize":26623,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIB5zx9yfCNYVIVJu0Ck7fSJr4ZA259Ckkq44ivBpbnFgAiEAtUnRT6hIXT3yfmQqH7USMaODXY54PT4fASVn2B7LKI4="}]},"_npmUser":{"name":"benbravo73","email":"benwilcock@gmail.com"},"directories":{},"maintainers":[{"name":"benbravo73","email":"benwilcock@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/backstage-plugin-backchat_0.0.3_1697207891534_0.10108140969025836"},"_hasShrinkwrap":false},"0.0.4":{"name":"@benbravo73/backstage-plugin-backchat","version":"0.0.4","description":"A quick and dirty frontend plugin that integrates a GenAI feature into Backstage","main":"src/index.ts","types":"src/index.ts","publishConfig":{"access":"public","main":"dist/index.esm.js","types":"dist/index.d.ts"},"backstage":{"role":"frontend-plugin"},"sideEffects":false,"scripts":{"start":"backstage-cli package start","build":"backstage-cli package build","lint":"backstage-cli package lint","lint:all":"backstage-cli repo lint","test":"backstage-cli package test","clean":"backstage-cli package clean","prepack":"backstage-cli package prepack","postpack":"backstage-cli package postpack","fix":"backstage-cli repo fix","prepublish":"yarn tsc -p tsconfig.json && yarn run build && yarn test --watchAll=false"},"repository":{"type":"git","url":"git+https://github.com/benwilcock/backstage-plugin-backchat.git"},"keywords":["backstage","genai","generative","ai","ai","localai","private-ai","private","ai"],"author":{"name":"@benbravo73"},"license":"Apache-2.0","bugs":{"url":"https://github.com/benwilcock/backstage-plugin-backchat/issues"},"homepage":"https://github.com/benwilcock/backstage-plugin-backchat#readme","dependencies":{"@backstage/core-components":"^0.13.5","@backstage/core-plugin-api":"^1.6.0","@backstage/theme":"^0.4.2","@material-ui/core":"^4.9.13","@material-ui/icons":"^4.9.1","@material-ui/lab":"^4.0.0-alpha.60","react-use":"^17.0.2"},"peerDependencies":{"react":"^16.13.1 || ^17.0.2"},"devDependencies":{"@backstage/cli":"^0.22.13","@backstage/core-app-api":"^1.10.0","@backstage/dev-utils":"^1.0.21","@backstage/test-utils":"^1.4.3","@testing-library/jest-dom":"^5.10.1","@testing-library/react":"^12.1.3","@testing-library/user-event":"^14.0.0","msw":"^1.0.0","react":"^17.0.2","react-dom":"^17.0.2","react-router":"^6.3.0","react-router-dom":"^6.3.0"},"resolutions":{"@types/react":"^17.0.68","@types/react-dom":"^17.0.2"},"configSchema":"config.d.ts","licenseText":"                                 Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"[]\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright [yyyy] [name of copyright owner]\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n","_id":"@benbravo73/backstage-plugin-backchat@0.0.4","dist":{"shasum":"7c433bed7403a4ab61350b7cff3e3a26ad728a6a","integrity":"sha512-I5FW81fhe1q3fB6Opa/Ev4Yf6laF7TMJgoOvPmxQXaSWvAPTHTPEw2mR/2WyZ802h1hyT31PCPsn6wNeLXjopw==","tarball":"https://registry.npmjs.org/@benbravo73/backstage-plugin-backchat/-/backstage-plugin-backchat-0.0.4.tgz","fileCount":14,"unpackedSize":34487,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFe7OlHTAqHr8A+sFqs1sPexw+UX1wj/uvJVEngax9GtAiBXEBI+6RJexeJfuBbTrK9XgZrma9s8e8L5sB7GzNI4sw=="}]},"_npmUser":{"name":"benbravo73","email":"benwilcock@gmail.com"},"directories":{},"maintainers":[{"name":"benbravo73","email":"benwilcock@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/backstage-plugin-backchat_0.0.4_1704467222222_0.34089379463163394"},"_hasShrinkwrap":false},"0.0.5":{"name":"@benbravo73/backstage-plugin-backchat","version":"0.0.5","description":"A quick and dirty frontend plugin that integrates a GenAI feature into Backstage","main":"src/index.ts","types":"src/index.ts","publishConfig":{"access":"public","main":"dist/index.esm.js","types":"dist/index.d.ts"},"backstage":{"role":"frontend-plugin"},"sideEffects":false,"scripts":{"start":"backstage-cli package start","build":"backstage-cli package build","lint":"backstage-cli package lint","lint:all":"backstage-cli repo lint","test":"backstage-cli package test","clean":"backstage-cli package clean","prepack":"backstage-cli package prepack","postpack":"backstage-cli package postpack","fix":"backstage-cli repo fix","prepublish":"yarn tsc -p tsconfig.json && yarn run build && yarn test --watchAll=false"},"repository":{"type":"git","url":"git+https://github.com/benwilcock/backstage-plugin-backchat.git"},"keywords":["backstage","genai","generative","ai","ai","localai","private-ai","private","ai"],"author":{"name":"@benbravo73"},"license":"Apache-2.0","bugs":{"url":"https://github.com/benwilcock/backstage-plugin-backchat/issues"},"homepage":"https://github.com/benwilcock/backstage-plugin-backchat#readme","dependencies":{"@backstage/core-components":"^0.13.5","@backstage/core-plugin-api":"^1.6.0","@backstage/theme":"^0.4.2","@material-ui/core":"^4.9.13","@material-ui/icons":"^4.9.1","@material-ui/lab":"^4.0.0-alpha.60","react-use":"^17.0.2"},"peerDependencies":{"react":"^16.13.1 || ^17.0.2"},"devDependencies":{"@backstage/cli":"^0.22.13","@backstage/core-app-api":"^1.10.0","@backstage/dev-utils":"^1.0.21","@backstage/test-utils":"^1.4.3","@testing-library/jest-dom":"^5.10.1","@testing-library/react":"^12.1.3","@testing-library/user-event":"^14.0.0","msw":"^1.0.0","react":"^17.0.2","react-dom":"^17.0.2","react-router":"^6.3.0","react-router-dom":"^6.3.0"},"resolutions":{"@types/react":"^17.0.68","@types/react-dom":"^17.0.2"},"configSchema":"config.d.ts","licenseText":"                                 Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"[]\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright [yyyy] [name of copyright owner]\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n","_id":"@benbravo73/backstage-plugin-backchat@0.0.5","dist":{"shasum":"e98a5e203d57522891e72fe96476656e110b41cf","integrity":"sha512-HWcZRKEGVc1xqHev/3Mwcgyail3h8guMJGSJ4LEX98U0FeA/V2yitJQ2b/B37/p8F0iE3WPcsZ6tSpiWGImnMQ==","tarball":"https://registry.npmjs.org/@benbravo73/backstage-plugin-backchat/-/backstage-plugin-backchat-0.0.5.tgz","fileCount":14,"unpackedSize":34513,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHsz79fl6J6Z4/On64SYwpaX3Ubho9CHBoS/PFZ7sW7YAiEA6kbThCwqEvqet1wq1dSk6XpAPLCqQZuFiO0m00fpEgs="}]},"_npmUser":{"name":"benbravo73","email":"benwilcock@gmail.com"},"directories":{},"maintainers":[{"name":"benbravo73","email":"benwilcock@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/backstage-plugin-backchat_0.0.5_1704721166765_0.5620768211235214"},"_hasShrinkwrap":false}},"time":{"created":"2023-10-13T12:39:52.144Z","0.0.1":"2023-10-13T12:39:52.432Z","modified":"2024-01-08T13:39:27.108Z","0.0.2":"2023-10-13T13:57:11.766Z","0.0.3":"2023-10-13T14:38:11.892Z","0.0.4":"2024-01-05T15:07:02.447Z","0.0.5":"2024-01-08T13:39:26.948Z"},"maintainers":[{"name":"benbravo73","email":"benwilcock@gmail.com"}],"description":"A quick and dirty frontend plugin that integrates a GenAI feature into Backstage","homepage":"https://github.com/benwilcock/backstage-plugin-backchat#readme","keywords":["backstage","genai","generative","ai","ai","localai","private-ai","private","ai"],"repository":{"type":"git","url":"git+https://github.com/benwilcock/backstage-plugin-backchat.git"},"author":{"name":"@benbravo73"},"bugs":{"url":"https://github.com/benwilcock/backstage-plugin-backchat/issues"},"license":"Apache-2.0","readme":"# Backstage Plugin Backchat\n\nA simple **proof of concept** that allows you to experiment with multiple private AI servers in Backstage.\n\n__I'd love some help to turn Backchat into something more. Please feel free to contact me directly on [LinkedIn](https://www.linkedin.com/in/benwilcock/) or GitHub if you'd like to contribute to this project!__\n\n<figure><img src=\"./img/backchat-architecture.jpg\" alt=\"The Backchat Plugin Architecture\" width=\"640px\" height=\"360px\"><figcaption>The Backchat Plugin Architecture (Current State).</figcaption></figure>\n\n## Installing The Plugin\n\nFollow the steps below to get the plugin installed into your Backstage instance. I wrote this plugin against Backstage v1.18.4.\n\n## Prerequisites\n\nHere's what you will need before you get started:\n\n* A Backstage instance (follow [this guide](https://backstage.io/docs/getting-started/))\n* Docker, LocalAI and ChatbotUI, or Text Gen Web UI, or Ollama Web UI. Clone [this](https://github.com/benwilcock/backstagecon-2023) project for a `docker-compose.yaml` that will get you setup in a few minutes.\n* Some patience.\n* An open mind so yu can imagine what the possibilities could be...\n\n## Step 1. Create A Backstage Instance\n\nIf you don't have a backstage instance yet, create one using the instructions [here](https://backstage.io/docs/getting-started/).\n\nAt the time of writing, the command that you need to do this is:\n\n```bash\n# Only works if you installed all the pre-requisites the command needs!\nnpx @backstage/create-app@latest\n```\n\nThe Backstage installer will start. When prompted, choose a name for you instance, like `my-instance`.\n\n## Step 3: Start The AI Server\n\nClone [this project](https://github.com/benwilcock/backstagecon-2023) somewhere other than the backstage instance folder and read through the [README](https://github.com/benwilcock/backstagecon-2023/blob/main/README.md) file. A small amount of configuration and setup is required.\n\n> This project uses `docker compose` to run a couple of large language model servers and a user interfaces where you can chat locally (and privately) to an open-source AI at zero cost. The speed of this solution is very much hardware dependant. If you're running Backstage and an LLM locally at the same time, make sure you have plenty of RAM and be very patient. If you have a separate server with CUDA, these servers can be reconfigured to make use of it.\n\nOnce you have configured and started the AI servers in Docker, you can check the ChatbotUI GUI is available by pointing your browser at [http://localhost:3001](http://localhost:3001), and that Text Gen Web UI is available by pointing your browser at [http://localhost:7860](http://localhost:7860).\n\n> Tip: If you don't want to run your own AI servers locally then why not try [RunPod](https://www.runpod.io/)? RunPod offers a whole bunch of [ready to run community templates](https://www.runpod.io/console/templates) with a broad selection of different hardware configurations. Just be mindful of how this choice may impact your data security and privacy before you make your decision. \n\n## Step 2. Add The AI Server Config To Backstage\n\nCreate a local configuration file in your backstage instance.\n\n```bash\ncd my-instance\ntouch app-config.local.yaml\n```\n\nAdd the following config to your new `app-config.local.yaml` file:\n\n```yaml\n# Mandatory: Choose one URL to incorporate, either ChatbotUI or TextGenWebUI.\nai_server:\n  # Integrate the Chatbot UI GUI (the default, uses LocalAI server).\n  url: \"http://localhost:3001\" \n  # To integrate the Ollama Web UI (uses Ollama server) uncomment the next line.\n  # url: \"http://localhost:3100\"\n  # To integrate the Text Generation Web UI (incorporates its own server)  uncomment the next line\n  # url: \"http://localhost:7860\"\n  # To integrate the Big-AGI UI (can use multiple servers)  uncomment the next line\n  # url: \"http://localhost:3456\" \n\n# Optional: You can also load this Backstage catalog that contains a system diagram and TechDocs for Backchat.\ncatalog:\n  locations:\n    - type: url\n      target: https://github.com/benwilcock/backstagecon-2023/blob/main/backchat-catalog.yaml\n  rules:\n    - allow: [Component, API, Resource, System, Domain, Location, Group, User]\n```\n\n## Step 3: Add The Backchat Plugin To Your Backstage Instance\n\nUse the `yarn add` command to add the plugin to your Backstage instance.\n\n```bash\ncd my-instance\nyarn add --cwd packages/app @benbravo73/backstage-plugin-backchat\n```\n\nNavigate to your `packages/app/src/App.tsx` and refactor to include the following declarations.\n\n```typescript\nimport {BackchatPage} from '@benbravo73/backstage-plugin-backchat'\n...\n<FlatRoutes>\n        ....\n        <Route path=\"/backchat\" element={<BackchatPage />} />\n</FlatRoutes>\n```\n\nAt this stage, you can already make the plugin appear in your browser at [http://localhost:3000/backchat](http://localhost:3000/backchat). But read on to complete the installation.\n\n## Step 4: Add The Backchat Feature To Your Backstage Navigation Menu\n\nTo integrate your plugin with the rest of the UI, you need to add an entry into the side navigation.\n\nIn the file `packages/app/src/components/Root/Root.tsx` add an import for the \"Chat\" icon and a sidebar item for \"Backchat AI\" like this:\n\n```javascript\n...\n// With the other icon imports at the top of the file.\nimport ChatIcon from '@material-ui/icons/Chat';\n...\n\n...\n// With the other SidebarItem's under the \"Menu\" SidebarGroup.\n<SidebarItem icon={ChatIcon} to=\"backchat\" text=\"Backchat AI\" />\n...\n```\n\n## Step 5: Start Backstage\n\nIn the root folder of your Backstage instance, start backstage with the following command.\n\n```bash\nyarn dev\n```\n\nA browser window may automatically open. If it does not, try http://localhost:3000. Upon loading of Backstage you should now see a new sidebar item for \"Backchat AI.\" The feature won't work yet. You need to start the LLM clients and servers. Continue to the next step.\n\n## Step 6: Start The LLM Containers\n\nClone [this project](https://github.com/benwilcock/backstagecon-2023) somewhere other than the backstage instance folder and read through the [README](https://github.com/benwilcock/backstagecon-2023/blob/main/README.md) file. A small amount of configuration and setup is required.\n\n> This project uses `docker compose` to run a couple of large language model servers and a user interfaces where you can chat locally (and privately) to an open-source AI at zero cost. The speed of this solution is very much hardware dependant. If you're running Backstage and an LLM locally at the same time, make sure you have plenty of RAM and be very patient. If you have a separate server with CUDA, these servers can be reconfigured to make use of it.\n\nOnce you have configured and started the AI servers in Docker, you can check the ChatbotUI GUI is available by pointing your browser at [http://localhost:3001](http://localhost:3001), and that Text Gen Web UI is available by pointing your browser at [http://localhost:7860](http://localhost:7860).\n\n> Tip: If you don't want to run your own AI servers locally then why not try [RunPod](https://www.runpod.io/)? RunPod offers a whole bunch of [ready to run community templates](https://www.runpod.io/console/templates) with a broad selection of different hardware configurations. Just be mindful of how this choice may impact your data security and privacy before you make your decision. \n\n## Step 7: Chat With Backchat\n\nNow you have integrated the Backchat plugin, started Backstage, and started your LLM containers, navigate to Backstage and try the new sidebar item \"Backstage AI.\" Your configured Chat GUI will load. Begin chatting with your AI!\n\n## Tips\n\nAs you have a choice of which AI system you integrate using Backchat, here is some information to help you decide.\n\n### ChatBot UI and LocalAI Server\n\nThe original (and default) choice. ChatBotUI and LocalAI has a nice look and feel. The ChatbotUI project is a bit dated now and the LocalAI server can be a challenge to understand when it comes to model loading and swapping, but overall the combination looks great for PoCs.\n\n<figure><img src=\"./img/chatbotui.png\" alt=\"The Backchat plugin after integration with ChatbotUI\" width=\"640px\" height=\"360px\"><figcaption>Exposing <a href=\"https://github.com/mckaywrigley/chatbot-ui\">ChatBotUI</a> in the Backstage GUI.</figcaption></figure>\n\n### Ollama Web UI and Ollama\n\nThis client server combination is possibly the easiest to get started with. It features a built in model downloader with access to lots of models, switches between models easily, loads the default model automatically, and has a nice Chat interface that resembles ChatGPT. Try it!\n\n<figure><img src=\"./img/ollamawebui.png\" alt=\"The Backchat plugin after integration with Ollama web UI\" width=\"640px\"><figcaption>Exposing <a href=\"https://github.com/mckaywrigley/chatbot-ui\">Ollama Web UI</a> in the Backstage GUI.</figcaption></figure>\n\n### Text Generation Web UI (GUI and Server)\n\nThe Text Gen Web UI has a lot of features - which can make it seem daunting at first. But, the \"chat\" features is very simple to use and it has a great model download / load workflow and works well with Mistral. Just don't for get to \"Load\" your model before starting your chat session.\n\n<figure><img src=\"./img/textgenwebui.png\" alt=\"The Backchat plugin after integration with TextGenWebUI\" width=\"640px\" height=\"360px\"><figcaption>Exposing <a href=\"https://github.com/oobabooga/text-generation-webui\">Text Gen Web UI</a> in the Backstage GUI.</figcaption></figure>\n\n### Big-AGI UI (GUI Compatible With Multiple Servers)\n\nBig AGI is a web client for multiple LLM API servers and services. It can talk to LocalAI server, Text Gen Web UI server (Oobabooga) and Ollama server. It can have all these servers configured at the same time and switch easily between them using the model selector in the GUI. It has a number of useful configuration options and offers suggested \"personas\" which you can switch between.\n\n<figure><img src=\"./img/big-agi-ui.png\" alt=\"The Backchat plugin after integration with Ollama web UI\" width=\"640px\"><figcaption>Exposing <a href=\"https://github.com/enricoros/big-agi\">Big-AGI Web UI</a> in the Backstage GUI.</figcaption></figure>\n\n## And Finally...\n\nEnjoy the Backchat plugin and the **private** conversations you have with your AI! Don't forget to star this repo on GitHub and follow me on [LinkedIn](https://www.linkedin.com/in/benwilcock/) so you'll be notified when I post new content.\n\n## Roadmap\n\nWhat I'd really like to do is to transform this Backchat plugin into a fully integrated OpenAI API client, but I need your help. Interested? Contact me directly on [LinkedIn](https://www.linkedin.com/in/benwilcock/) or GitHub if you'd like to contribute!\n\nRoadmap suggestions:\n\n* Create a native OpenAI API GUI client plugin in Backstage (using common Backstage GUI widgets) that can chat to any endpoint providing the necessary API compatibility (local or in the cloud).\n* Allow users to switch the GUI to prompt any LLM model currently provided by the backend LLM server\n* Allow the user to specify temperature and other common LLM settings\n* Store chats\n* Store prompts\n* Store settings by model\n* Offer multi-modal use cases like whisper translation or stable diffusion image generation etc.\n\n<figure><img src=\"./img/backchat-architecture-target.jpg\" alt=\"The Backchat Plugin Architecture In The Future\" width=\"640px\" height=\"360px\"><figcaption>The Backchat Plugin Architecture (Future State).</figcaption></figure>\n\n## Testing\n\nYou can run the plugin in isolation for testing.\n\n```bash\nyarn start # Starts the plugin in standalone mode for testing\n```\n\n> Note to self: I added some bash scripts to remind me of some common commands required after cloning this repo.\n\n## Alternatives?\n\nDon't like this approach? Already a ChatGPT subscriber? Why not try [this plugin from Enfuse](https://github.com/enfuse/backstage-chatgpt-plugin/blob/main/README.md) instead?","readmeFilename":"README.md"}