Inspire creativity in modern web development.
English | 简体中文
Modern.js is an open source web engineering system from ByteDance, including multiple solutions:
- 🦄 Modern.js Framework: A progressive React framework for web development.
- 🐧 Modern.js Module: A powerful solution for npm package development.
- 🐈 Modern.js Builder: An Rspack-based build tool for web development.
- Use Modern.js Framework to develop a web application.
- Use Modern.js Module to develop an npm package.
- Use Modern.js Builder to provide build capabilities for your own web framework.
The following solutions and libraries are available within the Modern.js ecosystem:
- 🦀 Rspack: A fast Rust-based web bundler.
- 🐬 Rsbuild:An Rspack-based build tool for the web, rebranded from Modern.js Builder.
- 🐹 Rspress: A fast Rspack-based static site generator.
- 🐟 Garfish: A powerful micro front-end framework.
- 🦆 Reduck: A redux-based state management library.
- 🐴 SWC Plugins:Built-in SWC plugins for Modern.js.
We use Modern.js Benchmark to observe the trend of key metrics, such as bundle size, compile speed and install size.
Please refer to the Modern.js Roadmap. We will update the Roadmap content every quarter. Please stay tuned.
Modern.js provides a collection of ready-to-use examples that you can find and use in the modern-js-examples repository.
New contributors welcome!
Please read the Contributing Guide.
This repo has adopted the Bytedance Open Source Code of Conduct. Please check Code of Conduct for more details.
Thanks to the following friends for their contributions to Modern.js:
Some implementations of Modern.js are modified from existing projects, such as create-react-app, remix, jest and bundle-require. Thanks for them.
@modern-js/bundle-require
: is modified from bundle-require.@modern-js/plugin
: the hooks API is referenced from farrow-pipeline.@modern-js/builder
: the moduleScope and fileSize plugins are referenced from create-react-app, the generateMetaTags function is referenced from html-webpack-plugin.@modern-js/plugin-testing
: the jest runner is referenced from jest-cli.@modern-js/plugin-data-loader
: some code is referenced from remix.@modern-js/babel-plugin-module-resolver
: is modified from babel-plugin-module-resolver.
Modern.js is MIT licensed.
Third party licenses are listed in THIRD-PARTY-LICENSE.