Giter Club home page Giter Club logo

hmcts.spotify-backstage's Introduction

headline

Backstage

License Discord Code style

What is Backstage?

Backstage is an open platform for building developer portals. Powered by a centralized service catalog, Backstage restores order to your microservices and infrastructure. So your product teams can ship high-quality code quickly — without compromising autonomy.

Backstage unifies all your infrastructure tooling, services, and documentation to create a streamlined development environment from end to end.

service-catalog

Out of the box, Backstage includes:

  • Backstage Service Catalog for managing all your software (microservices, libraries, data pipelines, websites, ML models, etc.)
  • Backstage Software Templates for quickly spinning up new projects and standardizing your tooling with your organization’s best practices
  • Backstage TechDocs for making it easy to create, maintain, find, and use technical documentation, using a "docs like code" approach
  • Plus, a growing ecosystem of open source plugins that further expand Backstage’s customizability and functionality

For more information go to backstage.io or join our Discord chatroom.

Project roadmap

We created Backstage about 4 years ago. While our internal version of Backstage has had the benefit of time to mature and evolve, the first iteration of our open source version is still nascent. We are envisioning three phases of the project and we have already begun work on various aspects of these phases:

  • 🐣 Phase 1: Extensible frontend platform (Done ✅) - You will be able to easily create a single consistent UI layer for your internal infrastructure and tools. A set of reusable UX patterns and components help ensure a consistent experience between tools.

  • 🐢 Phase 2: Service Catalog (alpha released) - With a single catalog, Backstage makes it easy for a team to manage ten services — and makes it possible for your company to manage thousands of them. Developers can get a uniform overview of all their software and related resources, regardless of how and where they are running, as well as an easy way to onboard and manage those resources.

  • 🐇 Phase 3: Ecosystem (later) - Everyone's infrastructure stack is different. By fostering a vibrant community of contributors we hope to provide an ecosystem of Open Source plugins/integrations that allows you to pick the tools that match your stack.

Check out our Milestones and open RFCs how they relate to the three Phases outlined above.

Our vision for Backstage is for it to become the trusted standard toolbox (read: UX layer) for the open source infrastructure landscape. Think of it like Kubernetes for developer experience. We realize this is an ambitious goal. We can’t do it alone. If this sounds interesting or you'd like to help us shape our product vision, we'd love to talk. You can email me directly: [email protected].

Overview

The Backstage platform consists of a number of different components:

  • app - Main web application that users interact with. It's built up by a number of different Plugins. This repo contains an example implementation of an app (located in packages/app) and you can easily get started with your own app by creating one.
  • plugins - Each plugin is treated as a self-contained web app and can include almost any type of content. Plugins all use a common set of platform API's and reusable UI components. Plugins can fetch data either from the backend or through any RESTful API exposed through the proxy.
  • service catalog - Service that holds the model of your software ecosystem, including organisational information and what team owns what software. The backend also has a Plugin model for extending its graph.
  • proxy - Terminates HTTPS and exposes any RESTful API to Plugins.
  • identity - A backend service that holds your organisation's metadata.

Getting Started

There are two different ways to get started with Backstage, either by creating a standalone app, or by cloning this repo. Which method you use depends on what you're planning to do.

Creating a standalone instance makes it simpler to customize the application for your needs whilst staying up to date with the project. You will also depend on @backstage packages from NPM, making the project much smaller. This is the recommended approach if you want to kick the tyres of Backstage or setup your own instance.

On the other hand, if you want to contribute plugins or to the project in general, it's easier to fork and clone this project. That will let you stay up to date with the latest changes, and gives you an easier path to make Pull Requests towards this repo.

Creating a Standalone App

Backstage provides the @backstage/create-app package to scaffold standalone instances of Backstage. You will need to have NodeJS Active LTS Release installed (currently v12), and yarn. You will also need to have Docker installed to use some features like Software Templates and TechDocs.

Using npx you can then run the following to create an app in a chosen subdirectory of your current working directory:

npx @backstage/create-app

You will be taken through a wizard to create your app, and the output should look something like this. You can read more about this process here

Contributing to Backstage

You can read more in our CONTRIBUTING.md guide, which can help you get setup with a Backstage development environment.

Next steps

Take a look at the Getting Started guide to learn how to set up Backstage, and how to develop on the platform.

Documentation

Community

  • Discord chatroom - Get support or discuss the project
  • Good First Issues - Start here if you want to contribute
  • RFCs - Help shape the technical direction
  • FAQ - Frequently Asked Questions
  • Code of Conduct - This is how we roll
  • Adopters - Companies already using Backstage
  • Blog - Announcements and updates
  • Newsletter
  • Give us a star ⭐️ - If you are using Backstage or think it is an interesting project, we would love a star ❤️

Or, if you are an open source developer and are interested in joining our team, please reach out to [email protected]

License

Copyright 2020 Spotify AB.

Licensed under the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0

hmcts.spotify-backstage's People

Contributors

adaszyn avatar andrewthauer avatar ayshiff avatar balestrapatrick avatar bbalanza avatar benjdlambert avatar bih avatar chanwit avatar cortinico avatar danztran avatar dependabot-preview[bot] avatar dhenneke avatar ellieseastream avatar emmaindal avatar fox32 avatar freben avatar hooloovooo avatar jeffersongirao avatar katz95 avatar marcuseide avatar mateusmarquezini avatar mikqi avatar nek avatar nikek avatar orkohunter avatar paulpach avatar rugvip avatar shmidt-i avatar soapraj avatar timurista 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.