Eliminates the central componentDefinitions registry in favor of component-owned
definition files. Each of the 33 components now exports its own definition object.
Changes:
- Created definition.ts for all 33 components (Accordion, Avatar, Box, Button, etc.)
- Updated useStyles hook to accept definition objects instead of string lookups
- Removed central componentDefinitions file and related type utilities
- Updated docs-ui to import and use component definitions directly
- Added @backstage/ui/definitions subpath export to avoid importing component code
in docs-ui, preventing Next.js SSR issues
Breaking changes:
- componentDefinitions object removed
- ComponentDefinitionName type removed
- ComponentClassNames<T> type removed
- useStyles now accepts ComponentDefinition object instead of string (internal)
Migration:
Component definitions are primarily for documenting the CSS class API for theming.
If using definitions programmatically, migrate to either:
- Use Backstage UI components directly as building blocks, or
- Duplicate component CSS in your own stylesheets
Signed-off-by: Johan Persson <johanopersson@gmail.com>
Syncs component changelogs from @backstage/ui package using the
automated changelog sync script. Adds missing version changelogs
(v0.1.0, v0.2.1, v0.3.2, v0.7.0-v0.8.2) and updates changelog.ts
to import all versions in descending order.
Affected components for each changelog entry were manually inferred
using AI to categorize changes by component.
Signed-off-by: Johan Persson <johanopersson@gmail.com>
Adds automated synchronization of component changelogs from
@backstage/ui package to the documentation site, eliminating
manual changelog maintenance.
The sync script parses CHANGELOG.md using remark/unified, extracts
component-specific entries via "Affected components:" tags, and
generates per-version TypeScript files with preserved markdown
formatting. Includes GitHub API integration to automatically fetch
PR numbers for changelog entries.
Key features:
- Version comparison to sync only new releases
- Per-version file structure (changelogs/v0.2.0.ts, etc.)
- Markdown preservation via AST position slicing
- Component name mapping (PascalCase → kebab-case)
- Duplicate detection for idempotent syncing
- GitHub authentication via gh CLI or GITHUB_TOKEN
- Dry-run mode with preview
Usage:
```bash
yarn sync:changelog # Sync new entries
yarn sync:changelog:dry-run # Preview changes
```
Technical changes:
- Added scripts/sync-changelog.mjs (991 lines)
- Refactored changelog.ts to import per-version files
- Extracted types to separate types.ts file
- Added dependencies: @octokit/rest, unified (remark-parse via @mdx-js/mdx)
- Added documentation in README.md
Signed-off-by: Johan Persson <johanopersson@gmail.com>
Undo changes made to file in the Using Backstage section under Getting Started. Reverted back to master branch version. Made my changes in the sidebars.ts file instead.
Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>
Added new component management section to include registering, creating, and updating a component. Also added the new search catalog file. All changes are under Using Backstage.
Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>