Mikrop
Mikrop is a rapid api development library based on restify.
Mikrop contain common methods and packages for required every micro service.
Usage
installing:
npm i --save mikrop
Configuration
const mikrop = ; // default configconst config = apiDir: `/api` requiredVariables: useRequestLogger: true useAuditLogger: true useMongo: false dateParser: 60 server: ServerOptions throttle: ThrottleOptions bodyParser: BodyParserOptions queryParser: QueryParserOptions cpuUsageThrottle: CpuUsageThrottleOptions; mikrop; // mikrop listening at http://[::]:3000
apiDir: string
Absolute path of where contain your api handlers and config files.
requiredVariables: [string]
Array of required env variable for working your service.
useRequestLogger: boolean
If you want to see request logs on terminal, it's must be true.
useAuditLogger: boolean
Detailed error log for monitoring.
useMongo: boolean
If it's true and you have a valid env called MONGO_URI, service connect to database when starting.
Route And Handler Definition
Folder structure is most important thing for Mikrop.
Your folder structure must be as shown below:
my-microservice |-- api -> This folder path can change with configuration object. |--user |--index.js -> Contain route handler methods. |--config.json -> Contain path and methods. |-- lib |-- index.js ...etc
iapi/user/ndex.js:
moduleexports { res;};moduleexports { res;};moduleexports { res;};
api/user/config.json:
index.js:
const mikrop = ; mikrop; // mikrop listening at http://[::]:3000
mikrop wants some env variable for running.
NAME=Service Name PORT=3000 URL=localhost NODE_ENV=development
You can add more required env variable for specific services.
Configuration:
const mikrop = ; const options = requiredVariables: 'MY_REQUIRED_ENV_VARIABLE' mikrop; // mikrop listening at http://[::]:3000