Skip to content

marconneves/Cowmand

Repository files navigation

Cowmand

🐮 Cowmand - _BETA

Introduction

This lib get beginning of express to create a cli. It's a simple way to create a cli.

Installation

This is a Node.js module available through the npm registry.

Use npm:

$ npm install cowmand

Use yarn:

$ yarn add cowmand

Example Initial

Using middleware in global, but with rules to notIn ["login"].

import Cowmand from 'cowmand';
import { GuardLogin } from './guardLogin';
import { Login } from './login';

const program = Cowmand();

program.use({ notIn: ['login'] }, GuardLogin);

program.command(['login'], Login);

program.command(['me'], (context, terminal) => {
  terminal.log(`Hello, ${context.session.user?.name}!`).end();
});

program.start();

Using middleware before command handle:

import Cowmand from 'cowmand';
import { GuardLogin } from './guardLogin';
import { Login } from './login';

const program = Cowmand();

program.command(['login'], Login);

program.command(['me'], GuardLogin, (context, terminal) => {
  terminal.log(`Hello, ${context.session.user?.name}!`).end();
});

program.start();

Docs

Terminal Docs

New Features

  • Commander Routes - Similar with Router of express, for use commands in other file.
  • Validate errors Layers
  • Terminal - Add table console
  • Terminal - Add question on terminal
  • Terminal - Add option to hide a password

This project is under the MIT license. See the LICENSE file for more details.