Inspire creativity in modern web development.
English | 简体中文
Modern.js 框架是一个基于 React 的渐进式 Web 开发框架。在字节跳动内部,我们将 Modern.js 封装为上层框架,并支撑了数千个 Web 应用的研发。
在开发 React 应用过程中,开发者通常需要去为某些功能去设计实现方案,或是使用其他的库、框架来解决这些问题。Modern.js 支持 React 应用所需要的所有配置和工具,并内置额外的功能和优化。开发者可以使用 React 构建应用的 UI,然后逐步采用 Modern.js 的功能来解决常见的应用需求,如路由、数据获取、状态管理等。
参考 快速上手。
Modern.js 生态提供了以下解决方案和底层库:
- 🦀 Rspack:基于 Rust 的高性能模块打包工具。
- 🐬 Rsbuild:基于 Rspack 的 Web 构建工具。
- 🐹 Rspress:基于 Rspack 的静态站点生成器。
- 🦄 Rslib:基于 Rspack 的 Library 开发工具。
- 🐟 Garfish:一站式微前端解决方案。
- 🦆 Reduck:基于 Redux 的状态管理库。
- 🐴 SWC Plugins:Modern.js 的 SWC 插件。
我们通过 Modern.js Benchmark 来观测核心指标的变化情况,比如 bundle size、compile speed 和 install size。
请参阅 Modern.js Roadmap。我们将定期更新 Roadmap 的内容。
Modern.js 提供了一系列开箱即用的示例项目,你可以在 modern-js-examples 仓库中找到并使用它们。
欢迎参与 Modern.js 贡献!
请阅读 贡献指南 来共同参与 Modern.js 的建设。
本仓库采纳了字节跳动的开源项目行为准则。请点击 行为准则 查看更多的信息。
感谢以下伙伴们为 Modern.js 做出的贡献:
Modern.js 中的部分代码是参考社区中的其他项目实现的,比如 create-react-app,remix,jest 和 bundle-require 等,感谢这些项目:
@modern-js/bundle-require
:修改自 bundle-require。@modern-js/plugin
:hook API 的实现参考了 farrow-pipeline。@modern-js/plugin-testing
:jest runner 参考了 jest-cli。@modern-js/plugin-data-loader
:部分实现参考了 remix。@modern-js/babel-plugin-module-resolver
: 修改自 babel-plugin-module-resolver。
Modern.js 项目基于 MIT 协议,请自由地享受和参与开源。
第三方 licenses 列举于 THIRD-PARTY-LICENSE 中。