Skip to content

Latest commit

 

History

History

README.md

GitHub Copilot Plugin

Welcome to the GitHub Copilot Plugin!

Layout

home

Overview

The GitHub Copilot Plugin enhances your Backstage experience by providing features tailored to both enterprise and organization management.

Features

  • Enterprise and Organization Integration: Seamlessly integrate functionalities for GitHub Enterprise and GitHub Organizations.
  • Team Metrics Comparison: Select a team and compare its metrics with the overall data, offering more insights into individual team performance.

GitHub APIs will only show metrics for teams of 5 or more active users per day

Setup

The following sections will help you get the GitHub Copilot Plugin setup and running.

Backend

You need to set up the Copilot backend plugin (copilot-backend) before you move forward with any of the following steps if you haven't already.

Installation

To start using the GitHub Copilot Plugin, follow these steps:

  1. Install Dependencies:

    # From your Backstage root directory
    yarn --cwd packages/app add @backstage-community/plugin-copilot
  2. Configure Routes:

    App.tsx:

    import { CopilotIndexPage } from '@backstage-community/plugin-copilot';
    
    // Add the routes
    const routes = (
      <FlatRoutes>
        // ...
        <Route path="/copilot" element={<CopilotIndexPage />} />
      </FlatRoutes>
    );

    Root.tsx:

    import { CopilotSidebar } from '@backstage-community/plugin-copilot';
    
    // Add the CopilotSidebar component somewhere inside your SidebarPage
    export const Root = ({ children }: PropsWithChildren<{}>) => (
      <SidebarPage>
        <Sidebar>
          {/* ... */}
          <SidebarGroup label="Menu" icon={<MenuIcon />}>
             {/* ... */}
            <SidebarScrollWrapper>
             <CopilotSidebar />
            </SidebarScrollWrapper>
             {/* ... */}
         </SidebarGroup>
         {/* ... */}
      </SidebarPage>
    );

New Frontend System

Setup

If you're using feature discovery, the plugin should be automatically discovered and enabled. Otherwise, you can manually enable the plugin by adding it to your app:

// packages/app/src/App.tsx
import copilotPlugin from '@backstage-community/plugin-copilot/alpha';

const app = createApp({
  features: [
    // ...
    copilotPlugin,
  ],
});

Extensions

The following extensions are available in the plugin:

  • api:copilot
  • page:copilot
  • nav-item:copilot