Skip to content

项目介绍

cpselvis edited this page Nov 28, 2019 · 6 revisions

Feflow 是腾讯开源的一款大前端领域的工程化方案,致力于提升开发效率和规范。

1. 背景

目前的大前端开发会面临工程类型多样、多技术栈的研发场景。以腾讯直播为例:我们有APP内的H5业务、商业化运营活动、RN业务、小程序、组件类和 Serverless Faas 函数这6类。

面临的场景

如果没有一个很好的 CLI/GUI 工具,很难保证开发方式的统一。在这个背景之下,我们启动了 Feflow 的开发。

2. 架构

Feflow 的架构分为三层,分别是:

  1. 生态:包括开发套件和插件,用于项目维度和通用命令的扩展
  2. 内核层:包含 CLI 和 Core 两个部分,包含命令交互、命令注册、插件和开发套件的加载机制和日志模块等。
  3. 控制台:开发者和Feflow的命令交互层,开发者在控制台里面输入一系列的命令。

架构设计

接下来我们看看 Feflow 的命令包含哪些内容,如何通过合理的命令设计满足多栈的研发场景需要。

3. 命令设计

Feflow 将命令划分为3类,分别是:

  1. 普通命令:Feflow 原生实现的命令,也就是内置命令
  2. 开发套件命令:项目维度的命令,不同的项目类型下命令或多或少存在差异,由开发套件提供。
  3. 插件命令:通过插件进行扩展的命令,插件命令更具普适性,由插件提供。

命令设计

Clone this wiki locally