Skip to main content

概述

简介

Backstage 的目标是为项目内外的开发人员提供愉悦的体验。 创建新应用程序和插件应该简单,迭代速度应该快,维护自定义工具的开销应该最小。 作为实现这一目标的一部分,Backstage 提供了自己的构建系统和工具,主要通过@backstage/cli当使用@backstage/create-app您将收到一个项目,该项目已包含典型设置和用于执行最常用命令的软件包脚本。

在引擎盖下,CLI 使用Webpack进行捆绑、卷轴用于构建软件包、玩笑进行测试,以及eslint它还包括用于在 Backstage 应用程序中工作的工具,例如保持应用程序更新和验证静态配置。 要更深入地了解这些工具,请参见构建系统页,有关命令的列表,请参见指令page.

虽然 backstage 工具的工作方式很有主见,但也可以部分或全部使用自己的工具。 例如,CLI 提供了一个用于构建发布插件包的命令,但其输出是转译 JavaScript 和 TypeScript 类型声明的标准组合。 因此,如果有必要,可以使用其他工具来增强或替换 CLI 命令的用法。

Backstage CLI 故意不提供很多用于覆盖或定制构建过程的钩子。 这样做是为了允许 CLI 演进,而不必考虑广泛的 API 表面。 这使我们能够迭代和改进工具,并更轻松地保持系统最新。

词汇表

  • Package - A package in the Node.js ecosystem, often published to a package registry such as NPM. * Monorepo - A project layout that consists of multiple packages within a single project, where packages are able to have local dependencies on each other. Often enabled through tooling such as lerna and yarn workspaces * Local Package - One of the packages within a monorepo. These package may or may not also be published to a package registry. * Bundle - A collection of the deployment artifacts. The output of the bundling process, which brings a collection of packages into a single collection of deployment artifacts. * Package Role - The declared role of a package, see package roles.