fileable-cli
v0.0.17
Published
![fileable logo](./static/docs/logo.png)
Downloads
9
Readme
Fileable-CLI
Render a file tree using a JSX template.
For the embeddable-library, see fileable.
Basic Usage without insallation
npx fileable-cli build ./path/to/template.jsx ./destination
Installation
npm install --global fileable-cli
Usage
Basic Usage
fileable build ./path/to/template.jsx ./destination
Templates Files
See fileable for a basick explanation of template files.
Commands
--help
Try fileable --help
to see options
fileable build
Build a file tree from template into destination directory.
fileable build <template> <destination>
fileable build ./path/to/template.jsx ./destination
Local files or remote files (beginning with 'http://', 'https://', or 'ftp://') can be used as template and input files.
fileable build https://raw.githubusercontent.com/johnhenry/fileable/master/test/template/file.00.jsx ./destination
fileable-component-file, fileable-component-folder , and fileable-component-clear components are included with fileable-cli by default. Other components may be installed separately.
See 'fileable install' below.
It is not necessary to install fileable-components or react when using templates. However, the references to their components must be included.
--test/--no-test flag
As a safety precaution, you must pass the '--no-test' flag to write to the file system. Otherwise, output will be written to the console.
fileable build ./path/to/template.jsx ./destination ./dist --no-test
--input flag
The input flag is used to specify a file as inputs.
The input file must export an array or some other -- possibly asynchronous -- iterator.
fileable build ./path/to/template.jsx ./destination ./dist --input iterator.js
iterator.js
export default ['first argumet', 'second-argument'];
async-iterator.js
import { prompt } from 'node-popup';
export default (async function *{
yield await prompt('first argumet?', 'first argumet');
yield await prompt('second argumet?', 'second argumet');
})();
--args flag
The args flag is used to specify inputs via a comma-separated list of arguments.
To pass a string, use escaped backticks \`...\`
fileable build ./path/to/template.jsx ./destination ./dist --args \`$SOME_STRING\`,$SOME_NUMBER,{json:\`file\`}
fileable dependencies
List installed dependencies. Any packages referenced within template, including components, must first be installed. Packages references within files passed via --input flag must be referenced as well.
fileable dependencies
fileable install
Install NPM package.
fileable install <npm package>
fileable uninstall
Uninstall NPM package. BE CAREFUL! UNINSTALLING PACKAGES MAY CAUSE FILEABLE-CLI TO STOP WORKING PROPERLY!!!
fileable uninstall <npm package>
fileable template
Create template from file or folder.
Note: Not yet implemented.
fileable template <folder> > template.jsx
API
Table of contents
Todo
- remove unnecessary dependencies
- add proper typescript typeings
- included components versions in documentation
- implement 'template' sub-command