Sarvesh-SP / express-dry

Express.js Body, Query and Params validator based on https://github.com/uditkarode/drytype

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Express-Dry

A simple lightweight Express.js Validation Library (With predefined validators [WIP])

How to install

npm install express-dry

or

yarn add express-dry
  • Include in your project Eg. routes/auth.js
const { Router } = require('express')
const dry = require('express-dry')

const router = Router()

router.post('/login', dry.body({
  username: { type: String },
  password: { type: String },
  foo: { type: Boolean, required: false }
}), async (req, res) => {})

module.exports = router

After this the .body will return a middleware with packed automatic validation inside and it will directly return error response to client with a {message: ''} in it

  • Same with params and query
dry.params({ id: { type: Number } }, { allowExtraKeys: false })
dry.query({ search: { type: String, required: false } }, { allowExtraKeys: true, statusCode: 200 })

Features

  • All Javascript supported primitives
  • optional payload validation with required: false
  • Will be adding more custom validations such as Email, MongoObjectId and many more :)

Credits

@uditkarode for drytypes

License

MIT ©Swapnil Soni

About

Express.js Body, Query and Params validator based on https://github.com/uditkarode/drytype


Languages

Language:JavaScript 100.0%