For AI agents: the complete documentation index is available at /zh/llms.txt, the full documentation bundle is available at /zh/llms-full.txt, and this page is available as Markdown at /zh/guides/get-started/quick-start.md.
  • 简体中文
  • 快速上手

    环境准备

    Node.js

    在开始使用前,你需要安装 Node.js,并保证 Node.js 版本不低于 v22.18.0,我们推荐使用 Node.js 22 的 LTS 版本。

    你可以通过以下命令检查当前使用的 Node.js 版本:

    node -v

    如果你当前的环境中尚未安装 Node.js,或是安装的版本不满足此要求,可以通过 nvm 或 fnm 安装需要的版本。

    下面是通过 nvm 安装 Node.js 22 LTS 版本的例子:

    # 安装 Node.js 22 的长期支持版本
    nvm install 22 --lts
    
    # 将刚安装的 Node.js 22 设置为默认版本
    nvm alias default 22
    
    # 切换到刚安装的 Node.js 22
    nvm use 22
    nvm 和 fnm

    nvm 和 fnm 都是 Node.js 版本管理工具。相对来说,nvm 较为成熟和稳定,而 fnm 是使用 Rust 实现的,比 nvm 提供了更好的性能。

    此外,在安装 nvm 或 fnm 后,然后只要仓库根目录下有内容为 lts/jod 的 .nvmrc 文件,进入这个仓库时就会自动安装或切换到正确的 Node.js 版本。

    pnpm

    推荐使用 pnpm 来管理依赖:

    npm install -g pnpm@10
    Note

    Modern.js 同样支持使用 yarn、npm 进行依赖管理。

    创建项目

    Modern.js 提供了 @modern-js/create 工具来创建项目,不需要全局安装,直接使用 npx 按需运行即可。

    你可以在已有的空目录来创建项目:

    mkdir myapp && cd myapp
    npx @modern-js/create@latest

    也可以直接用新目录创建项目:

    npx @modern-js/create@latest myapp

    @modern-js/create 会直接创建应用,不再提供问答界面:

    🚀 欢迎使用 Modern.js
    
    📦 正在创建项目 "myapp"...
    
    ✨ 项目创建成功!🎉
    
    📋 接下来你可以执行以下命令:
    
    📁 进入项目目录:
    
      cd myapp
    
    🔧 初始化 Git 仓库:
    
      git init
    
    📥 安装项目依赖:
    
      pnpm install
    
    ⚡ 启动开发服务器:
    
      pnpm dev

    现在,项目结构如下:

    .
    ├── modern.config.ts
    ├── package.json
    ├── README.md
    ├── rstack.config.mts
    ├── src
    │   ├── modern.runtime.ts
    │   └── routes
    │       ├── index.css
    │       ├── layout.tsx
    │       └── page.tsx
    └── tsconfig.json

    新建的独立项目使用 Rstack CLI 进行代码校验和格式化:

    pnpm check
    pnpm format

    启动项目

    在项目中执行 pnpm run dev 即可启动项目:

    $ pnpm run dev
    
    > modern dev
    
      Modern.js Framework
    
    ready   Client compiled in 0.86 s
    
      > Local:    http://localhost:8080/
      > Network:  http://192.168.0.1:8080/

    在浏览器中打开 http://localhost:8080/,可以看到页面内容。

    使用配置

    通过 @modern-js/create 创建的 Modern.js 项目中,会默认生成 modern.config.ts 文件。

    你可以通过该配置文件修改配置,覆盖 Modern.js 的默认行为。例如添加如下配置,开启 SSR:

    modern.config.ts
    import { appTools, defineConfig } from '@modern-js/app-tools';
    
    export default defineConfig({
      server: {
        ssr: true,
      },
      plugins: [appTools()],
    });

    重新执行 pnpm run dev,在浏览器 Network 菜单中,可以发现项目已经在服务端完成了页面渲染。

    核心 npm 包

    在新创建的工程中,默认会安装 @modern-js/app-tools npm 包,它是 Modern.js 框架的核心包,主要提供以下能力:

    • 提供 modern dev, modern build 等常用的 CLI 命令。
    • 集成 Rsbuild,提供构建能力。
    • 集成 Modern.js Server,提供开发和生产服务器相关能力。

    @modern-js/app-tools 是基于 Modern.js 的插件体系实现的,本质上是一个插件,因此你需要在配置文件的 plugins 字段中注册 appTools:

    modern.config.ts
    import { appTools, defineConfig } from '@modern-js/app-tools';
    
    export default defineConfig({
      plugins: [appTools()],
    });

    构建项目

    在项目中执行 pnpm run build 即可构建项目生产环境产物:

    $ pnpm run build
    
    > modern build
    
      Modern.js Framework
    
    info    Starting production build...
    info    Type checker is enabled. It may take some time.
    ready   Client compiled in 6.19 s
    info    Production file sizes:
    
      File                                       Size        Gzipped
      dist/routes-manifest.json                  0.74 kB     0.28 kB
      dist/static/css/async/page.d7915515.css    1.4 kB      0.69 kB
      dist/static/js/main.5ae469e7.js            3.0 kB      1.3 kB
      dist/html/index/index.html                  6.0 kB      2.6 kB
      dist/static/js/async/page.ddc8a4c1.js      19.2 kB     6.7 kB
      dist/static/js/34.171fffdb.js              21.3 kB     7.1 kB
      dist/static/js/lib-router.8995a55e.js      55.3 kB     18.1 kB
      dist/static/js/lib-lodash.53ec3384.js      71.4 kB     24.8 kB
      dist/static/js/lib-react.b5856db9.js       140.0 kB    45.2 kB
      dist/static/js/lib-polyfill.86c452b3.js    213.3 kB    69.9 kB
    
      Total size:  531.8 kB
      Gzipped size:  176.7 kB

    构建产物默认生成到 dist/,目录结构如下:

    dist
    ├── html
    │   └── index
    ├── modern.config.json
    ├── route.json
    ├── routes-manifest.json
    └── static
        ├── css
        └── js

    如果你需要自定义构建产物的目录,请参考 构建产物目录。

    本地验证

    在项目中执行 pnpm run serve 即可在本地验证构建产物是否正常运行:

    $ pnpm run serve
    
      Modern.js Framework
    
    info    Starting production server...
    
      > Local:    http://localhost:8080/
      > Network:  http://192.168.0.1:8080/

    在浏览器中打开 http://localhost:8080/,内容应该和 pnpm run dev 时一致。

    部署

    本地验证完成后,可以参考 部署 一节,将项目部署到服务器上。