深入探讨Node.js网站重新设计

深入探讨Node.js网站重新设计

💡 原文英文,约1600词,阅读约需6分钟。
📝

内容提要

Node.js网站经过14年的发展,进行了全新设计,旨在提升用户体验和信息架构。新设计强调渐进式演变,减少用户干扰,采用现代技术如Next.js和Tailwind CSS。团队注重可访问性和性能,支持多语言,并通过社区贡献推动项目进展,为Node.js网站的未来奠定了坚实基础。

🔎

延伸解读

从失败中学习:2019年重设计尝试的教训

文章提到,2019年团队曾尝试在nodejs.dev新域名和新仓库上重设计网站,但最终未能持续。原因包括开发孤立、贡献者工作流缺失、维护负担过重等。这一失败促使团队转向渐进式演变和在现有仓库中开发,以最小化对用户和贡献者的干扰。这段历史提醒我们,大型开源项目的重设计需充分考虑社区现有工作流和可持续性。

技术选型:为何从Nextra转向Next.js

团队最初采用Nextra(基于Next.js的静态站点生成器)进行重设计,但随着网站规模增长,需要不断突破Nextra的约定,依赖底层Next.js功能。最终转向Next.js,因其灵活性和强大功能,同时保持静态构建以提升终端用户速度,并利用增量静态再生获取动态内容。这一选择平衡了性能与动态需求,也契合贡献者现有的React技能。

国际化重置:艰难但必要的决定

旧网站曾支持近20种语言,但由于一系列不幸事件,团队决定重置所有翻译。文章称这是一个艰难但正确的决定。目前正与Crowdin合作重新建立国际化工作,包括仔细解析新的基于MDX的内容。这意味着多语言支持将逐步恢复,社区可关注后续进展并参与翻译贡献。

社区贡献与开发者体验的强化

重设计过程中,团队通过Grace Hopper Celebration和Hacktoberfest等活动吸引新贡献者,准备了“good first issues”并提供现场指导。仅Grace Hopper就收到28位作者的40个PR,Hacktoberfest另有26个PR。同时,团队改进文档、使用TypeScript、加强CI/CD反馈,以降低贡献门槛。这些举措体现了对开发者体验和社区成长的重视。

❓

Q&A

Node.js网站重新设计的主要目标是什么?

主要目标是提升用户体验和信息架构,确保网站在未来的可持续发展。

新设计中使用了哪些现代技术?

新设计采用了Next.js和Tailwind CSS等现代技术。

Node.js网站的访问量和内容规模如何?

网站每月处理30亿请求,包含1600多页内容。

在重新设计过程中,团队如何确保用户体验不受影响?

团队强调渐进式演变,尽量减少用户干扰,确保平稳过渡。

Node.js网站的国际化情况如何?

旧网站支持近20种语言,但由于重置翻译,正在与Crowdin合作重新建立国际化。

团队如何鼓励新贡献者参与项目?

通过提供“良好的首个问题”和现场指导,鼓励新贡献者参与。

🏷️

标签

➡️

继续阅读