[RFC] New Home Page
See original GitHub issueStatus: Open for comments
Need
Right now when starting Backstage, the user enters the catalog. While the catalog contains a lot of stuff, it’s probably not what a user is looking for when opening Backstage, in the end it’s just one of Backstage’s core features.
Proposal
I propose to add a home page that has the same composability as the entity page. The home page is always in the view of a single team. As a user might be part of multiple teams, the page contains a switcher to choose another team (maybe even a team that the user is not part of). The last selected team is stored, so the page opens again in the previous state.
The home page can be used to show:
- Team KPIs, like vulnerabilities, runtime metrics, error rates, … (but not on the component level, but aggregated)
- Owned entities
- Open PRs in related repositories
- Required actions, e.g. “Review the costs of project XYZ…”
- Activities in the context of the team
- News of the portal itself
- Starred entities
- …
Implementation
I propose to either make this part of the catalog, or as a new plugin called home
. We can reuse most of the features that can be used to configure the entity page (like EntityContext
, EntitySwitch
, useEntity
, …). Instead of passing the current entity, we pass the entity of the selected team to each widget (Entity*Card
). Widgets that already work in the context of a team can be reused here (like OwnershipCard
), others can use the existing hooks to request all entities owned by the team. I would avoid passing all owned entities into the widgets, as widget might use more efficient ways to retrieve the required data.
The cool greetings feature could also be moved from the catalog page to the home page.
Context
Here are some older screenshots with ideas for this page:
And some thoughts by @freben. Please comment with some more references if you know any!
Alternatives
It is already possible for an integrator of Backstage to swap out the home page and place custom content there. But I think this could already be part of Backstage out of the box.
Risks
There is already a group entity page so there could now be two places with the same content. But I think that the use-case is different. It’s “What are the ownership and members of a team?” vs “What are my KPIs, status, and my ownership?”. The home page would focus more on what is relevant for the team itself.
Issue Analytics
- State:
- Created 2 years ago
- Reactions:27
- Comments:10 (8 by maintainers)
Hey, our team will be working on parts of this during the upcoming weeks/months so will assign it us for now and you will be able to track issues in a milestone sometime next week!
Sharing here for reference https://youtu.be/UZTVjv-AvZA?t=1787 - @soapraj’s demo on the new Backstage homepage inside Spotify during the Backstage Community Session on May 19th!
(It was a call out during the meetup to share when the recording is up 😁 )