1.1.1 • Published 9 years ago
project-template v1.1.1
project-template
Generate a project based on a directory of template files and corresponding template values.
Requirements
- Node JS v6+
Install
yarn add project-templateExample
yarn run exampleSee example/index.js
Usage
const projectTemplate = require('project-template');
projectTemplate({
templatePath: '/path/to/templates',
buildPath: '/path/to/build',
params: {
'path/to/file.txt': {
firstParam: 'First param value',
secondParam: 'Second param value',
},
'path/to/different/file.txt': {
anotherParam: 'Another param value',
},
},
})
.then(files => console.log('Done', files))
.catch(err => console.error('Error', err));Things to keep in mind
- Template files are expected to use ect syntax
- Directory structure of files in
templatePathis maintained inbuildPath - All files in
templatePathwithfileExtensionmust be included inparams - Files in
templatePathwithoutfileExtensionare just copied over tobuildPath - You cannot have two files with the same file path where one has
fileExtensionand the other doesn't
API
projectTemplate(options) -> Promise<Array<String>>
options
| Key | Type | Required | Default | Notes |
|---|---|---|---|---|
| templatePath | String | Yes | Directory path containing template files | |
| buildPath | String | Yes | Directory path to write generated files to | |
| params | Object | No | {} | Keys are relative paths of template files (with fileExtension stripped). Values are objects of template variables |
| ignoreFiles | Array<String> | No | [] | File paths to ignore (exclude the fileExtension for template files). Useful for ect partials |
| fileExtension | String | No | ect | File extension of template files |
Result
The promise is resolved with an array of file paths of generated files, relative to the buildPath directory.