1.0.0 • Published 5 years ago

@naweak/n v1.0.0

Weekly downloads
1
License
MIT
Repository
github
Last release
5 years ago

n-framework

Install to your project

npm i @naweak/n -S

Use in your project

const Framework = require('@naweak/n')
const app = new Framework({
  methodsDir: __dirname + '/src/methods/', // Your API methods dir
  host: '127.0.0.1', // Your project hostname
  port: 3000 // Your project port
})
app.runServer()

Create methods

Successful response

// src/methods/exampleSuccessMethod.js
// Demonstrates successful response
const Response = require('@naweak/n/lib/response')

module.exports = {
  /**
   * @param {object} params - HTTP request params
   * @param {string} ip - Client IP address
   */
  run(params, ip) {
    return new Response({
      message: 'Hello world!',
      params,
      ip
    })
  }
}
$ curl "http://127.0.0.1:3000/api/?method=exampleSuccessMethod&test=123"
{
  "success": {
    "message": "Hello world!",
    "params": {
      "method": "exampleSuccessMethod",
      "test": "123"
    },
    "ip": "127.0.0.1"
  }
}

Error response

// src/methods/exampleErrorMethod.js
// Demonstrates error response
const ErrorResponse = require('@naweak/n/lib/error')

module.exports = {
  run() {
    return new ErrorResponse(
      'Failed', // Error data
      11 // Error code
    )
  }
}
$ curl "http://127.0.0.1:3000/api/?method=exampleErrorMethod"
{
  "error": {
    "data": "Failed",
    "code": 11
  }
}

Custom routes

// You can use express middlewares
app.app.use('/', (req, res) => {
  res.send('Hello world!')
})
$ curl "http://127.0.0.1:3000/"
Hello world!
1.0.0

5 years ago

0.0.4

5 years ago

0.0.3

5 years ago

0.0.2

5 years ago

0.0.1

5 years ago