Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

💬 RFC: Backstage Themes Repository #18119

Closed
2 tasks done
tudi2d opened this issue Jun 5, 2023 · 7 comments
Closed
2 tasks done

💬 RFC: Backstage Themes Repository #18119

tudi2d opened this issue Jun 5, 2023 · 7 comments
Labels
rfc Request For Comment(s) stale

Comments

@tudi2d
Copy link
Member

tudi2d commented Jun 5, 2023

🔖 Need

There is an interest in sharing themes & getting visual inspiration from the community [1][2]. The Backstage Figma has a lot of traction (~25k visits, ~900 likes). There are community hacks & articles floating around in the internet (e.g. Codesandbox, Frontside Article, Custom Theme Repository) giving first-aid help to customising theming & UI. @timbonicus ’s awesome Aperture Science Theme on the Demo Instance is the only real example of Theme Customization on the open, which people still refer to [3] as it makes their life easier & allows quicker customisations. As the #visual-design channel grows there might be the need for a more formal place for discussions around theming & custom designs.

🎉 Proposal

Create a separate repository in the Backstage GitHub Organisation dedicated for ready-to-use theme packages as well as Documentation (or even Blog Posts) around those themes, theming in Backstage & inspiration for visual customization.

For the beginning a collection of packages, which have to be manually copied over into their own instance could be sufficient. The goal should be though to maintain separate packages for different themes such that we would be able to bundle them into packages & potentially publish them allowing adopters to simply install & import a theme leading to a future where packages could be installed on the flight (e.g. from a Admin UI) without any code changes required (depends on “Declarative Integration” outcome).

It would be useful to have a simple Backstage instance with only core plugins as well as a Storybook alongside the theming packages allowing people who are not familiar with MUI or Backstage Theming to get a better understanding of the impact on the UI.

"Suggested Repository Folder Structure" attached at the end of the RFC

〽️ Alternatives

❌ Risks

Customizsation: There is a potential risk of conflict with component “Customization” (#16876) as Theming can be seen as just one way of changing the UI. It might require to have a super narrow scope not allowing custom components in this repository for a certain themes (e.g. complex changes to the Sidebar or EntityLayout).

Design: I'm not a designer & don't have enough experience with the design workflow. There might be specific Design resources/tools, like Figma templates, which I’m missing out on here. I would be open to discuss if this repository could be a good place to host such resources as well.


Suggested Repository Folder Structure:

theming/
├  docs/
├  themes/
│  ├  aperture/
│  │  ├  components/   (Complex Theme components (e.g. custom Sidebar))
│  │  ├  theme/        (optional: for complex themes to split up things e.g. in overrides.ts, palette.ts, ...)
│  │  ├  index.ts      (export Theme config, which can be added to `themes` array in `createApp`
├  demo/               (optional: Demo Backstage Frontend )
├  storybook/          (optional: Backstage Storybook)

👀 Have you spent some time to check if this RFC has been raised before?

  • I checked and didn't find similar issue

🏢 Have you read the Code of Conduct?

@tudi2d tudi2d added the rfc Request For Comment(s) label Jun 5, 2023
@Rugvip
Copy link
Member

Rugvip commented Jun 8, 2023

Separate repo with themes sounds like a great idea! 👍 When it comes to publishing packages that might be a bit tricky, at least if we want to use @backstage. We could figure that out as we go though, perhaps just starting with a minimal collection of themes that you would just copy paste? I would see this as a great resource for people that want to create their own theme too, to have more examples and starting points. Let us know if this is something you want to drive and we can shape some plan and set things up.

@github-actions
Copy link
Contributor

github-actions bot commented Aug 7, 2023

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@github-actions github-actions bot added the stale label Aug 7, 2023
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Aug 14, 2023
@efenner-cambia
Copy link
Contributor

Did the themes repo get created? I would still love to see some other theme examples!

@tudi2d
Copy link
Member Author

tudi2d commented Oct 10, 2023

@efenner-cambia As there was no reaction/traction on this RFC I assumed that there is no need/interest in this. Still think more default themes would be super helpfull. Feel free to leave feedback here so it can be referenced in the future.

@efenner-cambia
Copy link
Contributor

I would be interested in more default themes or a repo of some theme configs, just to have more examples and inspiration!

@kurtaking
Copy link
Contributor

It's a bummer this didn't gain traction. I am subscribed now in the event the RFC gets resurrected 😄

+1 to @efenner-cambia's message.

@tudi2d
Copy link
Member Author

tudi2d commented Dec 1, 2023

Appreciate it! In the meantime I created https://github.com/tudi2d/backstage-theme-creator/ & #21504, which goes into a similar direction I would say. Might be interesting to both of you as well!:)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
rfc Request For Comment(s) stale
Projects
None yet
Development

No branches or pull requests

4 participants