f326c2ee1e
* 'master' of github.com:spotify/backstage: (30 commits) fix(techdocs-core): use the content of the readme as long description for the pypi package (#2578) chore: add contrib to CONTRIBUTING.md (#2585) Fix typo (#2584) backend-common: default config env to development v0.1.1-alpha.23 TechDocs: Inject CSS transformer and initial backstage style integration for reader (#2560) bug(gql): use import to import the graphql module Rename file [blog] Announce CNCF Sandbox (#2568) document cleaning - tutorial quickstarts (#2520) Simplify codecov flag names chore(scaffolder-backend): typo in visibility Kubernetes plugins boilerplate (#2559) CHANGELOG: add entry for SessionApi refactor Upload package specific code coverage to codecov Add codecov flags for core and core-api packages TechDocs: Enable allowVulnerableTags in sanitize-html (#2554) chore: trust the Boolean :) docs: regenerate api reference docs core: refactor SessionStateApi to SessionApi with sign-in/out ...
App backend plugin
This backend plugin can be installed to serve static content of a Backstage app.
Installation
Add both this package and your local frontend app package as dependencies to your backend, for example
yarn add @backstage/plugin-app-backend example-app
By adding the app package as a dependency we ensure that it is built as part of the backend, and that it can be resolved at runtime.
Now add the plugin router to your app, creating it for example like this:
const router = await createRouter({
logger,
appPackageName: 'example-app',
});
And registering it like this:
createServiceBuilder(module)
...
.addRouter('', router);
Be sure to register the app router last, as it serves content for HTML5-mode navigation, i.e. falling back to serving index.html for any route that can't be found.