我为什么选择全职投入 Storybook
Storybook 光明而激动人心的未来

我被 Storybook 所吸引,因为它使开发美观的 UI 变得有组织、可重复且高效。
在过去一年里,我在业余时间帮助维护 Storybook。在那段时间里,项目取得了巨大的增长。越来越多的开发者意识到了隔离构建 UI 组件的好处!
增长带来了比我利用夜间和周末能处理的更多的功能请求和问题报告。我很快意识到,要实现 Storybook 的目标需要投入专门的精力。
因此,我寻找一个与我一样对 Storybook 充满热情,并能让我更多地投入 Storybook 工作的团队。今天,我非常激动地宣布,我将加入 Chroma,全职投入 Storybook 的工作!

维护需要时间
简而言之,Storybook 的开发情况是:450 位贡献者创建了 1.8k 个拉取请求,并提交了 2k 个问题。从数量上看,它比大多数商业软件项目都大。
然而,一些功能请求和路线图项已经在待办列表中搁置了很长时间。实际上,开源项目是在贡献者的业余时间进行的。这意味着社区有很多 PR、问题、功能和很棒的想法无法顾及(特别是较大的功能!)
正如您可能在其他开源项目(如 Babel、Webpack 和 Gatsby)中注意到的那样,当有全职维护者时,项目进展会快很多。我认为 Storybook 也值得同样投入专门的精力——特别是如果社区想要达成其目标的话。
开源即社区
开源的核心优势之一是社区。这个想法很实际:大家一起做大事比各自为政更容易。
我喜欢在 Storybook 上工作,正是因为有社区。与世界各地数百位拥有相同价值观并朝着同一目标努力的人协作,感觉棒极了(即使我们的使用场景有时差异很大!)
我现在把像 Filipp Riabchun🇷🇺、Michael Shilman 🇺🇸、Igor Davydkin🇮🇱 和 Tom Coleman 🇦🇺 这样的协作者都视作好朋友了。
让我们一起建立一个蓬勃发展的社区
在任何软件项目中,随着项目规模的增长,协作往往会变得更加困难。Storybook 也不例外。开源项目有很多充满热情的开发者,这意味着要让所有人步调一致是很困难的。
我将致力于建立一个协作且蓬勃发展的开源社区。具体做法如下:
- 建立更好地支持用户、贡献者和维护者的流程
- 开发社区最需要的功能
- 在技术聚会和会议中推广 Storybook
我打算每天在 Storybook 的 Slack #maintenance 频道发布我的进展。这样所有人都能看到我在做什么并一起协作!
Storybook 的下一步计划
我的目标是让 Storybook 成为 UI 组件开发的最佳工具。好消息是 Storybook 已经正在朝着这个方向发展。拥有超过 26k 的 GitHub star 和 450 位贡献者,它现在正被 Dropbox、Microsoft、Airbnb 等众多尖端软件团队使用。我的首要维护重点是:
📝 Storybook 样式指南
首先是实现 Storybook 内置的文档视图。也就是说,允许你在页面中编写 markdown 并嵌入组件 Story。Storybook 用户已经记录组件变体,因此,Storybook 提供一种方式来编写更长篇幅的文档也很自然。

⚡️ 提升 Storybook 速度
如果你以创建 UI 为生,你可能在 Storybook 中花费大量时间。但随着你在 Storybook 中构建越来越多的组件,它往往会变慢。我正专注于性能和可扩展性,以便开发者始终获得流畅的用户体验。
🎛 学习和自定义 Storybook
Storybook 成功的一个主要因素是其可定制性。勇敢的开发者们正将其用作组件探索器、工作台、文档、演示环境等等。用例太多了,很难知道从何入手。我将帮助人们从零开始学习 Storybook,并发现如何根据他们的需求进行自定义。
🌏 托管和版本化的 Storybook
最常被请求的功能之一是获得一个版本化、托管的 Storybook 的能力。我将深入研究如何让这对每个 Storybook 用户都变得简单易用。好消息是,由于我在 Chroma 的新队友(他们创建了 Chromatic)的专业知识,这个目标并不遥远。
简而言之
我坚信 Storybook 作为 UI 组件开发者的头号工具,拥有 光明而激动人心的未来。我很高兴能全职投入 Storybook 的工作,但我并非独自贡献。
在 Chroma 的朋友们的全力支持下,我有机会与全球各地志同道合的开发者社区合作,共同构建一个出色的开发工具。
如果您有想法或反馈,请随时联系我!
附注:我将在 7 月 26 日星期四东部时间下午 2 点的 Storybook AMA 上回答问题。由 The Practical Dev (dev.to) 主持。