{"_id":"@archhypo/plugin-hypo-stage","_rev":"4-981cea5f3a19661bd7936c11ae6d3806","name":"@archhypo/plugin-hypo-stage","dist-tags":{"latest":"1.0.0"},"versions":{"0.1.0":{"name":"@archhypo/plugin-hypo-stage","version":"0.1.0","author":{"url":"https://github.com/ArchHypo","name":"ArchHypo"},"license":"Apache-2.0","_id":"@archhypo/plugin-hypo-stage@0.1.0","maintainers":[{"name":"zeevolution","email":"limajosent@gmail.com"}],"homepage":"https://github.com/ArchHypo/hypo-stage#readme","bugs":{"url":"https://github.com/ArchHypo/hypo-stage/issues"},"dist":{"shasum":"8313a5473955d19e51d377d0c2a4003d91577251","tarball":"https://registry.npmjs.org/@archhypo/plugin-hypo-stage/-/plugin-hypo-stage-0.1.0.tgz","fileCount":85,"integrity":"sha512-hiHfUNlWAJBPfMiwLmiO4U97oBAdTRwhXaWy00i7y9QaFGnGYqiYLNW9hcV+z+aX9+7o3OWaLlke05Jin9vfIA==","signatures":[{"sig":"MEUCIQCsVSkqrNjcy9e3PxxW8wbvkrhOCfYOkUZt292XST5ESwIgJs1sRBI8f6INLR9WrIxB9ba7VEGHk9wsmM8KfUIHNMI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@archhypo%2fplugin-hypo-stage@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":410372},"jest":{"setupFilesAfterEnv":["<rootDir>/setupTests.ts"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"459c44c151115ccadc79e5097148f25132533e7b","scripts":{"lint":"backstage-cli package lint","test":"backstage-cli package test","build":"backstage-cli package build","clean":"backstage-cli package clean","start":"backstage-cli package start","prepack":"backstage-cli package prepack","postpack":"backstage-cli package postpack","build:standalone":"vite build"},"_npmUser":{"name":"zeevolution","email":"limajosent@gmail.com"},"backstage":{"role":"frontend-plugin","pluginId":"hypo-stage","pluginPackages":["@archhypo/plugin-hypo-stage","@archhypo/plugin-hypo-stage-backend"]},"repository":{"url":"git+https://github.com/ArchHypo/hypo-stage.git","type":"git","directory":"hypo-stage"},"_npmVersion":"10.8.2","description":"Frontend plugin for [HypoStage](https://github.com/ArchHypo/hypo-stage): architectural hypothesis management in Backstage. Provides the Hypo Stage UI, pages, and catalog entity integration.","directories":{},"sideEffects":false,"_nodeVersion":"20.20.0","dependencies":{"buffer":"^6.0.3","recharts":"^3.1.2","react-use":"^17.2.4","@backstage/theme":"^0.6.5","@material-ui/lab":"^4.0.0-alpha.61","@material-ui/core":"^4.9.13","@material-ui/icons":"^4.9.1","@backstage/catalog-model":"^1.7.3","@backstage/core-components":"^0.17.1","@backstage/core-plugin-api":"^1.10.6","@backstage/plugin-catalog-react":"^1.15.2","@archhypo/plugin-hypo-stage-backend":"^0.1.0"},"publishConfig":{"main":"dist/index.esm.js","types":"dist/index.d.ts","access":"public"},"_hasShrinkwrap":false,"devDependencies":{"msw":"^1.0.0","vite":"^5.0.0","react":"^16.13.1 || ^17.0.0 || ^18.0.0","eslint":"^8.57.0","react-dom":"^17.0.0 || ^18.0.0","@backstage/cli":"^0.32.0","react-router-dom":"^6.0.0","eslint-plugin-jest":"^28.9.0","@backstage/dev-utils":"^1.1.9","@vitejs/plugin-react":"^4.2.1","@backstage/test-utils":"^1.7.7","@testing-library/react":"^14.0.0","@backstage/core-app-api":"^1.16.1","@testing-library/jest-dom":"^6.0.0","vite-plugin-node-polyfills":"^0.25.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":"^16.13.1 || ^17.0.0 || ^18.0.0","react-router-dom":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/plugin-hypo-stage_0.1.0_1771466565107_0.8467146421140617","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@archhypo/plugin-hypo-stage","version":"0.1.1","author":{"url":"https://github.com/ArchHypo","name":"ArchHypo"},"license":"Apache-2.0","_id":"@archhypo/plugin-hypo-stage@0.1.1","maintainers":[{"name":"zeevolution","email":"limajosent@gmail.com"}],"homepage":"https://github.com/ArchHypo/hypo-stage#readme","bugs":{"url":"https://github.com/ArchHypo/hypo-stage/issues"},"dist":{"shasum":"4b9f563413ffd2f5e38c0906cdf5b239fe979a67","tarball":"https://registry.npmjs.org/@archhypo/plugin-hypo-stage/-/plugin-hypo-stage-0.1.1.tgz","fileCount":85,"integrity":"sha512-O9xccV3eSU0A10qNhzrYiGqSITWKUJRJylF10/eAvPk26Al9XsS/SQvrgqSRXekMe0k/SIWZQZgLPaJ7IMvZ+g==","signatures":[{"sig":"MEUCIGBLVanSX5hCSFw+vMTYOf8kFxpHgtSuWfbJC6BiO130AiEAh2rVX9U9qzawExHke4/OMdFoxkghLlxfyAr+ZPf0YAQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@archhypo%2fplugin-hypo-stage@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":410372},"jest":{"setupFilesAfterEnv":["<rootDir>/setupTests.ts"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"5ce9384c53c53270842684d845a95708e00b9681","scripts":{"lint":"backstage-cli package lint","test":"backstage-cli package test","build":"backstage-cli package build","clean":"backstage-cli package clean","start":"backstage-cli package start","prepack":"backstage-cli package prepack","postpack":"backstage-cli package postpack","build:standalone":"vite build"},"_npmUser":{"name":"zeevolution","email":"limajosent@gmail.com"},"backstage":{"role":"frontend-plugin","pluginId":"hypo-stage","pluginPackages":["@archhypo/plugin-hypo-stage","@archhypo/plugin-hypo-stage-backend"]},"repository":{"url":"git+https://github.com/ArchHypo/hypo-stage.git","type":"git","directory":"hypo-stage"},"_npmVersion":"10.8.2","description":"Frontend plugin for [HypoStage](https://github.com/ArchHypo/hypo-stage): architectural hypothesis management in Backstage. Provides the Hypo Stage UI, pages, and catalog entity integration.","directories":{},"sideEffects":false,"_nodeVersion":"20.20.0","dependencies":{"buffer":"^6.0.3","recharts":"^3.1.2","react-use":"^17.2.4","@backstage/theme":"^0.6.5","@material-ui/lab":"^4.0.0-alpha.61","@material-ui/core":"^4.9.13","@material-ui/icons":"^4.9.1","@backstage/catalog-model":"^1.7.3","@backstage/core-components":"^0.17.1","@backstage/core-plugin-api":"^1.10.6","@backstage/plugin-catalog-react":"^1.15.2","@archhypo/plugin-hypo-stage-backend":"^0.1.0"},"publishConfig":{"main":"dist/index.esm.js","types":"dist/index.d.ts","access":"public"},"_hasShrinkwrap":false,"devDependencies":{"msw":"^1.0.0","vite":"^5.0.0","react":"^16.13.1 || ^17.0.0 || ^18.0.0","eslint":"^8.57.0","react-dom":"^17.0.0 || ^18.0.0","@backstage/cli":"^0.32.0","react-router-dom":"^6.0.0","eslint-plugin-jest":"^28.9.0","@backstage/dev-utils":"^1.1.9","@vitejs/plugin-react":"^4.2.1","@backstage/test-utils":"^1.7.7","@testing-library/react":"^14.0.0","@backstage/core-app-api":"^1.16.1","@testing-library/jest-dom":"^6.0.0","vite-plugin-node-polyfills":"^0.25.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":"^16.13.1 || ^17.0.0 || ^18.0.0","react-router-dom":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/plugin-hypo-stage_0.1.1_1771467407201_0.1311085134978771","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@archhypo/plugin-hypo-stage","version":"0.1.2","author":{"url":"https://github.com/ArchHypo","name":"ArchHypo"},"license":"Apache-2.0","_id":"@archhypo/plugin-hypo-stage@0.1.2","maintainers":[{"name":"zeevolution","email":"limajosent@gmail.com"}],"homepage":"https://github.com/ArchHypo/hypo-stage#readme","bugs":{"url":"https://github.com/ArchHypo/hypo-stage/issues"},"dist":{"shasum":"01ebd769ded9014de78a7f914edd8724ff0d8382","tarball":"https://registry.npmjs.org/@archhypo/plugin-hypo-stage/-/plugin-hypo-stage-0.1.2.tgz","fileCount":85,"integrity":"sha512-9I+mEWAGjx6oPpdmbLqWIETdLHBIiPYyiUzO4/CZR8NKrz0LpZFUCxBYu4JfAvmPr5xtYvh/ZQokT50OUVJ6zg==","signatures":[{"sig":"MEYCIQCiT+TbRKsVdvCdKuEq86a3gY/LVfLm8pEMiBgNsegJDwIhANWzgYVz/jWZnOlHiul/kPOA7r22DPjM9WqbdlPiNeoY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@archhypo%2fplugin-hypo-stage@0.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":410844},"jest":{"setupFilesAfterEnv":["<rootDir>/setupTests.ts"]},"main":"src/index.ts","types":"src/index.ts","gitHead":"0ba2fa93da2a7dad34fe8a487974098929966820","scripts":{"lint":"backstage-cli package lint","test":"backstage-cli package test","build":"backstage-cli package build","clean":"backstage-cli package clean","start":"backstage-cli package start","prepack":"backstage-cli package prepack","postpack":"backstage-cli package postpack","build:standalone":"vite build"},"_npmUser":{"name":"zeevolution","email":"limajosent@gmail.com"},"backstage":{"role":"frontend-plugin","pluginId":"hypo-stage","pluginPackages":["@archhypo/plugin-hypo-stage","@archhypo/plugin-hypo-stage-backend"]},"repository":{"url":"git+https://github.com/ArchHypo/hypo-stage.git","type":"git","directory":"hypo-stage"},"_npmVersion":"10.8.2","description":"Architectural hypothesis management for [Backstage](https://backstage.io). Create, track, and validate architectural assumptions with uncertainty assessment, quality attributes, and technical planning.","directories":{},"sideEffects":false,"_nodeVersion":"20.20.0","dependencies":{"buffer":"^6.0.3","recharts":"^3.1.2","react-use":"^17.2.4","@backstage/theme":"^0.6.5","@material-ui/lab":"^4.0.0-alpha.61","@material-ui/core":"^4.9.13","@material-ui/icons":"^4.9.1","@backstage/catalog-model":"^1.7.3","@backstage/core-components":"^0.17.1","@backstage/core-plugin-api":"^1.10.6","@backstage/plugin-catalog-react":"^1.15.2","@archhypo/plugin-hypo-stage-backend":"^0.1.0"},"publishConfig":{"main":"dist/index.esm.js","types":"dist/index.d.ts","access":"public"},"_hasShrinkwrap":false,"devDependencies":{"msw":"^1.0.0","vite":"^5.0.0","react":"^16.13.1 || ^17.0.0 || ^18.0.0","eslint":"^8.57.0","react-dom":"^17.0.0 || ^18.0.0","@backstage/cli":"^0.32.0","react-router-dom":"^6.0.0","eslint-plugin-jest":"^28.9.0","@backstage/dev-utils":"^1.1.9","@vitejs/plugin-react":"^4.2.1","@backstage/test-utils":"^1.7.7","@testing-library/react":"^14.0.0","@backstage/core-app-api":"^1.16.1","@testing-library/jest-dom":"^6.0.0","vite-plugin-node-polyfills":"^0.25.0","@testing-library/user-event":"^14.0.0"},"peerDependencies":{"react":"^16.13.1 || ^17.0.0 || ^18.0.0","react-router-dom":"^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/plugin-hypo-stage_0.1.2_1771467998204_0.7661711737365235","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@archhypo/plugin-hypo-stage","version":"1.0.0","description":"Backstage frontend plugin for architectural hypotheses, uncertainty/impact tracking, and technical planning.","keywords":["backstage","backstage-plugin","hypothesis","architecture","architectural-decision-records","uncertainty","technical-planning","catalog","archhypo"],"license":"Apache-2.0","author":{"name":"ArchHypo","url":"https://github.com/ArchHypo"},"homepage":"https://github.com/ArchHypo/hypo-stage#readme","bugs":{"url":"https://github.com/ArchHypo/hypo-stage/issues"},"repository":{"type":"git","url":"git+https://github.com/ArchHypo/hypo-stage.git","directory":"hypo-stage"},"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","pluginId":"hypo-stage","pluginPackages":["@archhypo/plugin-hypo-stage","@archhypo/plugin-hypo-stage-backend"]},"sideEffects":false,"scripts":{"start":"backstage-cli package start","build":"backstage-cli package build","build:standalone":"vite 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.7.3","@backstage/core-components":"^0.17.1","@backstage/core-plugin-api":"^1.10.6","@backstage/plugin-catalog-react":"^1.15.2","@backstage/theme":"^0.6.5","@archhypo/plugin-hypo-stage-backend":"^1.0.0","@material-ui/core":"^4.9.13","@material-ui/icons":"^4.9.1","@material-ui/lab":"^4.0.0-alpha.61","buffer":"^6.0.3","react-use":"^17.2.4","recharts":"^3.1.2"},"peerDependencies":{"react":"^16.13.1 || ^17.0.0 || ^18.0.0","react-router-dom":"^6.0.0"},"devDependencies":{"@backstage/cli":"^0.32.0","eslint":"^8.57.0","eslint-plugin-jest":"^28.9.0","@backstage/core-app-api":"^1.16.1","@backstage/dev-utils":"^1.1.9","@backstage/test-utils":"^1.7.7","@testing-library/jest-dom":"^6.0.0","@testing-library/react":"^14.0.0","@testing-library/user-event":"^14.0.0","@vitejs/plugin-react":"^4.2.1","msw":"^1.0.0","react":"^16.13.1 || ^17.0.0 || ^18.0.0","react-dom":"^17.0.0 || ^18.0.0","react-router-dom":"^6.0.0","vite":"^5.0.0","vite-plugin-node-polyfills":"^0.25.0"},"jest":{"setupFilesAfterEnv":["<rootDir>/setupTests.ts"]},"_id":"@archhypo/plugin-hypo-stage@1.0.0","gitHead":"478fdc612d65e1c1b9fd68ea1eeb812beb5706a1","_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-9/CDg55rc8SYgWRTBfeHxgGvz4Qt57FPwtbFGXcIDL8Dhvj/2wc4zMoKOfyqt8SwkuO3RbCLv2OU7w8A8RN9qw==","shasum":"36e2a690cc80c9d6a73598f2d32311e7404b4866","tarball":"https://registry.npmjs.org/@archhypo/plugin-hypo-stage/-/plugin-hypo-stage-1.0.0.tgz","fileCount":85,"unpackedSize":447304,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@archhypo%2fplugin-hypo-stage@1.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDs7KdaEFUEGAWMK6QdBCEde153usRMwOLWS2gj+NRNMAiEA6yU2oH986ycRj3QaNDevbppU9OQgwSIQMgsijUmGGxo="}]},"_npmUser":{"name":"zeevolution","email":"limajosent@gmail.com"},"directories":{},"maintainers":[{"name":"zeevolution","email":"limajosent@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/plugin-hypo-stage_1.0.0_1776033157216_0.5169150343066784"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-19T02:02:45.004Z","modified":"2026-04-12T22:32:37.865Z","0.1.0":"2026-02-19T02:02:45.243Z","0.1.1":"2026-02-19T02:16:47.349Z","0.1.2":"2026-02-19T02:26:38.360Z","1.0.0":"2026-04-12T22:32:37.517Z"},"bugs":{"url":"https://github.com/ArchHypo/hypo-stage/issues"},"author":{"name":"ArchHypo","url":"https://github.com/ArchHypo"},"license":"Apache-2.0","homepage":"https://github.com/ArchHypo/hypo-stage#readme","repository":{"type":"git","url":"git+https://github.com/ArchHypo/hypo-stage.git","directory":"hypo-stage"},"description":"Backstage frontend plugin for architectural hypotheses, uncertainty/impact tracking, and technical planning.","maintainers":[{"name":"zeevolution","email":"limajosent@gmail.com"}],"readme":"# HypoStage (Frontend Plugin)\n\nArchitectural hypothesis management for [Backstage](https://backstage.io). Create, track, and validate architectural assumptions with uncertainty assessment, quality attributes, and technical planning.\n\n**Package:** `@archhypo/plugin-hypo-stage`\n\n> **Important:** This package requires the backend plugin `@archhypo/plugin-hypo-stage-backend` to be installed and configured in the same Backstage app.\n\n---\n\n## Features\n\n- **Hypothesis management** — Create, edit, view, and delete architectural hypotheses\n- **Uncertainty & impact** — Likert-scale assessment with evolution tracking; values are set on creation and can only be changed through technical planning actions\n- **Quality attributes** — Associate hypotheses with performance, security, maintainability, etc.\n- **Technical planning** — Link experiments, spikes, and tasks to hypotheses; optionally reassess uncertainty and impact when creating or editing a plan\n- **Labeled Assessment** — Hypothesis detail view shows clearly labeled chips for Status, Uncertainty, Impact, and Focus\n- **Evolution chart** — Distinct visual markers distinguish manual changes from technical-planning-linked changes, with informative tooltips\n- **Catalog integration** — Optional Hypotheses tab on entity pages; filter by entity and team\n\n---\n\n## Compatibility\n\n- **Backstage:** v1.16.0+\n- **Node.js:** 20+\n- **React:** 16.13, 17, or 18\n\n---\n\n## Installation\n\n### 1. Install packages\n\nFrom your Backstage app root:\n\n```bash\nyarn --cwd packages/app add @archhypo/plugin-hypo-stage\nyarn --cwd packages/backend add @archhypo/plugin-hypo-stage-backend\n```\n\n### 2. Configure routes\n\nIn `packages/app/src/App.tsx`:\n\n```tsx\nimport {\n  HypoStagePage,\n  CreateHypothesisPage,\n  HypothesisPage,\n  EditHypothesisPage,\n} from '@archhypo/plugin-hypo-stage';\n\n// Inside <FlatRoutes>:\n<Route path=\"/hypo-stage\" element={<HypoStagePage />} />\n<Route path=\"/hypo-stage/create-hypothesis\" element={<CreateHypothesisPage />} />\n<Route path=\"/hypo-stage/hypothesis/:hypothesisId\" element={<HypothesisPage />} />\n<Route path=\"/hypo-stage/hypothesis/:hypothesisId/edit\" element={<EditHypothesisPage />} />\n```\n\n### 3. Add sidebar entry\n\nIn `packages/app/src/components/Root/Root.tsx` (or equivalent):\n\n```tsx\nimport LaptopMacIcon from '@material-ui/icons/LaptopMac';\n\n<SidebarItem icon={LaptopMacIcon} to=\"hypo-stage\" text=\"Hypo Stage\" />\n```\n\n### 4. Register the frontend API\n\nIn `packages/app/src/apis.ts`:\n\n```tsx\nimport { discoveryApiRef, fetchApiRef } from '@backstage/core-plugin-api';\nimport { HypoStageApiClient, HypoStageApiRef } from '@archhypo/plugin-hypo-stage';\n\ncreateApiFactory({\n  api: HypoStageApiRef,\n  deps: { discoveryApi: discoveryApiRef, fetchApi: fetchApiRef },\n  factory: ({ discoveryApi, fetchApi }) =>\n    new HypoStageApiClient({ discoveryApi, fetchApi }),\n}),\n```\n\n### 5. Register the backend plugin\n\nIn `packages/backend/src/index.ts`:\n\n```ts\nimport { createBackend } from '@backstage/backend-defaults';\n\nconst backend = createBackend();\n// ... other plugins ...\nbackend.add(import('@archhypo/plugin-hypo-stage-backend'));\nbackend.start();\n```\n\n### 6. Database configuration\n\nThe backend needs a database. Ensure `app-config.yaml` has a database configured. For a dedicated plugin database (recommended), add:\n\n```yaml\nbackend:\n  database:\n    client: pg\n    connection:\n      host: ${POSTGRES_HOST}\n      port: ${POSTGRES_PORT}\n      user: ${POSTGRES_USER}\n      password: ${POSTGRES_PASSWORD}\n      database: backstage\n    plugin:\n      hypo-stage:\n        connection:\n          database: backstage_plugin_hypo_stage\n```\n\nFor SQLite: `client: better-sqlite3`, `connection: ':memory:'` or a file path. Migrations run automatically on backend startup.\n\n---\n\n## Optional: Catalog entity tab\n\nTo show a \"Hypotheses\" tab on catalog entity pages:\n\n1. Import `EntityHypothesesTab` and add it to your `EntityPage` (e.g. in `packages/app/src/components/catalog/EntityPage.tsx`):\n\n```tsx\nimport { EntityHypothesesTab } from '@archhypo/plugin-hypo-stage';\n\n// In the entity page layout:\n<EntityLayout.Route path=\"/hypotheses\" title=\"Hypotheses\">\n  <EntityHypothesesTab />\n</EntityLayout.Route>\n```\n\n2. Control visibility with the `hypo-stage` feature flag (optional). If the Feature Flags API is not registered, the tab is visible by default.\n\n---\n\n## Exports and API\n\n| Export | Description |\n|--------|-------------|\n| `HypoStagePage` | Main list and dashboard |\n| `CreateHypothesisPage` | Create hypothesis form |\n| `HypothesisPage` | Hypothesis detail and technical planning |\n| `EditHypothesisPage` | Edit hypothesis form |\n| `HypoStageApiRef`, `HypoStageApiClient` | API to call the backend |\n| `EntityHypothesesTab` | Catalog entity tab component |\n| `HypothesisForm`, `HypothesisList` | Reusable form and list components |\n\n---\n\n## Documentation\n\nFull documentation, run standalone, and Docker: [github.com/ArchHypo/hypo-stage](https://github.com/ArchHypo/hypo-stage)\n","readmeFilename":"README.md","keywords":["backstage","backstage-plugin","hypothesis","architecture","architectural-decision-records","uncertainty","technical-planning","catalog","archhypo"]}