xhelpers-cli

2.2.0 • Public • Published

xhelpers-cli

       _          _                        ____ _     ___ 
 __  _| |__   ___| |_ __   ___ _ __ ___   / ___| |   |_ _|
 \ \/ / '_ \ / _ \ | '_ \ / _ \ '__/ __| | |   | |    | | 
  >  <| | | |  __/ | |_) |  __/ |  \__ \ | |___| |___ | | 
 /_/\_\_| |_|\___|_| .__/ \___|_|  |___/  \____|_____|___|
                   |_|                                    
A CLI tool to create and manage xhelpers projects ;) 

Install

npm

npm i -g xhelpers-cli

local

git clone https://github.com/xhelpers/xhelpers-cli.git
npm i -g ./
Usage: xc [options] [command]

Options:
  --debug                        include debugging information, such as stack dump
  -h, --help                     display help for command
  -V, --version                  output the version number

Commands:
  help [command]                 display help for command
  version|v                      display installed cli version
  clone|c [path] [templateName]  Start a new project by cloning a git repository
  			 path: dir name to be created
  			 templateName: template name[todo-sample, account-sample, mailman-sample]
  			 xcli c demo1 todo-sample  			 
  clonelist|cl                   Display clone templates  
  inspect|i [path]               Inspect path looking for (xhelpers-api) settings
  			 path: xhelpers project path			 
  			 xcli i demo1  			 
  touch|t [path] [context]       Create a new path with set of touched files
  			 path: dir name to be created
  			 context: context name[component, container, service, saga, screen]
  			 xcli t demo1 component  			 
  touchlist|tl                   Display touch templates
  

Clone

  clone|c [path] [templateName]
  			 path: dir name to be created
  			 templateName: template name[todo-sample, account-sample, mailman-sample]
  			 
xc c
xc c demo1 todo-sample
? Inform project path: todo-sample
? Select template to clone: Sample todo api
  Integration using default jwt (JSON Web Token) 
  Integration using jws (JSON Web Signature) 
  Integration using oauth2 
  Integration using oauth + https 
  Integration using soap 
  Template mailman sendgrid 
  Template default account-sql 
❯ Sample todo api 
  Sample fileupload 
  Sample video streaming api 
  Sample websocket 
  Sample websocket using redis 
  Sample mailman 
  Sample account 
(Move up and down to reveal more choices)
🔃  Copying files... Sample todo api https://github.com/xhelpers/xhelpers-todo-sample.git
🔃  Sample todo api https://github.com/xhelpers/xhelpers-todo-sample.git
✅  The files have been copied!
✅  Repository cloned todo-sample

Inspect

inspect|i [path]           
  			 path: xhelpers project path			  			 

xc i
xc i demo1
Running 'inspect' on path: 'PlataformaAccount'

✅  Current folder has xhelpers-api components

         API - Accounts - version: 1.0.0
🌲  xhelpers-api: ^2.1.20
🌲  typescript: ^3.6.2

🔢  Server xhelpers-api settings
┌─────────┬─────────────┬────────────┬─────────┐
│ (index) │    name     │    type    │ enabled │
├─────────┼─────────────┼────────────┼─────────┤
│    0    │ 'Sequelize' │ 'Database' │  true   │
│    1    │ 'Mongoose'  │ 'Database' │  false  │
│    2    │    'JWT'    │   'Auth'   │  true   │
│    3    │  'APP_KEY'  │   'Auth'   │  false  │
│    4    │    'SSO'    │   'Auth'   │  true   │
│    5    │  'Sentry'   │   'Logs'   │  false  │
└─────────┴─────────────┴────────────┴─────────┘

🔢  Components xhelpers-api
┌─────────┬───────────────────────────┬─────────────┬───────┐
│ (index) │           name            │    type     │ count │
├─────────┼───────────────────────────┼─────────────┼───────┤
│    0    │    'account.route.ts'     │   'Route'   │   9   │
│    1    │      'auth.route.ts'      │   'Route'   │   2   │
│    2    │   'account.service.ts'    │  'Service'  │   0   │
│    3    │     'auth.service.ts'     │  'Service'  │   0   │
│    4    │  'fileUpload.service.ts'  │  'Service'  │   0   │
│    5    │   'mailman.service.ts'    │  'Service'  │   0   │
│    6    │ 'token.issuer.service.ts' │  'Service'  │   0   │
│    7    │    'account.model.ts'     │   'Model'   │   0   │
│    8    │  'actionToken.model.ts'   │   'Model'   │   0   │
│    9    │     'deployment.yaml'     │ 'Manifest'  │   0   │
│   10    │     'app_homolog.yml'     │ 'GitAction' │   0   │
│   11    │     'app_master.yml'      │ 'GitAction' │   0   │
└─────────┴───────────────────────────┴─────────────┴───────┘
Current folder is already a Git repository!

Touch

  touch|t [path] [context]
  			 path: dir name to be created
  			 context: context name[component, container, service, saga, screen]

xc t
xc t demo2 screen
xc t demo1/cp1 container
xc t demo1/cp1 component
xc t demo1/cp1 saga
xc t demo1/cp1 service
? Inform project path: demo1
? Select xhelpers-front type: (frontTemplate) (Use arrow keys)
❯ Component 
  Container 
  Service 
  Saga 
  Screen 

🔃  Touching files... Component
✅  The files have been copied!
🔃  Template url: https://raw.githubusercontent.com/xhelpers/xhelpers-front-snippets/main/index.ts
🔃  New File: demo1/index.ts
🔃  Template url: https://raw.githubusercontent.com/xhelpers/xhelpers-front-snippets/main/%7Bname%7D.component.tsx
🔃  New File: demo1/demo1.component.tsx

Package Sidebar

Install

npm i xhelpers-cli

Weekly Downloads

0

Version

2.2.0

License

ISC

Unpacked Size

84.5 kB

Total Files

54

Last publish

Collaborators

  • wmkdev