Registry / devops / backstage-grpc-playground-backend

backstage-grpc-playground-backend

JSON →
library0.3.2jsnpmunverified

A backend plugin for Backstage that enables a gRPC playground interface, similar to BloomRPC. Current stable version is 0.3.2. Released as beta from Zalopay. It integrates with Backstage's database and external integrations to provide gRPC service exploration and testing within Backstage. Unlike standalone gRPC tools, this plugin is tightly coupled to Backstage's plugin environment and uses its authentication and configuration system. It supports loading .proto files via Backstage's catalog and reader.

npm install backstage-grpc-playground-backend
INSTALL
IMPORT
SIG · BACKSTAGE-GRPC-PLA
B
backstage-grpc-playground-backend
devopsjavascriptv0.3.2
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

createRouter
import { createRouter } from 'backstage-grpc-playground-backend'
import createRouter from 'backstage-grpc-playground-backend'
Named export, not default. The package is ESM-only.
createRouter (CommonJS)
const { createRouter } = require('backstage-grpc-playground-backend')
const createRouter = require('backstage-grpc-playground-backend')
Use destructured require for CommonJS; package supports both ESM and CJS.

Shows how to register the gRPC playground backend plugin in a Backstage backend package.

// packages/backend/src/plugins/grpc-playground.ts import { ScmIntegrations } from '@backstage/integration'; import { createRouter } from 'backstage-grpc-playground-backend'; import { Router } from 'express'; import { PluginEnvironment } from '../types'; export default async function createPlugin( env: PluginEnvironment, ): Promise<Router> { const { config, reader } = env; const integrations = ScmIntegrations.fromConfig(config); return await createRouter({ logger: env.logger, reader, integrations, database: env.database, }); } // packages/backend/src/index.ts import grpcPlayground from './plugins/grpc-playground'; // ... inside main const grpcPlaygroundEnv = useHotMemoize(module, () => createEnv('grpc-playground')); apiRouter.use('/grpc-playground', await grpcPlayground(grpcPlaygroundEnv));
Debug
Known issues
breakingRequires Backstage environment with logger, reader, integrations, and database; missing any will cause runtime errors
fix
Ensure your plugin environment provides all required properties as shown in usage.
affects: >=0.1.0
gotchaThe plugin is in beta and may change its API in minor versions
fix
Pin to a specific version and test upgrades.
affects: *
Errors
Common errors & fixes
Cannot find module 'backstage-grpc-playground-backend'
Package not installed in the correct workspace or missing dependency
fix
Run 'yarn --cwd packages/backend add backstage-grpc-playground-backend' from the project root.
TypeError: createRouter is not a function
Default import instead of named import
fix
Use 'import { createRouter } from ...' or CJS const { createRouter } = require(...).
Upgrade
Version history
0.3.2latest on npm
Audit
Dependencies
@backstage/integrationrequiredRequired for ScmIntegrations to fetch proto files from external sources
expressrequiredFor Router type and request handling
Agent activity
8 hits · last 30 days
node
6
Amazon
1
Resources
backstage-grpc-playground-backend — npm install backstage-grpc-playground-backend · libregistry