1.0.11 • Published 7 years ago

express-atlas v1.0.11

Weekly downloads
2
License
MIT
Repository
github
Last release
7 years ago

Express Atlas

A simple and easy-to-use routing wrapper for Express built on directory and file pattern recognition

  • Works with both ES6 and CommonJS

Installation

$ npm install express-atlas

Documentation

Initialization

Without Mongoose

import express from 'express'
import AtlasRouter from 'express-atlas'

const app = express()

new AtlasRouter({
  controllers: './controllers' // Path to controllers directory
  express: app
})

With Mongoose

All Mongoose models will automatically be imported

import express from 'express'
import AtlasRouter from 'express-atlas'
import mongoose from 'mongoose'

const app = express()

new AtlasRouter({
  controllers: './controllers' // Path to controllers directory
  express: app,
  mongoose: ['./models', mongoose] // arg1 path to models, arg2 mongoose module itself
})

Routes

Recognition is based on:

  • Directories
  • Filename
  • Params
  • Method

Incase of having multiple route names where a post and get request is being called, it's separated by the route extension instead of method: 'post'

  • {root} > controllers > auth > login.js Will become: www.example.com/auth/login

  • {root} > controllers > auth > login-post.js Will become the same, but with a post request

  • {root} > controllers > api > index.js Will become: www.example.com/api

Routes without Mongoose

export default {
  method: 'get', // request type

  action: function (req, res) { // action to be called
    ...
  }
}

Routes with Mongoose

export default {
  method: 'get', // request type
  params: ':title', // params
  model: 'News' // Mongoose model name

  action: function (req, res, next, News) { // action to be called
    const {title} = req.params

    News.findOne({title: title}, (err, data) => {
      if (err) throw err

      if (data) {
        res.json(data)
      } else {
        res.send(`Nothing find for: ${title}`)
      }
    })
  }
}
1.0.11

7 years ago

1.0.10

7 years ago

1.0.9

7 years ago

1.0.8

7 years ago

1.0.7

7 years ago

1.0.6

7 years ago

1.0.5

7 years ago

1.0.4

7 years ago

1.0.3

7 years ago

1.0.2

7 years ago

1.0.1

7 years ago