Generate package by scaffold.
npm install @nuofe/ndk-generator[![NPM version][npm-image]][npm-url]
[![Downloads][downloads-image]][downloads-url]
[npm-image]: https://img.shields.io/npm/v/@nuofe/ndk-generator.svg?style=flat-square
[npm-url]: https://www.npmjs.com/package/@nuofe/ndk-generator
[downloads-image]: https://img.shields.io/npm/dm/@nuofe/ndk-generator.svg?style=flat-square
[downloads-url]: https://www.npmjs.com/package/@nuofe/ndk-generator
Generate package by scaffold.
``bash`
yarn add @nuofe/ndk-generator --dev
`bash`
ndk-generator [--dist
First, add scripts in package.json, like this:
`json`
{
"scripts": {
"generate": "ndk-generator --dist ./packages"
}
}
Second, run command to generate project.
`bash`
yarn generate
@nuofe/scaffolds is standard scaffold of app/web/component/library/tool/config/none. You can use --scaffold arguments to use other scaffolds, like this:
`json`
{
"scripts": {
"generate": "ndk-generator --scaffold ./scaffolds"
}
}
Scaffold base on mustache template system. The structure should be this:
`pre`
./
|---[type]/
| |
| \---[...scaffold files]
|
\---types.json
types.json content:
`js`
{
"[type]": "[scaffold description]",
}
The scaffold files will transform by mustache.render(fileContent, view). The view will be this:
`ts``
interface View: {
type: string; // from types.json
name: string; // name-value
nAME: string; // nameValue
Name: string; // NameValue
NAME: string; // NAME_VALUE
scope: string;
description: string;
author: string;
command: string; // for tool
keywords: string[];
title: string;
};