Backstage is an open framework for building developer portals
Installations
npm install @backstage/backend-plugin-api
Developer Guide
Typescript
Yes
Module System
CommonJS, ESM
Releases
Contributors
Languages
TypeScript (94.69%)
MDX (2.11%)
JavaScript (1.92%)
CSS (0.73%)
Handlebars (0.22%)
Mustache (0.11%)
HTML (0.05%)
Dockerfile (0.05%)
SCSS (0.05%)
Shell (0.03%)
Makefile (0.03%)
HCL (0.01%)
Developer
Download Statistics
Total Downloads
13,757,912
Last Day
8,185
Last Week
134,663
Last Month
2,306,927
Last Year
9,791,955
GitHub Statistics
28,903 Stars
61,395 Commits
6,125 Forks
233 Watching
514 Branches
1,622 Contributors
Package Meta Information
Latest Version
1.1.0
Package Id
@backstage/backend-plugin-api@1.1.0
Unpacked Size
214.83 kB
Size
41.69 kB
File Count
33
Publised On
17 Dec 2024
Total Downloads
Cumulative downloads
Total Downloads
13,757,912
Last day
-80.6%
8,185
Compared to previous day
Last week
-39.6%
134,663
Compared to previous week
Last month
24.2%
2,306,927
Compared to previous month
Last year
174.2%
9,791,955
Compared to previous year
Daily Downloads
Weekly Downloads
Monthly Downloads
Yearly Downloads
Backstage
English | 한국어 | 中文版 | Français
What is Backstage?
Backstage is an open source framework for building developer portals. Powered by a centralized software catalog, Backstage restores order to your microservices and infrastructure and enables your product teams to 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.
Out of the box, Backstage includes:
- Backstage Software Catalog for managing all your software such as microservices, libraries, data pipelines, websites, and ML models
- 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
Backstage was created by Spotify but is now hosted by the Cloud Native Computing Foundation (CNCF) as an Incubation level project. For more information, see the announcement.
Project roadmap
For information about the detailed project roadmap including delivered milestones, see the Roadmap.
Getting Started
To start using Backstage, see the Getting Started documentation.
Documentation
The documentation of Backstage includes:
- Main documentation
- Software Catalog
- Architecture (Decisions)
- Designing for Backstage
- Storybook - UI components
Community
To engage with our community, you can use the following resources:
- Discord chatroom - Get support or discuss the project
- Contributing to Backstage - 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 - Subscribe to our email newsletter
- Backstage Community Sessions - Join monthly meetups and explore Backstage community
- Give us a star ⭐️ - If you are using Backstage or think it is an interesting project, we would love a star ❤️
Governance
See the GOVERNANCE.md document in the backstage/community repository.
License
Copyright 2020-2024 © The Backstage Authors. All rights reserved. The Linux Foundation has registered trademarks and uses trademarks. For a list of trademarks of The Linux Foundation, please see our Trademark Usage page: https://www.linuxfoundation.org/trademark-usage
Licensed under the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0
Security
Please report sensitive security issues using Spotify's bug-bounty program rather than GitHub.
For further details, see our complete security release process.
No vulnerabilities found.
Reason
no binaries found in the repo
Reason
20 out of 20 merged PRs checked by a CI test -- score normalized to 10
Reason
all changesets reviewed
Reason
project has 17 contributing companies or organizations
Details
- Info: metakgp contributor org/company found, okta | ex @cisco | ex @dxc-technology contributor org/company found, ONEARMY contributor org/company found, mend contributor org/company found, 0+x contributor org/company found, doordash contributor org/company found, backstage contributor org/company found, tentaclelabs contributor org/company found, plancraft contributor org/company found, roadiehq contributor org/company found, op-developer contributor org/company found, kossiitkgp contributor org/company found, boxen contributor org/company found, harness contributor org/company found, webex contributor org/company found, minacolor contributor org/company found, spotify contributor org/company found,
Reason
update tool detected
Details
- Info: detected update tool: RenovateBot: .github/renovate.json5:1
Reason
license file detected
Details
- Info: project has a license file: LICENSE:0
- Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0
Reason
30 commit(s) and 12 issue activity found in the last 90 days -- score normalized to 10
Reason
packaging workflow detected
Details
- Info: Project packages its releases by way of GitHub Actions.: .github/workflows/deploy_docker-image.yml:13
Reason
SAST tool detected
Details
- Info: SAST configuration detected: CodeQL
- Info: SAST configuration detected: Snyk
- Info: SAST configuration detected: Snyk
- Info: SAST configuration detected: Snyk
- Warn: 23 commits out of 30 are checked with a SAST tool
Reason
security policy file detected
Details
- Info: security policy file detected: SECURITY.md:1
- Info: Found linked content: SECURITY.md:1
- Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1
- Info: Found text in security policy: SECURITY.md:1
Reason
dependency not pinned by hash detected -- score normalized to 8
Details
- Warn: containerImage not pinned by hash: contrib/.devcontainer/Dockerfile:1: pin your Docker image by updating mcr.microsoft.com/devcontainers/typescript-node:20 to mcr.microsoft.com/devcontainers/typescript-node:20@sha256:6a200731ff2e66af7d342c8118f989822e81ab98c2ad2e5c180fa308d057e395
- Warn: containerImage not pinned by hash: contrib/docker/devops/Dockerfile:3
- Warn: containerImage not pinned by hash: contrib/docker/frontend-with-nginx/Dockerfile.dockerbuild:38
- Warn: containerImage not pinned by hash: contrib/docker/frontend-with-nginx/Dockerfile.dockerbuild:49: pin your Docker image by updating nginx:mainline to nginx:mainline@sha256:42e917aaa1b5bb40dd0f6f7f4f857490ac7747d7ef73b391c774a41a8b994f15
- Warn: containerImage not pinned by hash: contrib/docker/frontend-with-nginx/Dockerfile.hostbuild:30: pin your Docker image by updating nginx:mainline to nginx:mainline@sha256:42e917aaa1b5bb40dd0f6f7f4f857490ac7747d7ef73b391c774a41a8b994f15
- Warn: containerImage not pinned by hash: contrib/docker/minimal-hardened-image/Dockerfile:15
- Warn: containerImage not pinned by hash: contrib/docker/minimal-hardened-image/Dockerfile:24
- Warn: containerImage not pinned by hash: contrib/docker/minimal-hardened-image/Dockerfile:53: pin your Docker image by updating cgr.dev/chainguard/wolfi-base:latest to cgr.dev/chainguard/wolfi-base:latest@sha256:3b271f8bff9356a38aa23118ffdea3c0d659f39e207feedacf01bdea4b900871
- Warn: containerImage not pinned by hash: packages/backend/Dockerfile:12: pin your Docker image by updating node:20-bookworm-slim to node:20-bookworm-slim@sha256:26b32b462c9b8b255829fb7dbf0dff52956ab6ecfcd967d89d2647d78e698e75
- Warn: containerImage not pinned by hash: packages/create-app/templates/default-app/packages/backend/Dockerfile:12: pin your Docker image by updating node:20-bookworm-slim to node:20-bookworm-slim@sha256:26b32b462c9b8b255829fb7dbf0dff52956ab6ecfcd967d89d2647d78e698e75
- Warn: containerImage not pinned by hash: plugins/scaffolder-backend-module-rails/Rails.dockerfile:1: pin your Docker image by updating ruby:3.3 to ruby:3.3@sha256:9d4892f485258e6ecb8780f5dee379adc9b0430d69194f21dcc1917a5f1911e9
- Warn: containerImage not pinned by hash: plugins/scaffolder-backend/scripts/Cookiecutter.dockerfile:1: pin your Docker image by updating alpine:3.21 to alpine:3.21@sha256:21dc6063fd678b478f57c0e13f47560d0ea4eeba26dfc947b2a4f81f686b9f45
- Warn: pipCommand not pinned by hash: contrib/docker/minimal-hardened-image/Dockerfile:19-21
- Warn: pipCommand not pinned by hash: packages/backend/Dockerfile:29
- Warn: pipCommand not pinned by hash: plugins/scaffolder-backend/scripts/Cookiecutter.dockerfile:3-11
- Warn: pipCommand not pinned by hash: contrib/.devcontainer/postCreate.sh:6
- Warn: downloadThenRun not pinned by hash: .github/workflows/automate_merge_message.yml:44
- Warn: downloadThenRun not pinned by hash: .github/workflows/sync_release-manifest.yml:54
- Warn: pipCommand not pinned by hash: .github/workflows/verify_e2e-techdocs.yml:56
- Warn: downloadThenRun not pinned by hash: .github/workflows/verify_fossa.yml:26
- Warn: pipCommand not pinned by hash: .github/workflows/verify_microsite.yml:43
- Info: 85 out of 85 GitHub-owned GitHubAction dependencies pinned
- Info: 84 out of 84 third-party GitHubAction dependencies pinned
- Info: 0 out of 12 containerImage dependencies pinned
- Info: 0 out of 6 pipCommand dependencies pinned
- Info: 0 out of 3 downloadThenRun dependencies pinned
Reason
badge detected: InProgress
Reason
dangerous workflow patterns detected
Details
- Warn: untrusted code checkout 'refs/pull/${{ github.event.pull_request.number }}/merge': .github/workflows/automate_changeset_feedback.yml:30
- Warn: untrusted code checkout '${{ github.event.pull_request.merge_commit_sha }}': .github/workflows/automate_merge_message.yml:31
Reason
project is not fuzzed
Details
- Warn: no fuzzer integrations found
Reason
detected GitHub workflow tokens with excessive permissions
Details
- Info: jobLevel 'actions' permission set to 'read': .github/workflows/api-breaking-changes-comment.yml:18
- Info: jobLevel 'contents' permission set to 'read': .github/workflows/api-breaking-changes-comment.yml:88
- Info: jobLevel 'contents' permission set to 'read': .github/workflows/automate_area-labels.yml:11
- Warn: jobLevel 'contents' permission set to 'write': .github/workflows/deploy_microsite.yml:142
- Info: jobLevel 'contents' permission set to 'read': .github/workflows/issue.yaml:12
- Info: jobLevel 'contents' permission set to 'read': .github/workflows/sync_snyk-monitor.yml:23
- Info: jobLevel 'contents' permission set to 'read': .github/workflows/verify_codeql.yml:29
- Info: jobLevel 'actions' permission set to 'read': .github/workflows/verify_codeql.yml:28
- Warn: no topLevel permission defined: .github/workflows/api-breaking-changes-comment.yml:1
- Warn: no topLevel permission defined: .github/workflows/api-breaking-changes.yml:1
- Info: topLevel 'contents' permission set to 'read': .github/workflows/automate_area-labels.yml:6
- Info: found token with 'none' permissions: .github/workflows/automate_changeset_feedback.yml:8
- Info: found token with 'none' permissions: .github/workflows/automate_changeset_feedback.yml:11
- Info: found token with 'none' permissions: .github/workflows/automate_changeset_feedback.yml:15
- Info: found token with 'none' permissions: .github/workflows/automate_changeset_feedback.yml:16
- Info: found token with 'none' permissions: .github/workflows/automate_changeset_feedback.yml:17
- Info: found token with 'none' permissions: .github/workflows/automate_changeset_feedback.yml:9
- Info: found token with 'none' permissions: .github/workflows/automate_changeset_feedback.yml:10
- Info: found token with 'none' permissions: .github/workflows/automate_changeset_feedback.yml:12
- Info: found token with 'none' permissions: .github/workflows/automate_changeset_feedback.yml:13
- Info: found token with 'none' permissions: .github/workflows/automate_changeset_feedback.yml:14
- Info: found token with 'none' permissions: .github/workflows/automate_merge_message.yml:17
- Info: found token with 'none' permissions: .github/workflows/automate_merge_message.yml:18
- Info: found token with 'none' permissions: .github/workflows/automate_merge_message.yml:9
- Info: found token with 'none' permissions: .github/workflows/automate_merge_message.yml:10
- Info: found token with 'none' permissions: .github/workflows/automate_merge_message.yml:11
- Info: found token with 'none' permissions: .github/workflows/automate_merge_message.yml:12
- Info: found token with 'none' permissions: .github/workflows/automate_merge_message.yml:14
- Info: found token with 'none' permissions: .github/workflows/automate_merge_message.yml:16
- Info: found token with 'none' permissions: .github/workflows/automate_merge_message.yml:13
- Info: found token with 'none' permissions: .github/workflows/automate_merge_message.yml:15
- Info: topLevel 'contents' permission set to 'read': .github/workflows/automate_stale.yml:8
- Info: topLevel 'contents' permission set to 'read': .github/workflows/ci-noop.yml:12
- Warn: no topLevel permission defined: .github/workflows/ci.yml:1
- Warn: no topLevel permission defined: .github/workflows/cron.yml:1
- Warn: no topLevel permission defined: .github/workflows/deploy_docker-image.yml:1
- Info: topLevel 'contents' permission set to 'read': .github/workflows/deploy_microsite.yml:8
- Warn: no topLevel permission defined: .github/workflows/deploy_packages.yml:1
- Info: topLevel 'contents' permission set to 'read': .github/workflows/issue.yaml:7
- Info: topLevel 'contents' permission set to 'read': .github/workflows/pr-review-comment-trigger.yaml:11
- Warn: no topLevel permission defined: .github/workflows/pr-review-comment.yaml:1
- Warn: no topLevel permission defined: .github/workflows/pr.yaml:1
- Info: topLevel permissions set to 'read-all': .github/workflows/scorecard.yml:18
- Warn: no topLevel permission defined: .github/workflows/sync_canon.yml:1
- Warn: no topLevel permission defined: .github/workflows/sync_code-formatting.yml:1
- Warn: no topLevel permission defined: .github/workflows/sync_dependabot-changesets.yml:1
- Warn: no topLevel permission defined: .github/workflows/sync_release-manifest.yml:1
- Warn: no topLevel permission defined: .github/workflows/sync_renovate-changesets.yml:1
- Warn: no topLevel permission defined: .github/workflows/sync_snyk-github-issues.yml:1
- Info: topLevel 'contents' permission set to 'read': .github/workflows/sync_snyk-monitor.yml:18
- Warn: no topLevel permission defined: .github/workflows/sync_version-packages.yml:1
- Info: topLevel 'contents' permission set to 'read': .github/workflows/verify_accessibility-noop.yml:21
- Warn: no topLevel permission defined: .github/workflows/verify_accessibility.yml:1
- Info: topLevel 'contents' permission set to 'read': .github/workflows/verify_codeql.yml:23
- Warn: no topLevel permission defined: .github/workflows/verify_docs-quality.yml:1
- Info: topLevel 'contents' permission set to 'read': .github/workflows/verify_e2e-linux-noop.yml:19
- Warn: no topLevel permission defined: .github/workflows/verify_e2e-linux.yml:1
- Info: topLevel 'contents' permission set to 'read': .github/workflows/verify_e2e-techdocs.yml:18
- Info: topLevel 'contents' permission set to 'read': .github/workflows/verify_e2e-windows-noop.yml:15
- Warn: no topLevel permission defined: .github/workflows/verify_e2e-windows.yml:1
- Info: topLevel 'contents' permission set to 'read': .github/workflows/verify_fossa.yml:9
- Info: topLevel 'contents' permission set to 'read': .github/workflows/verify_microsite-noop.yml:15
- Info: topLevel 'contents' permission set to 'read': .github/workflows/verify_microsite.yml:13
- Info: topLevel 'contents' permission set to 'read': .github/workflows/verify_microsite_accessibility-noop.yml:19
- Warn: no topLevel permission defined: .github/workflows/verify_microsite_accessibility.yml:1
- Info: topLevel 'contents' permission set to 'read': .github/workflows/verify_storybook-noop.yml:22
- Warn: no topLevel permission defined: .github/workflows/verify_storybook.yml:1
- Info: topLevel 'contents' permission set to 'read': .github/workflows/verify_windows.yml:11
Reason
28 existing vulnerabilities detected
Details
- Warn: Project is vulnerable to: GHSA-pxg6-pf52-xh8x
- Warn: Project is vulnerable to: GHSA-2p57-rm9w-gvfp
- Warn: Project is vulnerable to: GHSA-rhx6-c78j-4q9w
- Warn: Project is vulnerable to: GHSA-9wv6-86v2-598j
- Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q
- Warn: Project is vulnerable to: GHSA-f9xv-q969-pqx4
- Warn: Project is vulnerable to: GHSA-mwcw-c2x4-8c55
- Warn: Project is vulnerable to: GHSA-86rg-pf4c-5grg
- Warn: Project is vulnerable to: GHSA-7hv8-3fr9-j2hv
- Warn: Project is vulnerable to: GHSA-qc4v-xq2m-65wc
- Warn: Project is vulnerable to: GHSA-w7fj-336r-vw49
- Warn: Project is vulnerable to: GHSA-3x3f-jcp3-g22j
- Warn: Project is vulnerable to: GHSA-2g8g-63j4-9w3r
- Warn: Project is vulnerable to: GHSA-mg3m-f475-28hv
- Warn: Project is vulnerable to: GHSA-wg6p-jmpc-xjmr
- Warn: Project is vulnerable to: GHSA-qmc2-jpr5-7rg9
- Warn: Project is vulnerable to: GHSA-gg96-f8wr-p89f
- Warn: Project is vulnerable to: GHSA-39v3-f278-vj3g
- Warn: Project is vulnerable to: GHSA-5j94-f3mf-8685
- Warn: Project is vulnerable to: GHSA-4jqc-jvh2-pxg9
- Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275
- Warn: Project is vulnerable to: GHSA-pfrx-2q88-qq97
- Warn: Project is vulnerable to: GHSA-pppg-cpfq-h7wr
- Warn: Project is vulnerable to: GHSA-p6mc-m468-83gw
- Warn: Project is vulnerable to: GHSA-p8p7-x288-28g6
- Warn: Project is vulnerable to: GHSA-gcx4-mw62-g8wm
- Warn: Project is vulnerable to: MAL-2022-6445
- Warn: Project is vulnerable to: GHSA-72xf-g2v4-qvf3
Score
6.3
/10
Last Scanned on 2024-12-25T09:06:13Z
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn MoreOther packages similar to @backstage/backend-plugin-api
@solace-labs/backstage-plugin-ep-devp-event-api-products-backend
> :warning: **experimental**
@frontside/backstage-plugin-humanitec-backend
`@frontside/backstage-plugin-humanitec-backend` is a plugin for the Backstage backend app. It provides a route that `@frontside/backstage-plugin-humanitec` will use to connect to Humanitec API and scaffolder actions.
@solace-labs/backstage-plugin-ep-devp-consumer-apps-backend
> :warning: **experimental**
@solace-labs/backstage-plugin-ep-devp-manage-apps-backend
> :warning: **experimental**