1.0.5 • Published 10 days ago

nuada v1.0.5

Weekly downloads
-
License
MIT
Repository
-
Last release
10 days ago

Nuada CLI

Nuada CLI was designed to improve your development experience by using ExpressJS and Mongoose tools.

Nuada CLI v1.0.0 🎉🎉🎉

Installation Guide

To install the Nuada package globally you can run:

$ npm install nuada -g

or

$ yarn global add nuada

Usage

Now the project will bootstrap with nuada-config.json witch going to map the routes of the project. So do not edit, move or delete this file 😉

Create a new project

To start a new project just run:

$ nuada new <project-name>

This command creates an entire folder and pattern structure that will be used to help you to develop. And now it coming up using Typescript 🎉 If you do not specify the project name argument, Nuada CLI will ask you for one.

Create a controller

$ nuada make:controller <controller-name>

This command generates a simple controller and route file to use in your application. You don't have to import your new controller inside router/index.ts, the CLI is going to handle everything for you 🎉.

Create a validator

$ nuada make:validator <validator-name> <field:type>

The make:validator creates a validation file based on the passed parameters.

Create a model

$ nuada make:model <model-name> <field:type>

The make:model creates a simple model file with fields and types based on Mongo type rules. A validation file is also created following the same rules.

Now you can relate your model with some other one just running:

$ nuada make:model <model-name> <field:relational=<another-model-name>>

The relational field type does not generate a validatable field inside the validation file.

Create a full module

$ nuada make:scaffold <scaffold-name> <field:type>

The make:scaffold command generates a controller, model and validator file ready to use. The field:relational= flag also works here 🎉.

Above you can get a list of valid types:

  • String => <field:string>,
  • Number => <field:number>
  • Date => <field:date>
  • Buffer => <field:buffer>
  • Boolean => <field:boolean>
  • Mixed => <field:mixed>
  • Relational => <field:relational=>

Create an Authentication module

$ nuada make:auth

The make:auth command creates a simple authentication structure using JWT ready to use.

Create an HTTP client

$ nuada make:axios

The make:axios command creates an HTTP communication module using Axios.

Create upload configuration

$ nuada make:multer

The make:multer creates an upload config file using Multer.

Don't forget to import the multer config inside the route file that's going to use the upload service.

import Multer from 'multer';

import MulterConfig from '../config/MulterConfig';

and then use as a middleware:

routes.post(
  '/user/:id',
  Multer(MulterConfig).single('image'),
  controllers.UserController.store
);

Some Other Commands

$ nuada version (-v)
$ nuada help (-h)

License

MIT - see LICENSE

1.0.2

10 days ago

1.0.1

10 days ago

1.0.5

10 days ago

1.0.4

10 days ago

1.0.3

10 days ago

1.0.0

1 year ago

0.91.9

3 years ago

0.9.9

3 years ago

0.9.4

4 years ago

0.9.2

4 years ago

0.5.4

4 years ago

0.5.3

4 years ago

0.5.2

4 years ago

0.4.9

4 years ago

0.4.8

4 years ago

0.4.1

4 years ago

0.3.7

4 years ago

0.3.6

4 years ago

0.3.0

5 years ago

0.2.9

5 years ago

0.2.7

5 years ago

0.2.6

5 years ago