Files
backstage/microsite
milliehartnt123 eefabd0002 New technical overview per feature #21925 (#30998)
* Create technical-overview.md

First draft of technical overview. Just want to save these changes as I lost the last file when I had to reboot.

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>

* Update technical-overview.md with additional text and graphics

Added additional text to describe the system model. Added graphics and started to add additional links.

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>

* Update technical-overview.md added more text

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>

* Update technical-overview.md add additional text to plugin section

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>

* Update technical-overview.md add plugin architecture overview

Added text for plugin architecture overview and additional text in system model and purpose section. Added links for core features.

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>

* Create backstage-ui-group-ownership.png

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>

* Add files via upload

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>

* Update technical-overview.md added graphics

Added a graphic illustrating My Group in the Backstage UI.

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>

* Update technical-overview.md formatting changes

Made formatting changes. Changed bullets from + to - and some spacing changes trying to fix prettier errors.

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>

* Update technical-overview.md copied in text from vscode running prettier

Trying to fix prettier errors. Edited code in vscode and save with prettier formatting. Replaced text with the vscode version.

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>

* Update technical-overview.md update links for search and techdocs

There is a README.md file in each of these code directories (search and techdocs) but the online documentation displays the README file as index.html file for each of these features. So I replaced the links to the following:
https://backstage.io/docs/features/search/
https://backstage.io/docs/features/techdocs/

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>

* Update technical-overview.md added graphic descriptions

Added "description" for graphics for accessibility.

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>

* Update technical-overview.md update links

Added a link for "plugin architecture" to go to "plugin architecture" section in the architectural overview document.

Also moved the software catalog "entities" links around.

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>

* Update sidebars.ts to add technical overview and remove some docs

Added the technical overview to the Overview section. Removed the what-is-backstage, background, and vision pages as that information was folded into the new technical overview.

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>

* Update sidebars.ts to add back what-is-backstage and roadmap

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>

* Update technical-overview.md updated text

Fixed spelling error and updated text to incorporate review comments.

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>

---------

Signed-off-by: milliehartnt123 <108491788+milliehartnt123@users.noreply.github.com>
2025-09-29 11:06:57 -04:00
..
2025-09-18 17:20:59 +02:00

Backstage Documentation

This folder holds the service and configuration that runs Backstage's documentation hosted at https://backstage.io.

It pulls content in from the root /docs folder and builds it into the resulting HTML web site.

This website was created with Docusaurus.

What's In This Document

Getting Started

Testing the web site locally is a great way to see what final website will look like after publishing, and is ideal for testing more complex changes, large updates to navigation, or complex page designs that may include special alignment, which may not otherwise be validated through continuous integration.

Installation

$ yarn install

Local Development

$ yarn start

This command starts a local development server and opens up a browser window. Most content changes made to the docs/ root folder are reflected live without having to restart the server.

Build

$ yarn build

This command generates static content into the build directory, which is what will be deployed to GitHub pages from the master branch.

Directory Structure

Your project file structure should look something like this

my-docusaurus/
  docs/
    doc-1.md
    doc-2.md
    doc-3.md
  website/
    blog/
      2016-3-11-oldest-post.md
      2017-10-24-newest-post.md
    core/
    node_modules/
    pages/
    static/
      css/
      img/
    package.json
    sidebars.js
    siteConfig.js

Editing Content

Editing an existing docs page

Edit docs by navigating to docs/ and editing the corresponding document:

docs/doc-to-be-edited.md

---
id: page-needs-edit
title: This Doc Needs To Be Edited
---

Edit me...

For more information about docs, click here

Editing an existing blog post

Edit blog posts by navigating to website/blog and editing the corresponding post:

website/blog/post-to-be-edited.md

---
id: post-needs-edit
title: This Blog Post Needs To Be Edited
---

Edit me...

For more information about blog posts, click here

Adding Content

Adding a new docs page to an existing sidebar

  1. Create the doc as a new markdown file in /docs, example docs/newly-created-doc.md:

    ---
    id: newly-created-doc
    title: This Doc Needs To Be Edited
    ---
    
    My new content here..
    
  2. Refer to that doc's ID in an existing sidebar in website/sidebars.js:

    // Add newly-created-doc to the Getting Started category of docs
    module.exports = {
    ...
    docs: {
     "Getting Started": [
       "quick-start",
       "newly-created-doc" // new doc here
     ],
     ...
    },
    ...
    }
    

For more information about adding new docs, click here

Adding a new blog post

  1. Make sure there is a header link to your blog in website/siteConfig.js:

    website/siteConfig.js

    headerLinks: [
        ...
        { blog: true, label: 'Blog' },
        ...
    ]
    
  2. Create the blog post with the format YYYY-MM-DD-My-Blog-Post-Title.md in website/blog:

    website/blog/2018-05-21-New-Blog-Post.md

    ---
    author: Frank Li
    authorURL: https://twitter.com/foobarbaz
    authorFBID: 503283835
    title: New Blog Post
    ---
    
    Lorem Ipsum...
    

For more information about blog posts, click here

Adding items to your site's top navigation bar

  1. Add links to docs, custom pages or external links by editing the headerLinks field of website/siteConfig.js:

    website/siteConfig.js

    {
      headerLinks: [
        ...
        /* you can add docs */
        { doc: 'my-examples', label: 'Examples' },
        /* you can add custom pages */
        { page: 'help', label: 'Help' },
        /* you can add external links */
        { href: 'https://github.com/facebook/docusaurus', label: 'GitHub' },
        ...
      ],
      ...
    }
    

For more information about the navigation bar, click here

Adding custom pages

  1. Docusaurus uses React components to build pages. The components are saved as .js files in website/pages/en:

  2. If you want your page to show up in your navigation header, you will need to update website/siteConfig.js to add to the headerLinks element:

    website/siteConfig.js

    {
      headerLinks: [
        ...
        { page: 'my-new-custom-page', label: 'My New Custom Page' },
        ...
      ],
      ...
    }
    

Learn more about Docusaurus custom pages.

Full Documentation

Full documentation can be found on the Docusaurus website.

Additional notes

  • If you want to make images zoomable on click, add the data-zoomable attribute to your img element.

    • In a docs or blog .md file, convert ![This is image](/microsite/static/img/code.png) syntax to <img data-zoomable src="/microsite/static/img/code.png" alt="This is image" />
  • Code block line highlighting uses custom magic comments. Currently, we have the following magic comments:

    • Highlight line(s)
      • highlight-next-line
      • highlight-start
      • highlight-end
    • Add line(s)
      • highlight-add-next-line
      • highlight-add-start
      • highlight-add-end
    • Remove line(s)
      • highlight-remove-next-line
      • highlight-remove-start
      • highlight-remove-end

Feedback widget

A feedback widget is provided by the docusaurus-pushfeedback plugin, which connects to the https://pushfeedback.com service. Styling of the button is configured in microsite/src/theme/customTheme.scss, while the plugin itself is configured in microsite/docusaurus.config.js.

Feedback submissions are connected to an account owned by @Rugvip and are available on request, reach out to @Rugvip on Discord.