Skip to content

无论是创建 Cli、React、Node、Vue、Electron 等等之中的哪一个项目,都会需要用到模板,而这些模板文件也大都相同,小异可以维护在各自专门的脚手架中。

License

Notifications You must be signed in to change notification settings

iyowei/create-templates

Repository files navigation

@iyowei/create-templates

统一提供模板,额外提供与模板紧密相关、有用的帮助函数。无论是创建 Cli、React、Node、Vue、Electron 等等之中的哪一个项目,都会需要用到模板,而这些模板文件也大都相同,小异可以维护在各自专门的脚手架中。

使用

copiers

  • 返回 { 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: [
 *     ...
 *   ],
 *   ...
 * ]
 */

prints

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',
 *   ...
 * }
 */

stockrooms

import { log } from 'console';
import { stockrooms } from '@iyowei/create-templates';

log(stockrooms);

/**
 * {
 *   gitignore: '/Users/iyowei/Development/iyowei/create-templates/src/gitignore',
 *   ...
 * }
 */

writeGitignoreSync({ output, topics })

在指定位置生成包含指定主题内容的 .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',
  ],
});

writeGitignore({ output, topics })

异步方法,在指定位置生成包含指定主题内容的 .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',
    ],
  });
})();

writeNpmRcSync({ output, data })

串行方法,在指定位置生成 .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' },
});

writeNpmRc({ output, data })

异步方法,在指定位置生成 .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: '' },
  });
})();

writeReadmeSync({ output, data })

串行方法,在指定位置生成 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...',
  },
});

writeReadme({ output, data })

异步方法,在指定位置生成 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...',
    },
  });
})();

安装

Node Version Badge esm

NPM

npm add @iyowei/create-templates

PNPM

pnpm add @iyowei/create-templates

Yarn

yarn add @iyowei/create-templates

参考

".github" 文件夹

参与贡献

PRs Welcome

其它

"@iyowei/create-templates" 使用 @iyowei/create-esm 脚手架生成。

About

无论是创建 Cli、React、Node、Vue、Electron 等等之中的哪一个项目,都会需要用到模板,而这些模板文件也大都相同,小异可以维护在各自专门的脚手架中。

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published