No description
  • TypeScript 83.2%
  • JavaScript 5.2%
  • HTML 4.3%
  • Python 3.8%
  • CSS 3.5%
Find a file
florian 8bdcd604c0
All checks were successful
CI / build (push) Successful in 1m3s
Merge pull request 'Configure Renovate' (#9) from renovate/configure into main
Reviewed-on: #9
2026-06-14 02:49:33 +02:00
.github/workflows chore: scaffold greenroom catalog and docs app 2026-03-23 21:45:01 +01:00
app Dogfood Greenroom with repo-owned catalog info 2026-03-27 15:52:25 +01:00
components Dogfood Greenroom with repo-owned catalog info 2026-03-27 15:52:25 +01:00
content Dogfood Greenroom with repo-owned catalog info 2026-03-27 15:52:25 +01:00
docs Retake README entity screenshot for dogfood entity 2026-03-27 16:06:40 +01:00
docs-site Fix docs handoff export and verification issues 2026-03-27 15:14:34 +01:00
foundation foundation: document minimal Backstage-native catalog foundation, API surface and extension guidance 2026-03-25 11:48:14 +01:00
lib Dogfood Greenroom with repo-owned catalog info 2026-03-27 15:52:25 +01:00
scripts techdocs-lite: add lightweight TechDocs ingestion scaffolding (ingest/nav + render) 2026-03-25 11:47:47 +01:00
techdocs-lite Fix docs handoff export and verification issues 2026-03-27 15:14:34 +01:00
tests Dogfood Greenroom with repo-owned catalog info 2026-03-27 15:52:25 +01:00
workflow-state/projects/greenroom/backlog Stabilize Greenroom integration quality gates 2026-03-25 14:45:35 +01:00
.gitignore Stabilize Greenroom integration quality gates 2026-03-25 14:45:35 +01:00
catalog-info.yaml Dogfood Greenroom with repo-owned catalog info 2026-03-27 15:52:25 +01:00
docs-index.png fix typecheck 2026-03-24 10:40:44 +01:00
docs-overview.png fix typecheck 2026-03-24 10:40:44 +01:00
next-env.d.ts chore: scaffold greenroom catalog and docs app 2026-03-23 21:45:01 +01:00
next.config.ts chore: scaffold greenroom catalog and docs app 2026-03-23 21:45:01 +01:00
package-lock.json feat: US-005 - Catalog listing UI for Backstage kinds 2026-03-24 16:18:49 +01:00
package.json feat: US-005 - Catalog listing UI for Backstage kinds 2026-03-24 16:18:49 +01:00
progress-2e15fbac-5d28-4f1f-b5e4-e66163df6874.txt feat: US-002-1 - Add catalog data helpers and test harness 2026-03-24 00:31:22 +01:00
progress-3c7e3b1d-4c81-45b1-b656-c5d76a3013aa.txt feat: US-001 - Backstage entity schema and ref validation 2026-03-24 16:34:17 +01:00
progress-37ca5dfe-efe6-4f63-bf25-8001f364d421.txt feat: US-002-01 - Harden catalog grouping and filtering utilities 2026-03-24 01:09:35 +01:00
progress-afb33984-0308-4201-b9de-34a904bf2f51.txt feat: US-004-4 - Add previous/next navigation on doc pages 2026-03-24 07:09:34 +01:00
progress-bbfcfe63-4bbc-4502-a368-f0188ceb9f31.txt feat: US-003-3 - Render relationship panels and warnings on catalog pages 2026-03-24 04:36:15 +01:00
progress-e39b16bd-86d5-4fee-800b-fce005b60469.txt feat: US-002-03 - Wire catalog page to apply filters and display grouped results 2026-03-24 02:08:30 +01:00
README.md Retake README entity screenshot for dogfood entity 2026-03-27 16:06:40 +01:00
renovate.json Add renovate.json 2026-06-14 00:44:49 +00:00
screenshot-dev-portal.png fix typecheck 2026-03-24 10:40:44 +01:00
screenshot-platform.png fix typecheck 2026-03-24 10:40:44 +01:00
tsconfig.json feat: US-003-3 - Render relationship panels and warnings on catalog pages 2026-03-24 04:36:15 +01:00
visual-catalog.png chore: update progress log for US-003 2026-03-24 16:24:03 +01:00
vitest.config.ts feat: US-005 - Catalog listing UI for Backstage kinds 2026-03-24 16:18:49 +01:00
workflow-roles.json greenroom-backstage-core-003 2026-03-24 20:40:17 +01:00

🟢 Greenroom

Modern internal developer portal focused on Backstage-compatible catalog-info.yaml ingestion, fast discovery, TechDocs, MADR, relationships, relationship graphs, and Mermaid-first documentation.

Next.js React TypeScript Vitest Backstage catalog

TL;DR

Greenroom is a modern, file-first IDP that treats catalog-info.yaml as the primary contract and ships a fast discovery UX, TechDocs-style docs, MADR-friendly content, Mermaid rendering, and relationship graphs without the operational weight of a full Backstage deployment.

Why Greenroom

Greenroom is a lean, file-first alternative to a heavier Backstage installation:

  • catalog-info.yaml is the contract, not a side import path
  • discovery stays fast and local with in-repo content
  • TechDocs and MADR stay markdown-first
  • relationship traversal uses familiar Backstage semantics
  • Mermaid diagrams render directly inside the product

The current target is a minimal drop-in replacement for Spotify Backstage for teams that want a modern 2026 UX without the operational weight of a larger plugin platform.

🧭 Current Focus

  • Backstage-style catalog ingestion with normalized entity references
  • catalog pages for domains, systems, components, APIs, resources, and locations
  • relationship panels, graph traversal, and graph-oriented entity navigation
  • TechDocs-lite docs with sidebar navigation and previous/next flows
  • MADR/ADR-friendly authoring
  • Mermaid diagrams with graceful fallback behavior

🖼️ Screenshots

Home

Greenroom home page with catalog and docs overview

Catalog landing page with discovery-oriented entry points into entities and docs.

Catalog Entity

Greenroom repo-owned catalog entity page with documentation links

Entity detail surface with ownership, graph traversal, relationships, Mermaid diagrams, and broken-reference visibility.

Docs View

Greenroom documentation page rendered from Markdown with docs navigation

Markdown-first docs shell with TechDocs-style reading flow and adjacent navigation.

🚀 Quick Start

npm install
npm run dev

Open http://localhost:3000.

🧱 What You Get

Area Included in the MVP
Catalog Backstage-style entity loading from catalog-info.yaml, normalized refs, slugged routes
Discovery Kind grouping, owner/tag/query filtering, catalog landing page, detail navigation
Docs Markdown docs, TechDocs-lite navigation, previous/next links
Architecture Mermaid blocks, relationship graph traversal, entity graph views
Governance ADR/MADR-friendly docs structure, repo-native authoring flow
Quality Vitest coverage, TypeScript checks, fast local feedback loop

🏗️ Product Shape

Greenroom keeps the core model intentionally small:

  • Org -> Team -> System -> Component
  • plus Backstage-native Domain, API, Resource, and Location support already present in this repo

Core building blocks:

  • Next.js App Router
  • TypeScript
  • file-based content
  • markdown docs
  • Mermaid blocks in markdown fences

🔎 Discovery And Graphs

Greenroom already exposes catalog relationships without inventing a custom DSL.

GET /api/catalog/entities/relations/:kind/:namespace/:name

The current graph surface includes:

  • ownership via spec.owner
  • containment via spec.domain, spec.system, spec.subdomainOf, spec.subcomponentOf
  • API edges via spec.providesApis, spec.consumesApis
  • dependency edges via spec.dependsOn, spec.dependencyOf
  • reverse neighbor collections for domains, systems, components, APIs, resources, providers, consumers, and dependents
  • broken reference reporting for unresolved catalog refs

Catalog detail pages currently expose:

  • breadcrumbs for graph traversal
  • grouped neighbor cards and relation filters
  • relationship diagram controls with graph-local edge filters plus a hierarchy-focused exploration preset
  • kind-specific panels for systems, components, APIs, resources, and providers/consumers
  • broken-reference warnings when sample or real catalog content is inconsistent

🛠️ Local Development

Useful scripts:

npm run dev
npm run build
npm run typecheck
npm run test

Useful entry points:

📁 Content Layout

content/
  catalog/
    orgs/
    teams/
    systems/
    apis/
    docs/
  docs/
  templates/

Key content and roadmap docs:

🗺️ Roadmap

Near-term feature stories from docs/roadmap/feature-dev-stories.md:

  • US-001 Catalog schema and validation
  • US-002 Catalog index and facet filters
  • US-003 Entity relationship panels
  • US-004 Docs navigation shell
  • US-005 Mermaid-safe rendering pipeline
  • US-006 Search across entities and docs
  • US-007 Seed org-level content and contributor templates

Active MVP framing from docs/roadmap/mvp-cycle-001.md:

  • discovery-first catalog experience
  • TechDocs and MADR as first-class content
  • relationship graph and Mermaid-backed architecture views
  • strong tests and fast local iteration

Likely next increments:

  • cross-catalog search across docs and entities
  • richer relationship graph exploration and focused edge filtering
  • stronger spec-link rendering for OpenAPI and AsyncAPI assets
  • contributor templates for teams, systems, APIs, and ADRs

🚧 Explicit Non-Goals For This Cycle

  • full Backstage plugin parity
  • database-backed ingestion or search infrastructure
  • scaffolder execution and workflow engines
  • infrastructure inventory and enterprise tenancy layers

🤝 Authoring Model

Greenroom favors low-friction repo-native authoring:

  • edit markdown
  • edit catalog-info.yaml
  • commit changes
  • preview locally

That keeps adoption simple while still supporting ownership, system context, architecture notes, and diagrams in one place.