Skip to content

resolid/config

Repository files navigation

@resolid/config

Resolid 通用配置, 包含了 TypeScript, Oxlint 的基础配置

安装

pnpm add -D @resolid/config oxlint oxfmt oxlint-tsgolint typescript

TypeScript 配置

增加下面内容到 tsconfig.json

普通项目

{
  "extends": "@resolid/config/tsconfig/base.json"
}

Node 项目

{
  "extends": "@resolid/config/tsconfig/node.json"
}

React 项目

{
  "extends": "@resolid/config/tsconfig/react.json"
}

库项目 (extends 多个项目类型,库项目需放在最后)

{
  "extends": "@resolid/config/tsconfig/lib.json"
}

Oxlint 配置

Javascript Lint 配置

// oxlint.config.ts
import { defineConfig } from "oxlint";
import javascriptConfig from "@resolid/config/oxlint/javascript";

export default defineConfig({
  extends: [javascriptConfig],
});

TypeScript Lint 配置

// oxlint.config.ts
import { defineConfig } from "oxlint";
import typescriptConfig from "@resolid/config/oxlint/typescript";

export default defineConfig({
  extends: [typescriptConfig],
});

React Lint 配置

由于 Oxlint 配置解析器的限制,目前你必须直接安装所需的 JS 插件

pnpm add -D eslint-plugin-react-hooks eslint-plugin-react-you-might-not-need-an-effect
// oxlint.config.ts
import { defineConfig } from "oxlint";
import reactConfig from "@resolid/config/oxlint/react";

export default defineConfig({
  extends: [reactConfig],
});

环境 Lint 设置

// oxlint.config.ts
import { defineConfig } from "oxlint";
// 浏览器环境
import browserConfig from "@resolid/config/oxlint/browser";
// Node 环境
import nodeConfig from "@resolid/config/oxlint/node";

export default defineConfig({
  extends: [browserConfig, nodeConfig],
});

Oxfmt 配置

import { oxfmtConfig } from "@resolid/config/oxfmt";

export default oxfmtConfig({});

About

Shared TypeScript, Oxlint, and Oxfmt configurations

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Contributors