webfile-cli
v3.1.0
Published
cli to create api or app webs
Downloads
19
Readme
webfile-cli
webfile-cli is a simple and versatile cli based tool that helps backend develop Express based or frameworks similary. webfile-cli allow you two things: generate a structure of files software arquitecture based and generate archives for files.
Installation
You can do a global installation:
npm install -g webfile-cli
Or you can install locally:
npm install webfile-cli // use npx to run
Usage
webfile-cli has three actions:
webfile-cli init [options]
webfile-cli generate <name> [options]
webfile-cli new-comp <name>
init:
webfile-cli create a files structure and help you to generate archives in that files, but you need especify what language extention will use the program. init commnad create a json file that specify the used language:
command:
webfile-cli init [options]
wbfconfig.json:
{
"language": "js" //can be "ts"
}
options:
[-j, --javascript]: init proyect with javascript
[-t, --typescript]: init proyect with typescript
generate
Generate the file structure architecture based:
command:
webfile-cli generate <name> [options]
options:
An web api not-coupled structure:
[-a, --api]: create normal not-coupled api
├── app.js
├── bin
| └── www.binary.js
├── components
├── config
| ├── env.production.config.js
| └── env.testing.config.js
├── microservices
├── middlewares
| └── index.middleware.js
├── routes
| └── index.routes.js
├── scripts
| └── index.script.js
├── services
| └── index.service.js
└── tests
└── index.spec.js
An soft web api not-coupled structure:
[-s, --soft]: create soft not-coupled api
├── app.js
├── bin
├── components
├── config
├── helpers
├── middlewares
├── routes
├── services
└── tests
An web app coupled structure:
[-c, --coupled]: create coupled web app
├── app.js
├── bin
├── components
├── config
├── helpers
├── middlewares
├── public
├── routes
├── services
├── tests
└── views
uses of files:
[components]: parts of the API (users, posts, commnets).
[bin]: binaries of APP, main executables of APP. (can change for a APP folder)
[config]: configuration files (ci, production, develop, staging)
[microservices]: parts what you can execute without the principal server
[middlewares]: middlewares created by yourself
[routes]: central point of all routes of app
[scripts]: small pieces of code are execute seldom
[services]: services used for all of component
[test]: testing scripts
new-comp
Create new component.
Note: for use that command you need two requirements: Create file wbfconfig.json Create app file and enter it
If the father file dont has wbfconfig.json this command dont will work.
command:
webfile-cli new-comp <name>
structure:
├── [component file]
| ├── model.js
| ├── routes.js
| ├── utils.js
| ├── controller.js
| ├── service.js
| ├── interfaces.ts //only with ts init
└── dto.ts //only with with init
uses of files:
[model]: the model of DB and the access to that.
[routes]: specific routes of the component
[utils]: configuration files (ci, production, develop, staging)
[controller]: function and logic that call model and return views or data
[interfaces]: types that only define properties of objects for use into component
[dto]: types that only define properties of objects for use to refer the data
in transference, ej. to db data or to view data.