GithubHelp home page GithubHelp logo

matejnesuta / backstage-plugins Goto Github PK

View Code? Open in Web Editor NEW

This project forked from janus-idp/backstage-plugins

0.0 0.0 0.0 59.71 MB

Plugins for Backstage

Home Page: https://janus-idp.io

License: Apache License 2.0

Shell 0.10% JavaScript 4.08% TypeScript 92.19% CSS 2.77% HTML 0.09% Handlebars 0.72% Dockerfile 0.04% EJS 0.01%

backstage-plugins's Introduction

Backstage Plugins by Janus IDP

Apache 2.0 license GitHub Workflow Status (Release) Released packages

Backstage is a single-page application composed of a set of plugins. This repository holds all plugins that are maintained, developed, and managed by the Janus IDP project.

For more information about the plugin ecosystem, see the upstream documentation.

A subset of available Janus IDP plugins is available at our community site.

You can also see the Plugin Marketplace for other open-source plugins you can add to your Backstage instance.

Dynamic Plugins Installation

It is possible to install plugins without code changes in a backstage that supports Dynamic Plugins (e.g. Janus IDP and Red Hat Developer Hub). Follow the steps below to install a dynamic plugin:

  • Map the dynamic plugins root directory in app-config.local.yaml:
dynamicPlugins:
  rootDirectory: dynamic-plugins-root
  • Place your package inside the plugins root directly. You can pack a local plugin or download from NPM using npm pack, then make sure to extract it correctly into the plugin root directory:
cd dynamic-plugins-root
mkdir {plugin name}
tar -xzvf {path to the NPM package tgz file} -C {plugin name}  --strip-components=1
  • Configure your plugin in app-config.local.yaml. For example, the configuration below will make a new menu item to access the plugin on route my-plugin:
dynamicPlugins:
  rootDirectory: dynamic-plugins-root
  frontend:
    {plugin name}:   # this should match the plugin name in package.json, remember to remove "@" and replace "/" by dots (".")
      pluginConfig:
      dynamicRoutes:
        - path: /my-plugin
          importName: MyPlugin   # the exported react component that should be rendered
          menuItem:
            text: My Plugin
  • Start backstage and you should see in logs that your plugin was correctly scanned by Backstage:
scalprum info Loaded dynamic frontend plugin '{plugin name}' from '${Backstage path}/dynamic-plugins-root/{plugin name}'  type=plugin

Now when accessing Backstage you should see a new menu item with name My Plugin and when clicking on it your plugin will be rendered.

For more information check the Dynamic Plugins Guide.


✨ We would love for you to contribute to Janus IDP's collection of Backstage plugins and help make it even better than it is today! ✨

  1. Contribution guide
  2. Code of Conduct

backstage-plugins's People

Contributors

semantic-release-bot avatar renovate[bot] avatar tumido avatar debsmita1 avatar invinciblejai avatar davidfestal avatar divyanshigupta avatar nickboldt avatar schultzp2020 avatar andrienkoaleksandr avatar zaperex avatar samokopecky avatar pataknight avatar dependabot[bot] avatar caponetto avatar mareklibra avatar gciavarrini avatar hmanwani-rh avatar aljesusg avatar josunect avatar fmenesesg avatar jerolimov avatar batzionb avatar jkilzi avatar ciiay avatar karthikjeeyar avatar kim-tsao avatar ydayagi avatar yashoswalyo avatar yzhao583 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.