跳到内容
返回博客

2021 年 MUI 开发者调查:我们的发现

Danilo Leal

@danilo-leal

Sam Sycamore

@samuelsycamore

Olivier Tassinari

@oliviertassinari
+

按照传统,几个月前我们启动了 2021 年 MUI 开发者调查。您的反馈帮助我们构建更好的产品,我们非常感谢您成为我们社区的一份子。今年共有 1,591 位用户回复了调查,我们非常重视您的意见。以下是我们在仔细研究结果后了解到的您的需求。

与之前的迭代一样,本次调查分为三个部分:“您的需求”“您的产品”“关于您”

您的需求

如果您无法再使用 MUI,您会感觉如何?

超过 93% 的用户表示,如果无法再使用 MUI,他们会感到失望(“非常失望”和“有点失望”的总和)。这与 2019 年和 2020 年我们提出这个问题时,94% 的用户有相同感受的情况保持一致。

Bar chart: 62.7% Very disappointed, 30.4% Somewhat disappointed, 6.9% Not disappointed.

1589 人中共有 1567 人回答了此问题。

值得注意的是,2021 年“非常失望”类别的人数减少了 10%,而“有点失望”类别的人数则出现了相当的增长。这表明,与往年相比,一些用户可能对 MUI 的产品热情有所下降,这是我们未来需要评估的事情。

对于那些表示“不会失望”(这一群体增长了 1%)的用户,我们请他们解释原因。以下是他们的说法:

可用的替代方案数量

最近,几乎每天都会出现一个新的 UI 组件库。由于它们旨在解决相同的问题,因此这些库通常会得出非常相似的解决方案。行业通用模式的建立使得在众多竞争者中脱颖而出变得更加困难。与此同时,我们正在努力扩展核心产品之外的功能,为您提供其他库无法比拟的体验。

付费产品的推出

开源面临的一大挑战是维护者获得的价值非常少。MIT 许可模式促成了庞大的贡献者社区以及 MUI 团队自身的发展,但它确实存在局限性。为了尽可能地推动产品向前发展,我们需要一种方式来加大对它们的投入。开放核心 模式允许我们仍然提供 MUI X 组件的 MIT 许可(免费)版本,同时对需要更多关注的附加功能(包括支持)收费。

对于 MUI X 而言,现在仍然是早期阶段。我们在 2020 年底推出了它,并且一直在迭代组件和模型本身。

我们还有很多工作要做 —— 迄今为止,只有约 0.1% 的开发者社区被说服升级到付费 Pro 计划。无论您是否已经采取行动,我们都希望听到您对此的看法。如果您想更深入地了解我们对开源/商业平衡的看法,请查看我们的 管理页面

v5 中引入的重大更改

我们最新的版本 MUI Core v5 引入了一些重要的重大更改。我们想要解决的主要问题是可定制性:在不影响性能的前提下解锁更多样式选项。

这种新的样式解决方案在成熟度方面还有很长的路要走,不可否认的是,从 v4 迁移到 v5 需要大量的工作。就我们而言,我们仍然有很多工作要做,以帮助您充分利用 v5 中的新功能,我们欢迎您的反馈。

我们如何才能帮助您取得成功?如果您有任何想法或建议,随时欢迎在 GitHub 上提交 issue 分享您的想法。

您向朋友或同事推荐 MUI 的可能性有多大?

今年我们观察到净推荐值 (NPS) 下降:从 2020 年的 62 降至 2021 年的 46。今年,有 56.4% 的用户是推荐者,比去年(62.2%)下降了近 6 个百分点。我们仍然处于良好水平 —— 30 到 70 之间的 NPS 分数被认为是优秀的。但是,我们还有更多的工作要做才能获得卓越的分数。

Detractors: 10.88%, Neutrals: 32.69%, Promoters: 56.43%, Overall NPS: 46.
Scale: -100 to 0 needs improvements, 0 to 30 is good, 30 to 70 is great, and 70 to 100 is excellent.

1589 人中共有 1563 人回答了此问题。

您从使用 MUI 中获得的主要好处是什么?

This question results in 2019 - Design: 248; Time: 193; DX: 128; Components: 89; Customizability: 53; Documentation: 25; Accessibility: 5; TypeScript: 5; Community support: 4; This question results in 2021 - Time: 597; Design: 407; Components: 309; DX: 306; Customizability: 181; Documentation: 57; Community support: 26; Accessibility: 24; Performance: 17

2021 年,1589 人中共有 1422 人回答了这个问题。

以下是与 2019 年相比,您在 2021 年最喜欢该产品的地方:

  • 社区(2.9 倍): 虽然社区本身的规模翻了一番,但在同一时间段内,对社区的赞赏程度增长了 190%。看来我们正在见证网络效应:用户数量增加了一倍,开发者从社区获得的价值增加了三倍。
  • 可访问性(2.2 倍): 社区显然注意到了我们在使组件更易于访问方面所做的工作。特别感谢 Sebastian Silbermann (@eps1lon) 的持续帮助!
  • 可定制性(1.6 倍): 开发者似乎很欣赏 v5 中引入的新功能。尽管如此,我们认识到,鉴于我们收到了大量更好地解决此问题的请求,因此仍有更多工作要做。
  • 组件(1.6 倍): 只要您继续如此欣赏它们,我们将继续向库中添加新组件!
    • 组件质量(无变化):您知道我们对组件质量设定了很高的标准。随着我们不断发展,这可能会带来挑战,因为我们对团队的要求始终是做到最好。值得庆幸的是,此结果表明我们的维护团队在追求高标准方面做得非常出色。
  • 时间(1.4 倍): 主要指的是 UI 开发期间节省的时间。这是一个有趣的点,因为它不是我们专门解决的问题。这仅仅是市场上加快构建速度的压力越来越大的结果吗?还是因为我们以某种方式使这一价值主张更加引人注目?这也可能与下一个项目有关。
  • 开发者体验(1.1 倍)
    • 一致性(1.75 倍):我们没有在这方面下功夫,但它却增长了。可以合理地假设,由于我们拥有比以往任何时候都多的组件,因此开发者已经开始注意到,当他们使用 MUI 时,他们的工作变得更加一致。
    • 易用性(无变化):这可能是因为易用性主要由 React API(钩子)定义,还是因为我们没有对 API 进行任何重大更改以优化易用性?我们的新开发者体验团队可能在这方面有很多工作要做。

以及哪些方面有所下降

  • 设计(x0.75): Material Design 尚未随着不断变化的品味而发展,我们为解决此问题而开发的第二个设计系统尚未按预期那样快速进展。
    • Material Design(x0.4):其销售力显然正在减弱。
    • 外观 & 感觉(x1.17):这令人惊讶。这似乎是一种转移效应:以前更关心 Material Design 的人现在更关心结果而不是规范本身。
点击查看类别细分。
597时间
407设计
148设计 - 外观 & 感觉
122设计 - 外观 & 感觉+
73设计 - 一致性
73设计 - Material Design
6设计 - ?
4设计 - 易用
2设计 - 响应式
1设计 - 时间
309组件
173组件 - 数量
124组件 - 质量
5组件 - 高级
3组件 - 数据网格
2组件 - ?
1组件 - 自动完成
1组件 - 基础/无样式
306DX
221DX - 易于使用
49DX - 一致性
32DX - API
4DX - ?
181可定制性
57文档
39文档 - ?
17文档 - 质量
1文档 - 数量
26社区
24可访问性
17性能
15性能 - 运行时
1性能 - 包大小
1性能 - ?
9社区支持
5图标
3TypeScript
2动画

请评价您在多大程度上同意或不同意以下陈述

I can find most of the components I need (Strongly agree: 45.5%, Agree: 45.9%, Neutral: 6.2%, Disagree: 1.5%, Strongly Disagree 0.8%); I can easily customize the components to match the desired design (Strongly agree: 23.4%, Agree: 46.1%, Neutral: 18.6%, Disagree: 9%, Strongly Disagree 2.9%); I can find the answers to most of my questions in the documentation (Strongly agree: 24.1%, Agree: 50.1%, Neutral: 16.3%, Disagree: 7.6%, Strongly Disagree 1.9%); I find the library's performance to be great (Strongly agree: 26.4%, Agree: 44.3%, Neutral: 22.6%, Disagree: 4.7%, Strongly Disagree 2%); Whenever I needed to get help, I received helpful responses, Stack Overflow or GitHub (Strongly agree: 20.9%, Agree: 36.7%, Neutral: 36%, Disagree: 4.6%, Strongly Disagree 1.8%)

1589 人中共有 1534 人回答了此问题。

对于大多数陈述,普遍存在一定程度的共识是件好事,但是,除了第一个陈述之外,所有陈述的“非常同意”和“同意”之间都存在相当大的差距。这突显了需要继续在这些维度(可定制性、性能和社区支持)中的每一个维度上追求更高质量。

您选择 UI 库最重要的标准是什么?

Ranked list: 1. The design - look and feel; 2. Customizability; 3. Documentation quality; 4. Comprehensiveness; 5. Performance; 6. Popularity; 7. Accessibility; 8. Offered support and help; 9. Bundle size

1589 人中共有 1500 人回答了此问题 - 查看 Typeform 的文档 以了解排名平均值计算方法。

今年,我们尝试使用 Typeform 进行调查,它允许受访者对他们的选择进行排名。这可能为我们提供了比过去更丰富的视角,但最终结果与去年相比并没有太大差异。

设计(外观和感觉)仍然是选择 UI 库最重要的标准,可定制性和文档质量仍然位居前三。今年最显着的差异似乎是性能的提升,因为它已被评为第五重要的方面。

为了改进 MUI,我们还能做些什么?

Word cloud of what we can do to improve MUI

2021 年,1589 人中共有 1007 人回答了这个问题。

以下是今年最常出现的改进主题:

  • 更多组件: 我们继续收到对更多高级组件的需求,例如图表、表单和日历等。
  • 更多示例: 许多现有的学习资源在 v5 升级后已经过时,因此我们还有很多工作要做,以向您展示如何充分利用我们的产品。
  • 提供更多主题: 即使推出了 Material v3,Material Design 仍然被许多人视为过时。这就是为什么我们正在开发第二个设计系统,该系统将提供与 Material Design 相同的高质量标准,但具有替代的设计方向。
  • 更少的重大更改: MUI Core v5 引入了一些重要的重大更改,特别是由于新的样式解决方案。请放心,我们预计今年不会发布任何重大更新 —— 事实上,我们的目标是使主要版本至少间隔 12 个月。
  • 改进可定制性: 常见的请求包括使定制更轻松,提供更多常见用例的示例(如字体系列和主色/辅助色),以及改进主题功能。即使 Emotion 和 styled-components 非常受欢迎,仍然迫切需要促进定制。

如果您对不断增加和减少的痛点的分析感兴趣,可以前往附录

点击查看类别细分。
329文档
72文档 - ?
62文档 - 更多示例
29文档 - 更多模板
28文档 - 对初学者友好
28文档 - 教程
19文档 - API
19文档 - 自定义设计系统
16文档 - 更全面
15文档 - 内容质量
9文档 - 组织
8文档 - 更小的演示
6文档 - 内容翻译
5文档 - 搜索
4文档 - 导航缓慢
3文档 - 链接到源代码
3文档 - 入门示例
3文档 - 与第三方集成
1文档 - 可视化组件发现
300更多组件
145更多组件 - ?
26更多组件 - 表单
21更多组件 - 图表
17更多组件 - 轮播
12更多组件 - 从 Lab 到 Core
9更多组件 - 企业应用程序
8更多组件 - 上传
7更多组件 - 大型日历
7更多组件 - 拖放
6更多组件 - MUI X Pro
5更多组件 - 导航栏
5更多组件 - 图像
4更多组件 - 输入
4更多组件 - 富文本编辑器
3更多组件 - MUI X
2更多组件 - 布局
2更多组件 - 数字输入
2更多组件 - 加快发布速度
2更多组件 - 虚拟化
1更多组件 - 颜色选择器
1更多组件 - 数据展示
1更多组件 - 链接
1更多组件 - 加载按钮
1更多组件 - 地图
1更多组件 - 移动端
1更多组件 - 嵌套菜单
1更多组件 - OTP
1更多组件 - 照片查看器
1更多组件 - 滚动监听
1更多组件 - 滑块
1更多组件 - 时间选择器
1更多组件 - 树形选择
265定制
71定制 - ?
69定制 - 更容易
44定制 - 文档
27定制 - 改进自定义主题
26定制 - 颜色
25定制 - 主题
3定制 - 主题库(来自社区)
212系统
37系统 - ?
36系统 - 返回 makeStyles
20系统 - 文档
15系统 - SASS
11系统 - 与 Tailwind CSS 的互操作性
14系统 - 简化
8系统 - CSS 变量
7系统 - 互操作性
7系统 - 无 CSS-in-JS 运行时
6系统 - CSS 模块
6系统 - 深色模式
6系统 - 实用程序类名
5系统 - 冗长
5系统 - 性能
4系统 - CSS API
4系统 - styled-components
3系统 - 生成的类
3系统 - 变体
3系统 - 可以 React 外部共享的 CSS
3系统 - 状态定制
3系统 - 主题
1系统 - 内联样式
1系统 - 决定样式解决方案
1系统 - 重复的 CSS 属性
1系统 - 瞬态属性
1系统 - TypeScript 智能感知
1系统 - 更多使用 sx 而不是 styled
172设计
51设计 - 提供更多主题(不仅仅是 Material Design)
28设计 - 使默认主题的外观和感觉更好
27设计 - 更多地推动 @mui/base
24设计 - Material Design v3
13设计 - 放弃 Material Design
10设计 - ?
7设计 - 针对企业应用程序的更密集的 UI
6设计 - 区块模板
3设计 - 响应式
2设计 - 移动端
1设计 - 颜色渐变
109性能
46性能 - 包大小
36性能 - ?
16性能 - 运行时
4性能 - 更少的 DOM 节点/React 组件
2性能
2性能 - 文档
1性能 - 动画
1性能 - 在开发模式下
1性能 - 不必要的 prefixes
97DX
27DX - 更简单
20DX - API
17DX - 更高级别的组件 API
6DX - 更低级别的组件 API
5DX - 导入
5DX - 轻量级
3DX - 调试
2DX - 样板代码
2DX - 更少的包
2DX - 公开钩子
1DX - 类名
1DX - ?
1DX - 可组合性
1DX - 更快的发布
1DX - 更少的发布
1DX - 辅助函数
1DX - 版本控制
1DX - vscode 插件
75数据网格
62数据网格 - ?
3数据网格 - 文档
2数据网格 - Excel
1数据网格 - 包大小
1数据网格 - 列固定
1数据网格 - 筛选
1数据网格 - 全屏
1数据网格 - 分组
1数据网格 - 大型数据集
1数据网格 - 主面板
1数据网格 - 嵌套 - 导出选项
61免费 vs. 付费
18免费 vs. 付费 - 全部 MIT
8免费 vs. 付费 - 更便宜的 Pro 计划
8免费 vs. 付费 - 没有现有功能改为付费
7免费 vs. 付费 - 更多 MIT
6免费 vs. 付费 - 数据网格更多 MIT
5免费 vs. 付费 - 没有 Pro 计划(Premium 可以保留)
4免费 vs. 付费 - 日期选择器更多 MIT
2免费 vs. 付费 - 删除文档广告
1免费 vs. 付费 - 更便宜的 Premium 计划
1免费 vs. 付费 - 设计工具包更多 MIT
1免费 vs. 付费 - 使用捐款
61更少的重大更改
47TypeScript
28TypeScript - ?
11TypeScript - 更快的检查
5TypeScript - 文档
2TypeScript - 更多支持
1TypeScript - 转换器
1TypeScript - 智能感知
41日期选择器
18日期选择器 - ?
5日期选择器 - 使其稳定
3日期选择器 - 范围选择
2日期选择器 - 错误
2日期选择器 - 单个范围输入
2日期选择器 - 时间时钟很丑陋
2日期选择器 - 可定制性
1日期选择器 - dayjs
1日期选择器 - 添加范围
1日期选择器 - 设计
1日期选择器 - 文档
1日期选择器 - 键盘
1日期选择器 - 区域设置
1日期选择器 - 重写
26社区
14社区 - 培育
9社区 - 支持
2社区 - 发布沟通
1社区 - v4 支持
20图标
12图标 - 更多
3图标 - ?
1图标 - 动画
1图标 - 内置
1图标 - 动态加载
1图标 - Font Awesome
1图标 - 其他库
19可访问性
9可访问性 - 实现
6可访问性 - 文档
2可访问性 - ?
2可访问性 - 全面审核
15React Native
10低代码
7低代码 - 设计系统创建器
2低代码 - 从设计文件生成代码
1低代码 - UI 构建器
10更主观
9动画
6动画 - 新 API
1动画 - Framer Motion
1动画 - 在现有组件上
1动画 - 性能
7修复更多错误
7支持其他框架(例如 Vue)
5自动完成
3自动完成 - ?
1自动完成 - 缩写
1自动完成 - 与文本字段一致
4旧版浏览器支持
3组件一致性
2较少主观
2修复 RTL
2类组件

有改进的想法?请与我们分享!以下是如何确保您的请求获得最高优先级

  • 当您在 MUI Core 或 MUI X 存储库中创建 issue 以请求功能或组件时,我们会将其标记为 Waiting for upvotes。您的 issue 收到的票数越多,其优先级就越高 —— 因此请确保构建、研究和论证您的请求,使其与其他社区成员产生共鸣。
  • 当请求新组件时,请务必对现有实现的组件进行基准测试,以便我们可以了解哪些有效以及我们可以改进哪些方面。
  • 尝试尽可能清楚地解释您遇到的问题 —— 通常情况下,我们已经有一个组件可以解决它。
  • 如果您请求更轻松的定制,请务必演示期望的结果,并尽可能详细地解释您遇到的问题。这些请求通常突显了我们改进文档的机会。

您的产品

在 MUI 之前,您主要使用什么?

Bootstrap: 40.6%; Started with MUI: 37.4%; Tailwind:: 4.8%; Ant Design: 4.8%; Angular Material: 4%; Semantic-UI: 4%; Other: 3.8%; Chakra UI: 0.7%

1589 人中共有 1389 人回答了此问题。

结果与去年相比没有太大差异,除了更多开发者报告从 MUI 开始使用(2020 年为 13%,2021 年为 37%)。非常令人鼓舞的是,我们了解到有这么多用户从一开始就使用 MUI 构建产品!

除了 MUI 之外,您还在使用以下哪些库?

Nope, just MUI: 70.7%; Tailwind: 10.3%; Bootstrap: 9.8%; Ant Design: 4%; Semantic-UI: 1.7%; Other: 1.6%; Chakra UI: 1.2%; Angular Material: 0.8%

1589 人中共有 1468 人回答了此问题。

我们很高兴看到 MUI 在很大程度上满足了您对组件 UI 库的所有需求 —— 这是我们的首要任务。

您为谁构建产品?

For the company I work at: 65.6%; For my personal side project: 20.8%; For a client: 12.9%; Other: 0.7%

1589 人中共有 1523 人回答了此问题。

与去年的结果相比,客户工作和个人项目今年互换了位置。也许 v5 引起了开发者的足够兴趣,让他们在自己的网站和应用程序上尝试使用它?无论如何,看到这种情况很有趣。

您与谁的协作最多?

Other developers: 67.2%; Designers: 34.3%; Product managers: 29.2%; No one, it's just me: 28.9%; Other: 0.9%

1589 人中共有 1527 人回答了此问题。

这是我们年度调查中的一个新问题,结果突显了一个事实,即我们的文档不仅适用于开发者。对于设计师、产品经理和其他可能成为工程项目利益相关者的技术性较低的团队成员来说,我们的文档甚至代码本身都至关重要,需要易于理解。

今年您或您的团队使用 MUI 交付了多少个 Web 应用程序?

0-1: 494; 2-3: 381; 4-5: 122; 6-10: 26; 10+: 28

1589 人中共有 1051 人回答了此问题。

大约一半 (47%) 回答此问题的用户交付了一个应用程序或只是维护了一个现有应用程序。令人印象深刻的是,5% 的受访者交付了六个或更多应用程序,其中一半以上超过了 10 个!

您在应用程序中使用哪些 MUI 产品?

MUI Core: MIT licensed foundational components, right now available with Material Design: 96.6%; MUI X: collection of advanced components available under MIT and commercial licenses: 14.7%; MIT License: 126 responses; Commercial licenses: 99 responses

1589 人中共有 1551 人回答了此问题。

毫不奇怪,我们的大多数用户群都在使用 MUI Core。但令我们非常鼓舞的是,看到如此高比例的 MUI X 用户使用商业许可,我们很高兴继续为这些用户扩展我们的付费产品。

MUI X 领域有很多机会可以挖掘。让我们在下面进一步探讨。

您在此次调查之前是否知道 MUI X?

Yes: 54.5%; No: 45.5%

1589 人中共有 1312 人回答了此问题。

很大一部分用户在调查之前不知道 MUI X 是什么,这清楚地表明我们仍有很多工作要做才能扩大其影响力。

您目前是否正在使用任何付费 UI 组件库?

Yes: 11.8%; No: 88.2%

1589 人中共有 1584 人回答了此问题。

结果与去年相比没有太大差异,除了说“是”的受访者略有增加。大多数受访者不使用任何付费库,但那些使用的受访者大多在使用 MUI X。这表明我们的一些假设和执行可能是正确的!开发者需求似乎并没有完全被 OSS 生态系统满足。

我们如何改进 Data Grid 以更好地为您服务?

Customizability: 21.9%; Cheaper Pro plan: 17.2%; More features: 12.5%; Fix features: 9.4%; Improve docs: 6.3%; Look & feel: 6.3%; Maintain it: 4.7%; Bugs: 3.1%; DX: MUI Core consistency: 3.1%; Performance: 3.1%; Transition: 3.1%; SSR: 1.6%

1589 人中共有 64 人回答了此问题。

  • 可定制性: 这是一个我们经常讨论的话题,并且在讨论 MUI X 时经常出现。您的反馈告诉我们,我们需要加倍努力,使定制变得更加容易。我们还认识到,我们仍然缺少一些关于主题和无头 API 的重要文档。
  • 更便宜的 Pro 计划: 我们知道对于许多开发者来说,它可能超出预算,这就是为什么免费版本已经包含许多功能。MUI 主要开发开源软件,我们非常重视 OSS 精神,即自由分享我们构建的东西,以便其他人可以使用它并在其基础上进行改进。
    • 我们的 Pro 计划的定价将其定位为供专业组织团队使用的产品。也就是说,许多对价格留下反馈的人都是个人,因此可能存在为那些没有公司支持的个人扩展产品范围的机会。
  • 更多功能 & 功能修复: 可折叠行、列调整大小以及 ERP 应用程序的功能是一些被请求的功能。关于要修复的功能,最常见的请求是使用 REST API 进行分页、后端筛选和单元格编辑器。
  • 改进文档: 数据网格文档当然可以进行重大改进 —— 我们正在努力。
  • 改进外观和感觉: 数据网格构建者希望获得更多 Material 之外的默认设计选项。在 UX 改进方面,许多开发者特别提到了筛选体验。
点击查看类别细分。
14可定制性
9可定制性 - 样式
3可定制性 - ?
2可定制性 - 文档
11更便宜的 Pro 计划
8更多功能
3更多功能 - ?
2更多功能 - 主细信息
1更多功能 - 行编辑
1更多功能 - 列固定
1更多功能 - 列调整大小
6修复功能
3修复功能 - 筛选
1修复功能 - 编辑
1修复功能 - 分页
1修复功能 - 服务器端
5文档
4文档 - ?
1文档 - 更多示例
4外观和感觉
3维护它
2错误
2DX - MUI Core 一致性
2性能
2翻译
1a11y
1更简单的安装
1更少的重大更改
1仅钩子 API
1SSR

我们如何改进 Data Grid Pro 以更好地为您服务?

More features: 39.8%; Customizability: 20.4%; Fix features: 15.1%; Performance: 5.4%; Cheaper Premium plan: 3.2%; Improve docs: 3.2%; DX - API: 2.2%; LGPL license: 2.2%; More components: 2.2%

1589 人中共有 75 人回答了此问题。

  • 更多功能: 分组 是 Data Grid Pro 最需要的功能,其次是 主细信息、聚合、搜索、树形数据列固定。在我们分析调查结果的过程中,我们已经发布了其中一些功能。查看链接以查看其文档和演示。或者,您可以关注 公共路线图,以了解其他功能何时发布。
  • 可定制性: 大多数关于可定制性的请求都要求能够调整数据网格交互,我们需要更深入地研究以更好地理解。紧随其后的是对更多样式可定制性和更多关于定制文档的请求。
  • 修复功能: 筛选在 Data Grid Pro 上被要求修复的功能中排名第一。紧随其后的是延迟加载和服务器端渲染支持。
  • 性能: 关于性能的请求主要分布在运行时和包大小之间。我们必须承认,到目前为止,我们几乎没有努力优化包大小。那里可能有一些唾手可得的成果。
点击查看类别细分。
37更多功能
6更多功能 - 分组
6更多功能 - 主细信息
6更多功能 - 路线图
4更多功能 - ?
3更多功能 - 聚合
3更多功能 - 搜索
3更多功能 - 树形数据
2更多功能 - 列固定
2更多功能 - 透视
1更多功能 - Excel
1更多功能 - 行重新排序
19可定制性
7可定制性 - 行为
5可定制性 - 样式
4可定制性 - 文档
2可定制性 - ?
1可定制性 - 单元格中的图表
14修复功能
10修复功能 - 筛选
2修复功能 - 延迟加载
2修复功能 - 服务器端
5性能
3性能 - ?
1性能 - 包大小
1性能 - 运行时
4文档
3文档 - ?
1文档 - 更多示例
3更便宜的 Premium 计划
2错误
2DX - API
2LGPL 许可证
2更多组件 - 树视图
2溢出文本
1DX - MUI Core 一致性
1UX

在数据网格之前,您使用什么?

In house: 29.9%; MUI Table: 17.9%; Nothing: 7.5%; material-table: 6%; material-datatables: 6%; Sencha: 6%; Kendo UI: 4.5%; react-table: 4.5%; Bootstrap Table: 3%; AG Grid: 3%; datatables.net: 3%; JSP: 1.5%

1589 人中共有 149 人回答了此问题。

有趣的是,看到很多用户都在构建自己的内部数据网格。我们很想更多地了解您的团队做出此选择的原因,特别是因为我们确切地知道这可能需要多少工作。此外,令人耳目一新的是,标准的 MUI 表格组件足以满足您的许多需求。

您正在构建什么?

Dashboard admin applications: 26.3%; Enterprise applications: 25.9%; A custom design system: 9.7%; Landing page: 8.1%; E-commerce application: 7.8%; Personal website/portfolio: 6.9%; CMS: 6.1%; Just playing with tech: 4.6%; Blog: 2.8%; Other: 1.4%

企业应用、仪表板应用程序和设计系统仍然位居前三,与去年类似。变化的是,开发者现在更多地使用 MUI 构建电子商务应用程序和作品集,这非常酷。我们很乐意看到它们!欢迎在 “谁在使用 Material UI?” issue 中分享。

您正在使用哪些交付机制?

Single-page app (Create React App, etc): 74.7%; Server-side rendered website (Next.js, Gastby, etc): 20.8%; Desktop app (Electron, etc): 3.5%; Native mobile app (Cordova, etc): 0.6%; Other: 0.4%

1589 人中共有 1509 人回答了此问题。

你正在使用哪种类型系统?

TypeScript: 63.8%; None: 18%; prop-types: 16.6%; Flow: 1.4%; Other: 0.2%

1501/1589 人已回答。

这些结果与去年大相径庭——TypeScript 异军突起,现在已成为最主要使用的类型系统。

如果使用框架,你正在使用哪个框架?

Create React App: 62.4%; Next.js: 21.9%; Custom webpack: 10.7%; None: 2.6%; Gatsby: 0.9%; Other: 1.5%

1497/1589 人已回答。

今年我们看到 Next.js 的使用量有了显著提升(与 2020 年的 12.4% 相比),这并不令人意外,因为它的受欢迎程度不断提高,并在 2021 年取得了进步。

你正在使用哪种样式解决方案?

MUI Core v4 (JSS): 45%; Styled components: 37.9%; Emotion: 30.2%; SASS: 20.8%; CSS Modules: 18.9%; Vanilla CSS: 17.6%; Tailwind CSS: 9.1%; Stitches: 0.4%; Other: 1.2%

1492/1589 人已回答。

由于 MUI Core v5 版本是最近才发布的,我们预计仍有许多开发者在使用 JSS,而且可能总会有人更喜欢它。

但 Emotion 和 styled-components 在这里的增长值得关注,因为它们是我们新的样式解决方案的基础。今年,我们将专注于扩展和改进 MUI System,以进一步改进这种新的样式解决方案。

你最近迁移到 MUI Core v5 了吗?

Yes: 63.3%; No: 36.7%

1546/1589 人已回答。

虽然许多回答调查的人已经迁移,但我们仍然需要说服更多人加入我们。在未来一年,我们将重点改进文档,并完善自动化工具。

哪个陈述最能定义你的迁移体验?

It was tricky but MUI's documentation and resources helped me to get it right: 43%; It was smooth and it is now working fine: 38.5%; It wasn't good, I had many problems and it took me a long time to finish: 14.3%; It was bad and I ended up regretting it: 2.8%; Other: 1.4%

930/1589 人已回答。

MUI 可以做些什么来改善迁移体验?

General documentation improvements: 43.2%; Automation: 20.7%: Fewer breaking changes: 15.6%; Fewer styling solution breaking changes: 8.5%; More tutorials: 5.4%; More styling solution migration tutorial: 4.4%; Migrate Core and X together: 1%

472/1589 人已回答。

  • 通用文档改进: 文档在定义开发者体验方面起着至关重要的作用。我们绝对需要改进我们的写作,提供更多示例,并提供更多对初学者友好的资源。
  • 自动化: 鉴于 v5 版本的变更数量,我们准备了 codemods 以帮助进行迁移。这得到了积极的反馈,这令人鼓舞,因为这是我们第一次提供全面的工具来自动化迁移过程。然而,什么时候以及在什么情况下 codemods 没有那么有效变得越来越清晰,因此我们将确保对其进行更多改进。

能否分享一下你尚未迁移的原因?

No bandwidth: 28.4%; Started in v5: 14.6%; Afraid of amount of breaking changes: 12.3%; Already planned but haven't started: 9.5%; Missing incentive: 8.5%; Not a priority: 7.3%; Don't like new styling solution: 4%; Blocked by 3rd party dependencies: 3.3%; Didn't know about it: 3.3%; Migration is in process: 3.3%; Had regressions, therefore came back to v4: 1.3%; Waiting to become stable: 1.3%

441/1589 人已回答。

  • 没有带宽 / 不是优先事项 / 受第三方依赖项阻碍: 这些原因可以归为“超出你控制的力量”。这是可以预料的,但我们将继续尽我们所能说服你的团队进行迁移,并在你准备好时尽可能顺利地完成迁移。
  • 害怕大量的破坏性更改: 这种恐惧是可以理解的,我们仍然需要在文档、自动化和其他资源方面做大量工作,以帮助最大限度地减少迁移所涉及的摩擦。
  • 不喜欢新的样式解决方案: 我们认为这完全合理。并非每个人都会接受每一次变动。但是,与任何开源项目一样,你始终有机会权衡并留下你对我们正在考虑的任何特定努力的想法。 讨论所选样式解决方案的问题 是一个很大的问题,每一项贡献都对最终的决定产生了影响。请不要犹豫参与这些公开讨论——特别是当你看到任何你不同意的事情时。
  • 不知道这件事: 这是我们真的需要努力改进的地方!我们将在未来几个月探索与社区互动的新方式。
  • 回归 - 不得不退回到 v4: 如果你遇到这种情况,请针对你面临的问题提交 issue,我们将很乐意为你提供指导。

你或你的团队中的任何人是否使用过任何低代码工具来帮助开发你的产品?

Yes: 16.1%; No: 83.9%

1542/1589 人已回答。

我们看到了低代码工具在触及更广泛的受众(超越开发者)、实现更好的协作和更快的开发方面的巨大潜力。由于我们现有的用户都是技术素养较高的人,因此超过 80% 的人不使用低代码工具也就不足为奇了。但是对于 16% 回答“是”的人,我们有以下问题。

它帮助你构建了什么?

An internal tool: 22.5%; Landing pages: 22.1%; Analytics dashboard: 17.6%; A design system: 15.6%; E-commerce storefront: 8.6%; A simple customer-facing mobile app: 6.6%; Other: 7%

244/1589 人已回答。

MUI 用户主要使用低代码工具来构建内部工具、落地页和分析仪表板。这些发现与我们其他用户正在构建的内容一致。但很高兴看到市场上有开发者信任的低代码工具。

如果 MUI 考虑构建低代码工具,那么哪个主要用例会符合你的需求?

Deliver a React design system: 22.2%; Generate high-quality React codebase after visual building: 19.2%; Building dashboards for rapid data visualization: 18.3%; Higher fidelity prototyping and demoing for accurate design handoff: 13.6%; Building internal apps when pro-code is overkill: 11.4%; Shipping landing pages with my existing React design system: 7.3%; Shipping production simple apps before moving to pro-code: 6.2%; Other: 1.8%

1200/1589 人已回答。

开发者主要对 React 设计系统、代码库生成器、内部需求工具、数据可视化和原型设计感兴趣。这些需求既适用于内部用例,也适用于面向客户的用例。

关于你

你是如何第一次听说 MUI 的?

Organic search: 57.8%; Word of mouth: 25.8%; Social media: 8.4%; Blog: 4.4%; Other: 3.5%

1417/1589 人已回答。

以下哪项最能描述你目前的工作角色?

Full-stack developer: 52.6%; Front-end developer: 30.5%; Entrepreneur (I do it all!): 7.5%; Beginner learning web development: 2.6%; Engineering Manager: 2.6%; Back-end developer: 1.1%; Designer: 1%; Product Manager: 0.7%; Other: 1.3%

1497/1589 人已回答。

你目前的工作场所共有多少员工?

0-1: 187; 2-10: 358; 11-20: 136; 21-50: 139; 51-100: 97; 100+: 305

1222/1589 人已回答。

你使用 JavaScript 开发有多长时间了?

Just getting started: 4.8%; 1 year +: 22.2%; 3 years +: 27.9%; 5 years +: 28.2%; 10 years +: 11.1%; 15 years +: 5.9%

1520/1589 人已回答。

你使用 React 开发有多长时间了?

Just getting started: 7%; 6 months +: 11%; 1 year +: 20.6%; 2 years +: 21.2%; 3 years +: 27.1%; 5 years +: 11.5%; Bleeding edge baby! 6 years +: 1.6%

1589 人中共有 1523 人回答了此问题。

你使用 MUI 开发有多长时间了?

Just getting started: 16.6%; 6 months +: 19.4%; 1 year +: 24.4%; 2 years +: 21.2%; 3 years +: 15.6%; I'm a pioneer! 5 years +: 2.8%

1519/1589 人已回答。

结论

年度调查是我们决定下一步行动的最重要资源之一。我们感谢你投入时间回答我们的问题,并且我们再怎么强调都不过分我们有多么重视你的意见。

2021 年,我们发布了 MUI 有史以来最大的更新。我们还开始投资互补产品,例如 MUI X、我们的 设计套件高级模板

你在此次调查中提供的反馈帮助我们更好地了解我们需要改进的领域

  • 文档: 你要求更多示例、更多教程、更多学习资料和更全面的文档。大多数关于 Material UI 的第三方内容都随着 v5 版本的发布而过时,因此我们有很多工作要做才能弥补这一不足。
  • 自定义: 新的样式工具是在提高自定义性方面迈出的重要一步。我们认识到,在改进 MUI 组件的自定义体验方面仍有许多机会。
  • 设计质量: 设计仍然是引导人们选择特定组件库的主要驱动因素。越来越多的开发者因为 Material Design 是唯一开箱即用的设计方向而远离 MUI,这对我们来说是一个巨大的警示信号,我们需要探索其他道路。
  • 破坏性更改: 对减少破坏性更改的需求确实突出了一个非常积极的方面:许多应用程序依赖 MUI 作为其首选组件库。为了继续支持你的产品,我们将寻找方法来最大限度地减少未来更新中破坏性更改的数量。我们还将继续探索自动化工具,以减轻任何确实出现的破坏性更改带来的痛苦。
  • 商业与 MIT 许可之间的平衡: MUI 将始终首先是一个 OSS 项目,但我们从我们的付费产品和支持服务中获得了许多积极的反馈,这告诉我们我们正朝着正确的方向前进。我们正在迅速扩展我们的团队,以更好地满足我们所有用户的需求,我们期待使我们的 MIT 许可和商业产品都更加强大和引人注目。如果你想更多地了解我们对 MIT/开源平衡的看法,请查看我们的 Stewardship 页面
  • 性能: 我们仍在寻找优化性能的最有效方法。TypeScript 具有潜力,MUI System 的速度需要改进。这对于 移动体验 尤为重要。我们欢迎你的建议!

如果你想继续影响我们的路线图,你可以访问 MUI CoreMUI X 仓库,打开 issue,为你最感兴趣的 issue 投票,或者留下你对任何其他想要改进的地方的想法。我们很乐意听到你的声音。

再次感谢,期待下次调查!

阅读更多

以下是一些与本文涵盖的主题相关的其他内容

最后,查看 MUI 开发者调查的最近两次迭代