# ts-node-esm-template **Repository Path**: biubiuuuu/ts-node-esm-template ## Basic Information - **Project Name**: ts-node-esm-template - **Description**: 一个 nodejs + ts + ems 快速开发模版 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-07-12 - **Last Updated**: 2025-07-14 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ts-node-esm-template 一个现代化的Node.js + TypeScript + ESM模板,旨在提供开箱即用的开发环境,支持最新的ECMAScript模块系统和严格的类型检查。 ## 特性 - **ES模块支持**:使用`"type": "module"`配置,原生支持ES6+模块语法 - **TypeScript集成**:预配置的`tsconfig.json`,支持严格类型检查 - **开发工具**:集成ESLint、Prettier等代码质量工具,确保代码风格一致性 - **热重载开发**:快速开发反馈循环,无需手动重启服务器 - **脚本命令**:便捷的开发、构建和运行脚本 - **现代JavaScript**:支持ES2020及以上特性 ## 快速开始 ### 前提条件 - Node.js v14.13.0+ 或更高版本 - npm v6.14.8+ 或 yarn v1.22.0+ 或 pnpm v6.0.0+ ### 安装 1. 克隆本仓库: ```bash git clone https://gitee.com/biubiuuuu/ts-node-esm-template.git cd ts-node-esm-template ``` 2. 安装依赖: ```bash npm install # 或 yarn install # 或 pnpm install ``` ### 开发 启动开发服务器,支持热重载: ```bash npm run dev ``` ### 构建 将TypeScript编译为JavaScript: ```bash npm run build ``` ### 运行 启动生产环境服务: ```bash npm start ``` ### 代码质量 检查代码风格问题: ```bash npm run lint ``` 自动格式化代码: ```bash npm run format ``` ## 配置说明 ### tsconfig.json 核心配置项: ```json { "compilerOptions": { "target": "ES2020", "module": "ESNext", "moduleResolution": "Node", "outDir": "./dist", "rootDir": "./src", "strict": true, "esModuleInterop": true, "skipLibCheck": true, "forceConsistentCasingInFileNames": true, "resolveJsonModule": true, "sourceMap": true }, "include": ["src/**/*"], "exclude": ["node_modules", "**/*.test.ts", "dist"] } ``` ### package.json 脚本 关键脚本命令: ```json { "scripts": { "dev": "node --loader ts-node/esm --no-warnings=ExperimentalWarning src/index.ts", "build": "tsc", "start": "node dist/index.js", "lint": "eslint . --ext .ts", "format": "prettier --write ." } } ``` ### ESLint 和 Prettier 项目已集成ESLint和Prettier,确保代码质量和一致的格式化风格。配置文件: - `.eslintrc.js`: ESLint规则配置 - `.prettierrc`: Prettier格式化配置 ## 目录结构 ``` ts-node-esm-template/ ├── src/ # 源代码目录 │ └── index.ts # 入口文件 ├── dist/ # 编译输出目录 ├── .eslintrc.js # ESLint配置 ├── .prettierrc # Prettier配置 ├── tsconfig.json # TypeScript配置 ├── package.json # 项目依赖和脚本 ├── README.md # 中文文档 ├── README.en.md # 英文文档 └── LICENSE # 许可证文件 ``` ## 参与贡献 1. Fork 本仓库 2. 新建特性分支 (`git checkout -b feature/amazing-feature`) 3. 提交更改 (`git commit -m 'Add some amazing feature'`) 4. 推送到分支 (`git push origin feature/amazing-feature`) 5. 打开Pull Request ## 许可证 本项目采用MIT许可证 - 详见LICENSE文件。