统一提供模板,额外提供与模板紧密相关、有用的帮助函数。无论是创建 Cli、React、Node、Vue、Electron 等等之中的哪一个项目,都会需要用到模板,而这些模板文件也大都相同,小异可以维护在各自专门的脚手架中。
- 返回 { Object } 纯粹 “拷贝” 用途的模板文件
common
{ Array } 通用用途文件列表eslintrc
{ Object } ESlint 配置模板文件列表esm
ESM 模块用途的 ESlint 配置
mocha
{ String } mocha.js 配置文件模板benchmark
{ String } 文件脚本
import { log } from 'console';
import { copiers } from '@iyowei/create-templates';
log(copiers);
/**
* {
* common: [
* '/Users/iyowei/Development/iyowei/create-templates/src/.vscode',
* '/Users/iyowei/Development/iyowei/create-templates/src/.editorconfig',
* ...
* ],
* esm: [
* ...
* ],
* ...
* ]
*/
- 返回 { Object } 印刷模板,使用方式参见
lodash.template()
。
import { log } from 'console';
import { prints } from '@iyowei/create-templates';
log(prints);
/**
* {
* readme: '/Users/iyowei/Development/iyowei/create-templates/src/README.md',
* npmrc: '/Users/iyowei/Development/iyowei/create-templates/src/.npmrc',
* ...
* }
*/
- 返回 { Object } 第三方仓库,如:github/gitignore。
import { log } from 'console';
import { stockrooms } from '@iyowei/create-templates';
log(stockrooms);
/**
* {
* gitignore: '/Users/iyowei/Development/iyowei/create-templates/src/gitignore',
* ...
* }
*/
在指定位置生成包含指定主题内容的 .gitignore 文件。
output
{ String } 输出位置,包含输出文件名,例如:/Users/iyowei/Development/iyowei/.gitignore
topics
{ Array | String } github/gitignore 里模板文件的文件名,单个或者集合
import { writeGitignoreSync } from '@iyowei/create-templates';
writeGitignoreSync({
output: join(process.cwd(), '.gitignore'),
topics: [
'macOS',
'Windows',
'Linux',
'Node',
'VisualStudioCode',
'SublimeText',
'CVS',
'Diff',
'Vim',
'TortoiseGit',
],
});
异步方法,在指定位置生成包含指定主题内容的 .gitignore 文件。
output
{ String } 输出位置,包含输出文件名,例如:/Users/iyowei/Development/iyowei/.gitignore
topics
{ Array | String } github/gitignore 里模板文件的文件名,单个或者集合
import { writeGitignore } from '@iyowei/create-templates';
(async () => {
await writeGitignore({
output: join(process.cwd(), '.gitignore'),
topics: [
'macOS',
'Windows',
'Linux',
'Node',
'VisualStudioCode',
'SublimeText',
'CVS',
'Diff',
'Vim',
'TortoiseGit',
],
});
})();
串行方法,在指定位置生成 .npmrc 文件。
output
{ String } 输出位置,包含输出文件名,例如:/Users/iyowei/Development/iyowei/.npmrc
data
{ Object} 用来填充模板的数据
import { writeNpmRcSync } from '@iyowei/create-templates';
writeNpmRcSync({
output: join(process.cwd(), '.npmrc'),
data: { namespace: 'iyowei' },
});
异步方法,在指定位置生成 .npmrc 文件。
output
{ String } 输出位置,包含输出文件名,例如:/Users/iyowei/Development/iyowei/.npmrc
data
{ Object} 用来填充模板的数据
import { writeNpmRc } from '@iyowei/create-templates';
(async () => {
await writeNpmRc({
output: join(process.cwd(), '.npmrc'),
data: { namespace: '' },
});
})();
串行方法,在指定位置生成 README.md 文件。
output
{ String } 输出位置,包含输出文件名,例如:/Users/iyowei/Development/iyowei/README.md
data
{ Object} 用来填充模板的数据
import { writeReadmeSync } from '@iyowei/create-templates';
writeReadmeSync({
output: join(process.cwd(), 'README.md'),
data: {
name: 'iyowei',
description: 'balabala...',
},
});
异步方法,在指定位置生成 README.md 文件。
output
{ String } 输出位置,包含输出文件名,例如:/Users/iyowei/Development/iyowei/README.md
data
{ Object} 用来填充模板的数据
import { writeReadme } from '@iyowei/create-templates';
(async () => {
await writeReadme({
output: join(process.cwd(), 'README.md'),
data: {
name: 'iyowei',
description: 'balabala...',
},
});
})();
npm add @iyowei/create-templates
pnpm add @iyowei/create-templates
yarn add @iyowei/create-templates
"@iyowei/create-templates" 使用 @iyowei/create-esm 脚手架生成。