{"_id":"@vulppi/intrest","_rev":"72-b6ec2aae698da57897be56f17f208e5c","name":"@vulppi/intrest","dist-tags":{"latest":"0.20.0","test":"0.7.20"},"versions":{"0.4.0":{"name":"@vulppi/intrest","version":"0.4.0","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.12","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","typia":"^4.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"183daab7aaa42c7b64b526811b74f33aa5c8ca23","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.4.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-VAUVViWjQnCJPZJR7kxfOmUJ/lX/SwMq5WsDjQtK7En0TBaUahfJfBRUBtuezsTlrmlw5vzDcO3HW/Za6Ur8Xg==","shasum":"0e2a18855e2be5e1deb300097fc2c8bff41e04b8","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.4.0.tgz","fileCount":18,"unpackedSize":134537,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCTCdgIQdZPIeIddd9ysHMqlcgjeBMbVZZlRkey+H+s8gIhAKWgezG1vPjmjhk4fJI37FmadLWWKNpdUm07SjzGQOdb"}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.4.0_1689348077971_0.021029832214870314"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.5.0":{"name":"@vulppi/intrest","version":"0.5.0","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.12","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"readme":"# Vulppi - IntREST\r\n\r\n[![npm version](https://badge.fury.io/js/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![npm downloads](https://img.shields.io/npm/dm/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![GitHub issues](https://img.shields.io/github/issues/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/issues)\r\n[![GitHub license](https://img.shields.io/github/license/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/blob/main/LICENSE)\r\n\r\n**Attention:** Please note that the current version of this framework is in the _alpha stage_ and is **not recommended** for production use. We strongly advise against using this version in live environments or critical systems.\r\n\r\nA more stable and feature-complete beta version of the framework will be released shortly, which will be better suited for production scenarios. We encourage you to wait for the beta release to ensure a more reliable and robust experience.\r\n\r\nIn the meantime, you are welcome to explore and experiment with the alpha version for testing and evaluation purposes. Your feedback and suggestions during this phase will be greatly appreciated as they can help us enhance and improve the framework before the final release.\r\n\r\nThank you for your understanding and support as we work towards delivering a high-quality framework for your programming needs.\r\n\r\n## Table of Contents\r\n\r\n1. [Introduction](#introduction)\r\n   1. [Key Features](#key-features)\r\n2. [Getting Started](#getting-started)\r\n   1. [Prerequisites](#prerequisites)\r\n   2. [Automatic Installation](#automatic-installation)\r\n   3. [Manual Installation](#manual-installation)\r\n3. [Core Concepts](#core-concepts)\r\n   1. [Routes](#routes)\r\n   2. [Middleware](#middleware)\r\n4. [Usage Guide](#usage-guide)\r\n5. [Configuration](#configuration)\r\n6. [API Reference](#api-reference)\r\n7. [Troubleshooting](#troubleshooting)\r\n8. [Best Practices and Tips](#best-practices-and-tips)\r\n9. [Contributing and Community](#contributing-and-community)\r\n10. [License](#license)\r\n11. [Contact](#contact)\r\n\r\n## Introduction\r\n\r\nIntREST is a versatile backend framework written in TypeScript, specifically tailored for Node.js (version >= 18.0.0). It provides a range of tools and utilities that streamline the development of RESTful APIs. By employing a file-system-based approach, IntREST simplifies route handling by mapping the application's routes to its file structure, enhancing code organization and promoting simplicity.\r\n\r\n### Key Features\r\n\r\n- **Thread Workers:** Divides requests into thread workers, optimizing resource utilization and improving overall performance.\r\n- **RESTful API Development:** Simplifies the process of building robust and efficient RESTful APIs.\r\n- **File-System Based Routing:** Routes within the application are determined by the file structure, ensuring a clean and intuitive approach to defining API endpoints.\r\n- **Performance and Scalability:** Enhances the performance and scalability of Node.js applications, accommodating high volumes of traffic seamlessly.\r\n- **CORS Handling:** Automatically manages Cross-Origin Resource Sharing (CORS) requests, simplifying integration with external clients.\r\n- **Request Parsing:** Automatically detects and parses JSON and URL-encoded requests, eliminating the need for manual parsing.\r\n- **Response Type Detection:** Intelligently identifies the response type, supporting JSON, Buffer, String, or ReadableStream, facilitating integration with various client applications.\r\n\r\nWith IntREST, you can expedite your backend development, streamline code organization through file-system-based routing, and deliver high-performance RESTful APIs effortlessly. Let's delve into the details of utilizing this framework to harness its true potential.\r\n\r\n## Getting Started\r\n\r\n### Prerequisites\r\n\r\nBefore you begin, ensure that your system meets the following requirements:\r\n\r\n- [Node.js 18.0.0](https://nodejs.org/) or a later version.\r\n- Supported operating systems include macOS, Windows (including WSL), and Linux.\r\n\r\n### Automatic Installation\r\n\r\nFollow the steps below to set up a IntREST project using your preferred package manager:\r\n\r\n#### 1. Create a Directory\r\n\r\nCreate a directory for your project and navigate into it:\r\n\r\n```bash\r\nmkdir <your-project-folder>\r\ncd <your-project-folder>\r\n```\r\n\r\n#### 2. Initialize the Project\r\n\r\nUse your chosen package manager to initialize a new IntREST project:\r\n\r\nWith npm:\r\n\r\n```bash\r\nnpx @vulppi/intrest create\r\n```\r\n\r\nWith pnpm:\r\n\r\n```bash\r\npnpx @vulppi/intrest create\r\n```\r\n\r\nWith yarn:\r\n\r\n```bash\r\nnpx @vulppi/intrest create --yarn\r\n```\r\n\r\nThis command sets up the necessary project structure and installs the required dependencies.\r\n\r\n#### 3. Run the Development Server\r\n\r\nStart the development server by running the `dev` script with your package manager:\r\n\r\nWith npm:\r\n\r\n```bash\r\nnpm run dev\r\n```\r\n\r\nWith pnpm:\r\n\r\n```bash\r\npnpm dev\r\n```\r\n\r\nWith yarn:\r\n\r\n```bash\r\nyarn dev\r\n```\r\n\r\nThe development server will spin up, and you can now start building your IntREST application.\r\n\r\nBy following these steps, you'll have a IntREST project up and running, ready for you to begin developing your RESTful APIs with ease.\r\n\r\n---\r\n\r\n### Manual Installation\r\n\r\nTo manually install `@vulppi/intrest`, follow these steps:\r\n\r\n#### 1. Create a New Project\r\n\r\nStart by creating a new Node.js project using the following terminal commands:\r\n\r\n```bash\r\nmkdir <your-project-folder>\r\ncd <your-project-folder>\r\nnpm init -y\r\n```\r\n\r\nThis will create a new directory for your project and initialize a `package.json` file.\r\n\r\n#### 2. Install TypeScript\r\n\r\nNext, install TypeScript and the TypeScript types for Node.js using your preferred package manager. Run one of the following commands:\r\n\r\nWith npm:\r\n\r\n```bash\r\nnpm install -D typescript @types/node\r\n```\r\n\r\nWith pnpm:\r\n\r\n```bash\r\npnpm install -D typescript @types/node\r\n```\r\n\r\nWith yarn:\r\n\r\n```bash\r\nyarn add -D typescript @types/node\r\n```\r\n\r\nThis will install TypeScript as a development dependency and ensure that you have the necessary types for Node.js.\r\n\r\n#### 3. Configure TypeScript\r\n\r\nIn the root of your project, create a `tsconfig.json` file by running the following command:\r\n\r\n```bash\r\ntouch tsconfig.json\r\n```\r\n\r\nOpen the `tsconfig.json` file and add the following configuration:\r\n\r\n```json\r\n{\r\n  \"include\": [\"**/*.ts\"],\r\n  \"exclude\": [\"node_modules\", \".intrest\"],\r\n  \"compilerOptions\": {\r\n    \"module\": \"ESNext\",\r\n    \"target\": \"ESNext\",\r\n    \"moduleResolution\": \"node\",\r\n    \"esModuleInterop\": true,\r\n    \"resolveJsonModule\": true,\r\n    \"forceConsistentCasingInFileNames\": true,\r\n    \"isolatedModules\": true,\r\n    \"strict\": true,\r\n    \"verbatimModuleSyntax\": true,\r\n    \"declaration\": true,\r\n    \"emitDeclarationOnly\": true,\r\n    \"allowJs\": true,\r\n    \"checkJs\": false\r\n  }\r\n}\r\n```\r\n\r\nThis configuration ensures that TypeScript is set up correctly for your project.\r\n\r\n#### 4. Install IntREST\r\n\r\nInstall `@vulppi/intrest` using your chosen package manager:\r\n\r\nWith npm:\r\n\r\n```bash\r\nnpm install @vulppi/intrest\r\n```\r\n\r\nWith pnpm:\r\n\r\n```bash\r\npnpm install @vulppi/intrest\r\n```\r\n\r\nWith yarn:\r\n\r\n```bash\r\nyarn add @vulppi/intrest\r\n```\r\n\r\nThis will install IntREST as a dependency in your project.\r\n\r\n#### 5. Add Scripts\r\n\r\nOpen your `package.json` file and add the `\"type\": \"module\"` field to enable ES modules. Then, add the following scripts to the `\"scripts\"` section:\r\n\r\n```json\r\n{\r\n  // ...\r\n  \"type\": \"module\",\r\n  \"scripts\": {\r\n    \"dev\": \"irest dev\",\r\n    \"build\": \"irest build\",\r\n    \"start\": \"irest start\"\r\n  }\r\n  // ...\r\n}\r\n```\r\n\r\nThese scripts will enable you to run the development server, build your project, and start the server.\r\n\r\n#### 6. Create Your First Route\r\n\r\nCreate a file called `route.ts` inside a folder named `app` in your project directory:\r\n\r\n```\r\napp\r\n└── route.ts\r\npackage.json\r\ntsconfig.json\r\n```\r\n\r\nOpen the `route.ts` file and add the following content:\r\n\r\n```ts\r\n// ./app/route.ts\r\n\r\nimport type { IntRequest, IntResponse } from '@vulppi/intrest'\r\n\r\nexport async function GET(ctx: IntRequest): Promise<IntResponse> {\r\n  return {\r\n    status: 200,\r\n    body: 'Hello World!',\r\n  }\r\n}\r\n```\r\n\r\nThis code defines a basic route handler that responds with a \"Hello World!\" message.\r\n\r\n#### 7. Run the Development Server\r\n\r\nStart the development server by running the `dev` script using your package manager of choice:\r\n\r\nWith npm:\r\n\r\n```bash\r\nnpm run dev\r\n```\r\n\r\nWith pnpm:\r\n\r\n```bash\r\npnpm dev\r\n```\r\n\r\nWith yarn:\r\n\r\n```bash\r\nyarn dev\r\n```\r\n\r\nThe development server will start, and you can access your application at the specified port.\r\n\r\nWith these steps, you've manually installed IntREST, configured TypeScript, and set up your first route. You can now start building your IntREST application and explore the framework's capabilities.\r\n\r\n## Core Concepts\r\n\r\n### Application Structure\r\n\r\nIntREST projects follow a specific structure to ensure that your application is easy to understand and maintain. The following diagram shows the basic structure of a IntREST project:\r\n\r\n```\r\nassets\r\n├── file.txt\r\n└── image.png\r\napp\r\n├── route.ts\r\n├── my-route\r\n│   ├── route.ts\r\n│   └── middleware.ts\r\n├── my-other-route\r\n│   ├── route.ts\r\n│   └── middleware.ts\r\n├── [param]\r\n│   ├── route.ts\r\n│   └── middleware.ts\r\n├── [...catchParam]\r\n│   ├── route.ts\r\n│   └── middleware.ts\r\n├── (my-reader-group)\r\n│   └── group\r\n│       └── route.ts (GET)\r\n└── (my-writer-group)\r\n    └── group\r\n        └── route.ts (POST, PUT, DELETE)\r\npackage.json\r\ntsconfig.json\r\nintrest.config.mjs (optional)\r\n\r\n```\r\n\r\n### Routes\r\n\r\nThe `app` folder contains all of your application's routes. Each route is defined in a file named `route.ts` inside a folder with the same name as the route. For example, the `app/my-route/route.ts` file defines the `/my-route` route.\r\n\r\n#### Route Parameters\r\n\r\nYou can define routes with parameters by creating a folder with the parameter name inside the `app` folder. For example, the `app/[param]/route.ts` file defines the `/[param]` route and you can access the parameter value using `ctx.params.param`.\r\n\r\n#### Catch-All Routes\r\n\r\nYou can define catch-all routes by creating a folder with the parameter name prefixed with three dots inside the `app` folder. For example, the `app/[...catchParam]/route.ts` file defines the `/[...catchParam]` route and you can access the parameter value using `ctx.params.catchParam`.\r\n\r\n#### Route Groups\r\n\r\nYou can define route groups by creating a folder with the group name prefixed with parentheses inside the `app` folder. For example, the `app/(my-group)/group/route.ts` file defines the `/group` route. **Note:** If multiple routes conflict because groups, if the system finds multiple methods, it will throw an error.\r\n\r\n### Middleware\r\n\r\nYou can define middleware for a route by creating a file named `middleware.ts` inside the route's folder. For example, the `app/my-route/middleware.ts` file defines middleware for the `/my-route` route.\r\n\r\nThe middleware behavior is different from route handlers. Middleware is executed in chain order, and the route handler is executed after all middleware has been executed and call `next` method. If a middleware returns a response, the route handler will not be executed.\r\n\r\n## Usage Guide\r\n\r\nTo start using IntREST, you need create routes in app folder. Here's a simple example of routes:\r\n\r\n```typescript\r\nimport type { IntRequest, IntResponse } from '@vulppi/intrest'\r\n\r\nexport async function GET(ctx: IntRequest): Promise<IntResponse> {\r\n  return {\r\n    status: 200,\r\n    body: 'Hello World!',\r\n  }\r\n}\r\n```\r\n\r\nThe `GET` function above demonstrates an example of a route handler that returns a string as the response body.\r\n\r\nHere's another example that returns a JSON object:\r\n\r\n```typescript\r\nimport type { IntRequest, IntResponse } from '@vulppi/intrest'\r\n\r\nexport async function GET(ctx: IntRequest): Promise<IntResponse> {\r\n  return {\r\n    status: 200,\r\n    body: { text: 'Hello World!' },\r\n  }\r\n}\r\n```\r\n\r\nIn this case, the `body` property of the response is an object.\r\n\r\nIf you want to return a response with a Buffer (e.g., for serving images), you can do the following:\r\n\r\n```typescript\r\nimport type { IntRequest, IntResponse } from '@vulppi/intrest'\r\n\r\nconst imageBase64 = 'iVBORw0KGgoAAAANSUhEUgAAABg...AAASUVORK5CYII='\r\n\r\nconst image = Buffer.from(imageBase64, 'base64')\r\n\r\nexport async function GET(ctx: IntRequest): Promise<IntResponse> {\r\n  return {\r\n    status: 200,\r\n    headers: {\r\n      'content-type': 'image/png',\r\n      'content-length': image.length.toString(),\r\n    },\r\n    body: image,\r\n  }\r\n}\r\n```\r\n\r\nThe `GET` function above returns a response with a Buffer as the body. Make sure to set the appropriate `content-type` header and optionally `content-length` header for the Buffer.\r\n\r\nIf you want to serve a ReadableStream (e.g., for streaming video or large files), you can do the following:\r\n\r\n```typescript\r\nimport type { IntRequest, IntResponse } from '@vulppi/intrest'\r\n\r\nexport async function GET(ctx: IntRequest): Promise<IntResponse> {\r\n  // in ${projectRoot}/assets/video.mp4\r\n  const stream = ctx.assetsStream('video.mp4')\r\n\r\n  return {\r\n    status: 200,\r\n    body: stream,\r\n    headers: {\r\n      'Content-Type': 'video/mp4',\r\n    },\r\n  }\r\n}\r\n```\r\n\r\nThe `GET` function above returns a response with a ReadableStream as the body (you can use other types of `Readable`, as long as it is an extension of the `import('stream').Readable` class). You can use the `assetsStream` function from the `fs` module to create the stream.\r\n\r\nThe routes above are just examples of how to use IntREST.\r\n\r\n## Configuration\r\n\r\nIntREST uses a configuration file to define the application's settings, but is optional. The configuration file must be named `intrest.config.mjs` and must be located in the root directory of the project. Here's an example of a configuration file:\r\n\r\n```javascript\r\n/**\r\n * @type {import('@vulppi/intrest').Config}\r\n */\r\nexport default {\r\n  port: 4000,\r\n  folders: {\r\n    uploadTemp: '.tmp',\r\n  },\r\n  limits: {\r\n    bodyMaxSize: '1mb',\r\n    cors: ['*'],\r\n  },\r\n  messages: {\r\n    INTERNAL_SERVER_ERROR: 'Internal Server Error',\r\n    NOT_FOUND: 'Not Found',\r\n    METHOD_NOT_ALLOWED: 'Method Not Allowed',\r\n    MULTIPLE_ROUTES: 'Multiple routes found',\r\n    REQUEST_TOO_LONG: 'Request entity too large',\r\n  },\r\n  env: {\r\n    NODE_ENV: 'development',\r\n    HOST: 'localhost',\r\n  },\r\n}\r\n```\r\n\r\n## API Reference\r\n\r\nThe IntREST API is simple and easy to use. Has 4 main interfaces:\r\n\r\n- `IntRequest`\r\n- `IntResponse`\r\n- `MiddlewareNext`\r\n\r\n### IntRequest\r\n\r\nThe `IntRequest` interface is the input interface of IntREST. It contains all the information about the request.\r\n\r\n#### Properties\r\n\r\n- `method`: The HTTP method of the request. They are `GET`, `POST`, `PUT`, `PATCH`, `DELETE`.\r\n- `path`: The path of the request.\r\n- `params`: The object of parameters of the request.\r\n- `query`: The object of query parameters of the request. Using `URLSearchParams` API.\r\n- `headers`: The object of headers of the request.\r\n- `body`: The body of the request. Can be a `string` or `object`.\r\n  - The `body` property is only available if the request has a body and the method is not `GET`.\r\n  - If the request `Content-Type` is `multipart/form-data` and contains upload files, the `body` property will be contains a file metadata stored with name of the field. The metadata interface is `FileMetadata`.\r\n- `assetsStream`: The function to get a file stream from the `assets` folder, fonded in root directory of the project.\r\n- `cookies`: The object of cookies of the request. Using `cookie` API.\r\n- `custom`: The object of custom properties of the request. You can use this for share data between middlewares and route handlers.\r\n\r\n### IntResponse\r\n\r\nThe `IntResponse` interface is the output interface of IntREST. It contains all the information about the response.\r\n\r\n#### Properties\r\n\r\n- `status`: The HTTP status code of the response.\r\n- `headers`: The object of headers of the response.\r\n- `body`: The body of the response. Can be a `string`, `object`, `Buffer` or `ReadableStream`.\r\n  - The `body` property is only available if the response has a body.\r\n  - If the response `body` is a `object`, the `Content-Type` header will be set to `application/json` if not exists.\r\n  - If the response `body` is a `Buffer` or a `string`, the `Content-Type` header will be set to `plain/text` if not exists.\r\n  - If the response `body` is a `ReadableStream`, the `Content-Type` header will be set to `application/octet-stream` if not exists.\r\n- `cookies`: The object of cookies of the response.\r\n- `clearCookie`: The object of clear cookies of the response.\r\n\r\n### MiddlewareNext\r\n\r\nThe `MiddlewareNext` interface call the next middleware or route handler. If you send object in this function, the object will be merged with the property `custom` of the `IntRequest` interface.\r\n\r\n#### Properties\r\n\r\n- `custom`: The object of custom properties of the request. You can use this for share data between middlewares and route handlers.\r\n\r\n## Troubleshooting\r\n\r\nNo troubleshooting yet. If you have any problems, please contact us.\r\n\r\n## Best Practices and Tips\r\n\r\n- Use package `http-status-codes` for HTTP status codes. It's a simple and easy to use package and turn your code more readable.\r\n\r\n## Contributing and Community\r\n\r\nContributions are welcome! If you want to contribute to IntREST, please follow these steps:\r\n\r\n1. Fork the repository.\r\n2. Create a new branch for your feature or bug fix.\r\n3. Make your changes and commit them with descriptive messages.\r\n4. Push your changes to your forked repository.\r\n5. Submit a pull request to the main repository.\r\n6. And that's it! We will review your pull request as soon as possible.\r\n7. Thank you for contributing to IntREST! 🎉\r\n8. If you have any questions, feel free to contact us.\r\n9. If you want to contribute more, you can [Buy Us a Coffee](https://www.buymeacoffee.com/morbden) ☕️\r\n\r\n## License\r\n\r\nThis project is licensed under the [MIT License](https://github.com/vulppi-dev/intrest/blob/main/LICENSE).\r\n\r\n## Contact\r\n\r\nFor any inquiries or questions, you can reach out to the author:\r\n\r\nRenato Rodrigues  \r\nEmail: renato@vulppi.dev\r\n\r\n---\r\n\r\nThank you for using IntREST! We hope it helps you build powerful and scalable Node.js applications. If you have any feedback or suggestions, feel free to let us know.\r\n\r\nVisit the [Vulppi](https://vulppi.dev) organization site for more information about our projects and services.\r\n","readmeFilename":"README.md","gitHead":"950c42649ea13dd74c61dbc294a55b13f116692c","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.5.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-mqri3/P9SR+m1Bk/AyvEoz6vxYGa5P7dOGllxjOP6jevtEac7rGMgmMR0T2jbtXgspyxEpP5goVvaY5KkisWKw==","shasum":"cd8d6f2d8f16f2b5f3d63a36625a1a28b4fd3c8a","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.5.0.tgz","fileCount":18,"unpackedSize":136424,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFt6nINLEeJUF4FjiksJFiSK0+1PbkEJ2FpKflNE40DvAiEAk1NuvD0+vmEJDiKwJyKKjTsSyiPPMXu/UbCq+oXyb9w="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.5.0_1689448409902_0.8553260351532472"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.5.1":{"name":"@vulppi/intrest","version":"0.5.1","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","comment-json":"^4.2.3","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.12","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"readme":"# Vulppi - IntREST\r\n\r\n[![npm version](https://badge.fury.io/js/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![npm downloads](https://img.shields.io/npm/dm/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![GitHub issues](https://img.shields.io/github/issues/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/issues)\r\n[![GitHub license](https://img.shields.io/github/license/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/blob/main/LICENSE)\r\n\r\n**Attention:** Please note that the current version of this framework is in the _alpha stage_ and is **not recommended** for production use. We strongly advise against using this version in live environments or critical systems.\r\n\r\nA more stable and feature-complete beta version of the framework will be released shortly, which will be better suited for production scenarios. We encourage you to wait for the beta release to ensure a more reliable and robust experience.\r\n\r\nIn the meantime, you are welcome to explore and experiment with the alpha version for testing and evaluation purposes. Your feedback and suggestions during this phase will be greatly appreciated as they can help us enhance and improve the framework before the final release.\r\n\r\nThank you for your understanding and support as we work towards delivering a high-quality framework for your programming needs.\r\n\r\n## Table of Contents\r\n\r\n1. [Introduction](#introduction)\r\n   1. [Key Features](#key-features)\r\n2. [Getting Started](#getting-started)\r\n   1. [Prerequisites](#prerequisites)\r\n   2. [Automatic Installation](#automatic-installation)\r\n   3. [Manual Installation](#manual-installation)\r\n3. [Core Concepts](#core-concepts)\r\n   1. [Routes](#routes)\r\n   2. [Middleware](#middleware)\r\n4. [Usage Guide](#usage-guide)\r\n5. [Configuration](#configuration)\r\n6. [API Reference](#api-reference)\r\n7. [Troubleshooting](#troubleshooting)\r\n8. [Best Practices and Tips](#best-practices-and-tips)\r\n9. [Contributing and Community](#contributing-and-community)\r\n10. [License](#license)\r\n11. [Contact](#contact)\r\n\r\n## Introduction\r\n\r\nIntREST is a versatile backend framework written in TypeScript, specifically tailored for Node.js (version >= 18.0.0). It provides a range of tools and utilities that streamline the development of RESTful APIs. By employing a file-system-based approach, IntREST simplifies route handling by mapping the application's routes to its file structure, enhancing code organization and promoting simplicity.\r\n\r\n### Key Features\r\n\r\n- **Thread Workers:** Divides requests into thread workers, optimizing resource utilization and improving overall performance.\r\n- **RESTful API Development:** Simplifies the process of building robust and efficient RESTful APIs.\r\n- **File-System Based Routing:** Routes within the application are determined by the file structure, ensuring a clean and intuitive approach to defining API endpoints.\r\n- **Performance and Scalability:** Enhances the performance and scalability of Node.js applications, accommodating high volumes of traffic seamlessly.\r\n- **CORS Handling:** Automatically manages Cross-Origin Resource Sharing (CORS) requests, simplifying integration with external clients.\r\n- **Request Parsing:** Automatically detects and parses JSON and URL-encoded requests, eliminating the need for manual parsing.\r\n- **Response Type Detection:** Intelligently identifies the response type, supporting JSON, Buffer, String, or ReadableStream, facilitating integration with various client applications.\r\n\r\nWith IntREST, you can expedite your backend development, streamline code organization through file-system-based routing, and deliver high-performance RESTful APIs effortlessly. Let's delve into the details of utilizing this framework to harness its true potential.\r\n\r\n## Getting Started\r\n\r\n### Prerequisites\r\n\r\nBefore you begin, ensure that your system meets the following requirements:\r\n\r\n- [Node.js 18.0.0](https://nodejs.org/) or a later version.\r\n- Supported operating systems include macOS, Windows (including WSL), and Linux.\r\n\r\n### Automatic Installation\r\n\r\nFollow the steps below to set up a IntREST project using your preferred package manager:\r\n\r\n#### 1. Create a Directory\r\n\r\nCreate a directory for your project and navigate into it:\r\n\r\n```bash\r\nmkdir <your-project-folder>\r\ncd <your-project-folder>\r\n```\r\n\r\n#### 2. Initialize the Project\r\n\r\nUse your chosen package manager to initialize a new IntREST project:\r\n\r\nWith npm:\r\n\r\n```bash\r\nnpx @vulppi/intrest create\r\n```\r\n\r\nWith pnpm:\r\n\r\n```bash\r\npnpx @vulppi/intrest create\r\n```\r\n\r\nWith yarn:\r\n\r\n```bash\r\nnpx @vulppi/intrest create --yarn\r\n```\r\n\r\nThis command sets up the necessary project structure and installs the required dependencies.\r\n\r\n#### 3. Run the Development Server\r\n\r\nStart the development server by running the `dev` script with your package manager:\r\n\r\nWith npm:\r\n\r\n```bash\r\nnpm run dev\r\n```\r\n\r\nWith pnpm:\r\n\r\n```bash\r\npnpm dev\r\n```\r\n\r\nWith yarn:\r\n\r\n```bash\r\nyarn dev\r\n```\r\n\r\nThe development server will spin up, and you can now start building your IntREST application.\r\n\r\nBy following these steps, you'll have a IntREST project up and running, ready for you to begin developing your RESTful APIs with ease.\r\n\r\n---\r\n\r\n### Manual Installation\r\n\r\nTo manually install `@vulppi/intrest`, follow these steps:\r\n\r\n#### 1. Create a New Project\r\n\r\nStart by creating a new Node.js project using the following terminal commands:\r\n\r\n```bash\r\nmkdir <your-project-folder>\r\ncd <your-project-folder>\r\nnpm init -y\r\n```\r\n\r\nThis will create a new directory for your project and initialize a `package.json` file.\r\n\r\n#### 2. Install TypeScript\r\n\r\nNext, install TypeScript and the TypeScript types for Node.js using your preferred package manager. Run one of the following commands:\r\n\r\nWith npm:\r\n\r\n```bash\r\nnpm install -D typescript @types/node\r\n```\r\n\r\nWith pnpm:\r\n\r\n```bash\r\npnpm install -D typescript @types/node\r\n```\r\n\r\nWith yarn:\r\n\r\n```bash\r\nyarn add -D typescript @types/node\r\n```\r\n\r\nThis will install TypeScript as a development dependency and ensure that you have the necessary types for Node.js.\r\n\r\n#### 3. Configure TypeScript\r\n\r\nIn the root of your project, create a `tsconfig.json` file by running the following command:\r\n\r\n```bash\r\ntouch tsconfig.json\r\n```\r\n\r\nOpen the `tsconfig.json` file and add the following configuration:\r\n\r\n```json\r\n{\r\n  \"include\": [\"**/*.ts\"],\r\n  \"exclude\": [\"node_modules\", \".intrest\"],\r\n  \"compilerOptions\": {\r\n    \"module\": \"ESNext\",\r\n    \"target\": \"ESNext\",\r\n    \"moduleResolution\": \"node\",\r\n    \"esModuleInterop\": true,\r\n    \"resolveJsonModule\": true,\r\n    \"forceConsistentCasingInFileNames\": true,\r\n    \"isolatedModules\": true,\r\n    \"strict\": true,\r\n    \"verbatimModuleSyntax\": true,\r\n    \"declaration\": true,\r\n    \"emitDeclarationOnly\": true,\r\n    \"allowJs\": true,\r\n    \"checkJs\": false\r\n  }\r\n}\r\n```\r\n\r\nThis configuration ensures that TypeScript is set up correctly for your project.\r\n\r\n#### 4. Install IntREST\r\n\r\nInstall `@vulppi/intrest` using your chosen package manager:\r\n\r\nWith npm:\r\n\r\n```bash\r\nnpm install @vulppi/intrest\r\n```\r\n\r\nWith pnpm:\r\n\r\n```bash\r\npnpm install @vulppi/intrest\r\n```\r\n\r\nWith yarn:\r\n\r\n```bash\r\nyarn add @vulppi/intrest\r\n```\r\n\r\nThis will install IntREST as a dependency in your project.\r\n\r\n#### 5. Add Scripts\r\n\r\nOpen your `package.json` file and add the `\"type\": \"module\"` field to enable ES modules. Then, add the following scripts to the `\"scripts\"` section:\r\n\r\n```json\r\n{\r\n  // ...\r\n  \"type\": \"module\",\r\n  \"scripts\": {\r\n    \"dev\": \"irest dev\",\r\n    \"build\": \"irest build\",\r\n    \"start\": \"irest start\"\r\n  }\r\n  // ...\r\n}\r\n```\r\n\r\nThese scripts will enable you to run the development server, build your project, and start the server.\r\n\r\n#### 6. Create Your First Route\r\n\r\nCreate a file called `route.ts` inside a folder named `app` in your project directory:\r\n\r\n```\r\napp\r\n└── route.ts\r\npackage.json\r\ntsconfig.json\r\n```\r\n\r\nOpen the `route.ts` file and add the following content:\r\n\r\n```ts\r\n// ./app/route.ts\r\n\r\nimport type { IntRequest, IntResponse } from '@vulppi/intrest'\r\n\r\nexport async function GET(ctx: IntRequest): Promise<IntResponse> {\r\n  return {\r\n    status: 200,\r\n    body: 'Hello World!',\r\n  }\r\n}\r\n```\r\n\r\nThis code defines a basic route handler that responds with a \"Hello World!\" message.\r\n\r\n#### 7. Run the Development Server\r\n\r\nStart the development server by running the `dev` script using your package manager of choice:\r\n\r\nWith npm:\r\n\r\n```bash\r\nnpm run dev\r\n```\r\n\r\nWith pnpm:\r\n\r\n```bash\r\npnpm dev\r\n```\r\n\r\nWith yarn:\r\n\r\n```bash\r\nyarn dev\r\n```\r\n\r\nThe development server will start, and you can access your application at the specified port.\r\n\r\nWith these steps, you've manually installed IntREST, configured TypeScript, and set up your first route. You can now start building your IntREST application and explore the framework's capabilities.\r\n\r\n## Core Concepts\r\n\r\n### Application Structure\r\n\r\nIntREST projects follow a specific structure to ensure that your application is easy to understand and maintain. The following diagram shows the basic structure of a IntREST project:\r\n\r\n```\r\nassets\r\n├── file.txt\r\n└── image.png\r\napp\r\n├── route.ts\r\n├── my-route\r\n│   ├── route.ts\r\n│   └── middleware.ts\r\n├── my-other-route\r\n│   ├── route.ts\r\n│   └── middleware.ts\r\n├── [param]\r\n│   ├── route.ts\r\n│   └── middleware.ts\r\n├── [...catchParam]\r\n│   ├── route.ts\r\n│   └── middleware.ts\r\n├── (my-reader-group)\r\n│   └── group\r\n│       └── route.ts (GET)\r\n└── (my-writer-group)\r\n    └── group\r\n        └── route.ts (POST, PUT, DELETE)\r\npackage.json\r\ntsconfig.json\r\nintrest.config.mjs (optional)\r\n\r\n```\r\n\r\n### Routes\r\n\r\nThe `app` folder contains all of your application's routes. Each route is defined in a file named `route.ts` inside a folder with the same name as the route. For example, the `app/my-route/route.ts` file defines the `/my-route` route.\r\n\r\n#### Route Parameters\r\n\r\nYou can define routes with parameters by creating a folder with the parameter name inside the `app` folder. For example, the `app/[param]/route.ts` file defines the `/[param]` route and you can access the parameter value using `ctx.params.param`.\r\n\r\n#### Catch-All Routes\r\n\r\nYou can define catch-all routes by creating a folder with the parameter name prefixed with three dots inside the `app` folder. For example, the `app/[...catchParam]/route.ts` file defines the `/[...catchParam]` route and you can access the parameter value using `ctx.params.catchParam`.\r\n\r\n#### Route Groups\r\n\r\nYou can define route groups by creating a folder with the group name prefixed with parentheses inside the `app` folder. For example, the `app/(my-group)/group/route.ts` file defines the `/group` route. **Note:** If multiple routes conflict because groups, if the system finds multiple methods, it will throw an error.\r\n\r\n### Middleware\r\n\r\nYou can define middleware for a route by creating a file named `middleware.ts` inside the route's folder. For example, the `app/my-route/middleware.ts` file defines middleware for the `/my-route` route.\r\n\r\nThe middleware behavior is different from route handlers. Middleware is executed in chain order, and the route handler is executed after all middleware has been executed and call `next` method. If a middleware returns a response, the route handler will not be executed.\r\n\r\n## Usage Guide\r\n\r\nTo start using IntREST, you need create routes in app folder. Here's a simple example of routes:\r\n\r\n```typescript\r\nimport type { IntRequest, IntResponse } from '@vulppi/intrest'\r\n\r\nexport async function GET(ctx: IntRequest): Promise<IntResponse> {\r\n  return {\r\n    status: 200,\r\n    body: 'Hello World!',\r\n  }\r\n}\r\n```\r\n\r\nThe `GET` function above demonstrates an example of a route handler that returns a string as the response body.\r\n\r\nHere's another example that returns a JSON object:\r\n\r\n```typescript\r\nimport type { IntRequest, IntResponse } from '@vulppi/intrest'\r\n\r\nexport async function GET(ctx: IntRequest): Promise<IntResponse> {\r\n  return {\r\n    status: 200,\r\n    body: { text: 'Hello World!' },\r\n  }\r\n}\r\n```\r\n\r\nIn this case, the `body` property of the response is an object.\r\n\r\nIf you want to return a response with a Buffer (e.g., for serving images), you can do the following:\r\n\r\n```typescript\r\nimport type { IntRequest, IntResponse } from '@vulppi/intrest'\r\n\r\nconst imageBase64 = 'iVBORw0KGgoAAAANSUhEUgAAABg...AAASUVORK5CYII='\r\n\r\nconst image = Buffer.from(imageBase64, 'base64')\r\n\r\nexport async function GET(ctx: IntRequest): Promise<IntResponse> {\r\n  return {\r\n    status: 200,\r\n    headers: {\r\n      'content-type': 'image/png',\r\n      'content-length': image.length.toString(),\r\n    },\r\n    body: image,\r\n  }\r\n}\r\n```\r\n\r\nThe `GET` function above returns a response with a Buffer as the body. Make sure to set the appropriate `content-type` header and optionally `content-length` header for the Buffer.\r\n\r\nIf you want to serve a ReadableStream (e.g., for streaming video or large files), you can do the following:\r\n\r\n```typescript\r\nimport type { IntRequest, IntResponse } from '@vulppi/intrest'\r\n\r\nexport async function GET(ctx: IntRequest): Promise<IntResponse> {\r\n  // in ${projectRoot}/assets/video.mp4\r\n  const stream = ctx.assetsStream('video.mp4')\r\n\r\n  return {\r\n    status: 200,\r\n    body: stream,\r\n    headers: {\r\n      'Content-Type': 'video/mp4',\r\n    },\r\n  }\r\n}\r\n```\r\n\r\nThe `GET` function above returns a response with a ReadableStream as the body (you can use other types of `Readable`, as long as it is an extension of the `import('stream').Readable` class). You can use the `assetsStream` function from the `fs` module to create the stream.\r\n\r\nThe routes above are just examples of how to use IntREST.\r\n\r\n## Configuration\r\n\r\nIntREST uses a configuration file to define the application's settings, but is optional. The configuration file must be named `intrest.config.mjs` and must be located in the root directory of the project. Here's an example of a configuration file:\r\n\r\n```javascript\r\n/**\r\n * @type {import('@vulppi/intrest').Config}\r\n */\r\nexport default {\r\n  port: 4000,\r\n  folders: {\r\n    uploadTemp: '.tmp',\r\n  },\r\n  limits: {\r\n    bodyMaxSize: '1mb',\r\n    cors: ['*'],\r\n  },\r\n  messages: {\r\n    INTERNAL_SERVER_ERROR: 'Internal Server Error',\r\n    NOT_FOUND: 'Not Found',\r\n    METHOD_NOT_ALLOWED: 'Method Not Allowed',\r\n    MULTIPLE_ROUTES: 'Multiple routes found',\r\n    REQUEST_TOO_LONG: 'Request entity too large',\r\n  },\r\n  env: {\r\n    NODE_ENV: 'development',\r\n    HOST: 'localhost',\r\n  },\r\n}\r\n```\r\n\r\n## API Reference\r\n\r\nThe IntREST API is simple and easy to use. Has 4 main interfaces:\r\n\r\n- `IntRequest`\r\n- `IntResponse`\r\n- `MiddlewareNext`\r\n\r\n### IntRequest\r\n\r\nThe `IntRequest` interface is the input interface of IntREST. It contains all the information about the request.\r\n\r\n#### Properties\r\n\r\n- `method`: The HTTP method of the request. They are `GET`, `POST`, `PUT`, `PATCH`, `DELETE`.\r\n- `path`: The path of the request.\r\n- `params`: The object of parameters of the request.\r\n- `query`: The object of query parameters of the request. Using `URLSearchParams` API.\r\n- `headers`: The object of headers of the request.\r\n- `body`: The body of the request. Can be a `string` or `object`.\r\n  - The `body` property is only available if the request has a body and the method is not `GET`.\r\n  - If the request `Content-Type` is `multipart/form-data` and contains upload files, the `body` property will be contains a file metadata stored with name of the field. The metadata interface is `FileMetadata`.\r\n- `assetsStream`: The function to get a file stream from the `assets` folder, fonded in root directory of the project.\r\n- `cookies`: The object of cookies of the request. Using `cookie` API.\r\n- `custom`: The object of custom properties of the request. You can use this for share data between middlewares and route handlers.\r\n\r\n### IntResponse\r\n\r\nThe `IntResponse` interface is the output interface of IntREST. It contains all the information about the response.\r\n\r\n#### Properties\r\n\r\n- `status`: The HTTP status code of the response.\r\n- `headers`: The object of headers of the response.\r\n- `body`: The body of the response. Can be a `string`, `object`, `Buffer` or `ReadableStream`.\r\n  - The `body` property is only available if the response has a body.\r\n  - If the response `body` is a `object`, the `Content-Type` header will be set to `application/json` if not exists.\r\n  - If the response `body` is a `Buffer` or a `string`, the `Content-Type` header will be set to `plain/text` if not exists.\r\n  - If the response `body` is a `ReadableStream`, the `Content-Type` header will be set to `application/octet-stream` if not exists.\r\n- `cookies`: The object of cookies of the response.\r\n- `clearCookie`: The object of clear cookies of the response.\r\n\r\n### MiddlewareNext\r\n\r\nThe `MiddlewareNext` interface call the next middleware or route handler. If you send object in this function, the object will be merged with the property `custom` of the `IntRequest` interface.\r\n\r\n#### Properties\r\n\r\n- `custom`: The object of custom properties of the request. You can use this for share data between middlewares and route handlers.\r\n\r\n## Troubleshooting\r\n\r\nNo troubleshooting yet. If you have any problems, please contact us.\r\n\r\n## Best Practices and Tips\r\n\r\n- Use package `http-status-codes` for HTTP status codes. It's a simple and easy to use package and turn your code more readable.\r\n\r\n## Contributing and Community\r\n\r\nContributions are welcome! If you want to contribute to IntREST, please follow these steps:\r\n\r\n1. Fork the repository.\r\n2. Create a new branch for your feature or bug fix.\r\n3. Make your changes and commit them with descriptive messages.\r\n4. Push your changes to your forked repository.\r\n5. Submit a pull request to the main repository.\r\n6. And that's it! We will review your pull request as soon as possible.\r\n7. Thank you for contributing to IntREST! 🎉\r\n8. If you have any questions, feel free to contact us.\r\n9. If you want to contribute more, you can [Buy Us a Coffee](https://www.buymeacoffee.com/morbden) ☕️\r\n\r\n## License\r\n\r\nThis project is licensed under the [MIT License](https://github.com/vulppi-dev/intrest/blob/main/LICENSE).\r\n\r\n## Contact\r\n\r\nFor any inquiries or questions, you can reach out to the author:\r\n\r\nRenato Rodrigues  \r\nEmail: renato@vulppi.dev\r\n\r\n---\r\n\r\nThank you for using IntREST! We hope it helps you build powerful and scalable Node.js applications. If you have any feedback or suggestions, feel free to let us know.\r\n\r\nVisit the [Vulppi](https://vulppi.dev) organization site for more information about our projects and services.\r\n","readmeFilename":"README.md","gitHead":"19c1734fbdb5879eb9c091f9652346029108941f","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.5.1","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-XTUXPkRaMwHhZ6c7Ea9FVGdeFLBAQ6oGbrZKNRsZTTvl+/so0PtiSWjX+HoBrW1dXFgYoFEXE0rLkDk79fsqww==","shasum":"2e3c0f34261a56b91d7236613171c46aa383ffc5","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.5.1.tgz","fileCount":18,"unpackedSize":136870,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDYR/47WoEzQSzLtBxdmc2Saw707FiURTdwD9unQbFolQIhALpytluX/6As0O2qP5W3jlknPwArGq3B9u56rdMoseEo"}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.5.1_1689470071080_0.9365010389357187"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.5.2":{"name":"@vulppi/intrest","version":"0.5.2","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.13","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"6ac8ffeb8a4b2abcaa9152f9e747f8d86a2fcaaf","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.5.2","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-nBWFal3cpdQe19tzOlshoLkIMZPOo653YwfcDVN1rLkDfECnEpg/pLkW8m9gOohJxEDCPH0gv1WZE6KPOmuFPA==","shasum":"54d5a58b7a93f6078f09b66dca4f69d8918ce1a5","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.5.2.tgz","fileCount":18,"unpackedSize":124197,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGbeW1aR4JzGhnGwOJrAItEDiER3CzhJEeIIfC9cEgEwAiEApix1u74/CHoZt5HUfZIw5b1NoeAAv+ZBsU7i0UtD/lY="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.5.2_1689598753214_0.9866529371460349"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.5.3":{"name":"@vulppi/intrest","version":"0.5.3","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.13","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"a19866eaa56635b769dfd113d73626b2d59d5638","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.5.3","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-4zZmVkpiSBEqoDg+YdXY9n0H0DQsmlH9DdPCb10vclSH2AQml+ExDsQK5xpHYAPu95v5fePrpmqEY5h4ZpkBwA==","shasum":"1c7a50ff47e4a10fc5d335b7f766f025ea86ffbe","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.5.3.tgz","fileCount":18,"unpackedSize":124931,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEW2C7/CkofYt9u+bXxlF1yhuRVZ9I4qJCgJXHFm5zLnAiBmz1w7xqFuRrdnSBp5oYM4QvfQXwEA3sZIiu9RsbLs1g=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.5.3_1689614863687_0.17920540133654472"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.5.4":{"name":"@vulppi/intrest","version":"0.5.4","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.13","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"7260e01de30daff6487384de11a7b6d1a0e5e83b","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.5.4","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-w4TwSfxhoL01tYI7A3rvmPwEfmwjN0LF3JhxPtSFORNCa4wNmcZ06LI64DPnKfQgNol7y0MsMSHWuRURE6S0Ag==","shasum":"cd0b70d0b8e8312b1c85a7e5c1b35ad52cc52b25","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.5.4.tgz","fileCount":18,"unpackedSize":124931,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGn7qK4X3j9n7uMyYzJGiJ/YqDrmmgeHvAjy44ExM5HiAiBDkk+JtESPfHCnj6LCOi21d1vPAnK5b6GUTLGuD+q1cA=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.5.4_1689614914010_0.5660657436758756"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.5.5":{"name":"@vulppi/intrest","version":"0.5.5","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.13","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"ba5520d6948797e38b70562d734904ff650ba8ae","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.5.5","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-G62ASA4UIR98zCSvrj0pZiVvRcH5ChshD6On7IBuhY8Kh4VvUZCtXnb3wvEL56RKDeHV/6BK0Jv/DTv/8MbIJQ==","shasum":"890e57257e481bc0075aa5515171510d5da044d7","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.5.5.tgz","fileCount":18,"unpackedSize":125180,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDKopblqpH/0T2r1AdLpUp8lg37UoVFXxXui55+8rQeAAIgHlkegLPbjp5LX+9YZf9I28xPdIvZLIz9ryiR7yqQgcI="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.5.5_1689615822750_0.97082996647491"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.5.7":{"name":"@vulppi/intrest","version":"0.5.7","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.13","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"d224dada0813af7d8b920955dcb925a73325ebe0","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.5.7","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-8BSW+3LG7/kDa6pk1/lzXHqGxBOLDYCiIP9dhobH8dT7VPIutbSXZcYzJtZqP9AzP9twrtrUiA1aJodfhZuZTw==","shasum":"28ece1cccb90477146a699fe03e8d7621d6d18a5","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.5.7.tgz","fileCount":18,"unpackedSize":124386,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGI+5ngVkRivfeOc6MxeEk8RfelyCiWwJbTjzfDpOEnxAiEAxKPVy2ItWl9DKSeRkjlhPn9WMw+N/ShGKvXIfKL1qcY="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.5.7_1689623899798_0.9137510439983072"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.5.8":{"name":"@vulppi/intrest","version":"0.5.8","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.13","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"527064beb368e17b927f3fe6ef125f5af43cc499","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.5.8","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-ZBOyy17cxy4Tv8fzSMFiyHhE92wmc+1V4BH+9k3roHfEkrQrbRF9u1+B/E8Cjvjm8CMFLopxpHSQ4LwhO2TmKA==","shasum":"41068fc1a4f3688b0affde27a67e61e5339e4324","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.5.8.tgz","fileCount":18,"unpackedSize":124143,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCSyYWB6NYCKfnm/WYIEP39zdMheyKVJ+N+q1LZMkGWYgIgTofJHOIEbKVQoOJeXr3sWm3X09gv9eTs1aILXj4y5Yw="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.5.8_1689626847821_0.6078867917954542"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.6.0":{"name":"@vulppi/intrest","version":"0.6.0","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"527064beb368e17b927f3fe6ef125f5af43cc499","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.6.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-HhEws6klOLwgcG+bQ8gXSP9DNoHRGNRaZHl4s8PIX7OYhsi6e3Nwc0X8o6GpMoMUGdXJF0u5dmb5QmZkGEECWQ==","shasum":"2a988d8272c689c383919dc5d799395b20bba044","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.6.0.tgz","fileCount":18,"unpackedSize":125049,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFqCcdhq4hZs3bDjuXVPvFoM3nxRGTWtgHTs0QWBDl0uAiEA7qIX3A6HATbQ8z6k2KZP1TdHsb5Sf6Jzs4XAP4VZgvY="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.6.0_1689700518334_0.0037197362233896136"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.6.1":{"name":"@vulppi/intrest","version":"0.6.1","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"73d401ccb8805d49839cd0c993cf5dddfc17dc1f","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.6.1","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-Be5gvL+3BZ+iUuii7Ch4BoUMk7NWiCZkkd6l5M0b+latSWeDBgPHcuiFt8sFy1Gj2yxgDS4vxfYwjTYFLZUaZQ==","shasum":"903f4020a86e4b15fb985e4cdee90f32d7362d91","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.6.1.tgz","fileCount":18,"unpackedSize":126256,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC64i+SOUStV2Gu0SuoBQ6awq+G409IiYpkABKQdtVFWwIhALFMB63EvCjnF5PM79ARb4yCRcjuCVP/LmpKDr967G82"}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.6.1_1689708902268_0.562527850930391"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.0":{"name":"@vulppi/intrest","version":"0.7.0","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"6fc60e242ddd8628dadf59f4ac7905e1a9853888","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-IYUtD7MUkIiRJzyiO5VyulzUFQqGrUU3NN6yHt1C1KXoQ+Jqg4zQ6O6VHLYE0uW9I6QnXZtmnBLjgc4xbA9/wQ==","shasum":"7a785a2d7040b8d4194ac41d4f2bd72fbf411f48","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.0.tgz","fileCount":18,"unpackedSize":132172,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGX0DOexqfKGBZbGdIPzzHQ43I4yl8X6xcW7ZTIYCOhCAiEAtU7ia+hYk6Dm/I9U4ShHyUxh6OLlWD3sJMv0tf7j/70="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.0_1689723994835_0.11322196145326369"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.1":{"name":"@vulppi/intrest","version":"0.7.1","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"4668b32b24e7ea03a092c9f1730d968fb67d58b6","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.1","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-nONjksCP+HWJGD0gbxwr9nSoISppAwUxtH4BuBSD61bf+dWCNJeKrEKqMv3hMv6+z2N7q24TYwnsFkMPrHQ0yA==","shasum":"4225579c050bd00b080250d26685d8e19ef32834","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.1.tgz","fileCount":18,"unpackedSize":132824,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGLq5yyxVDEMk8t5EO1R7CDpxYiJfSPu2F9LD1iJXSTPAiEAq0azwPM4vcQnN1KXrjhkDrOk/OCqUFY/tOLdME+Hmx8="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.1_1689773306680_0.7813400396753272"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.2":{"name":"@vulppi/intrest","version":"0.7.2","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"50cf45678959cec76cb883d21af4e6da1b492d36","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.2","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-LJqfSFEMoxGEYtcxqj+wiuiTQYtjIIMrOcksHnRU1EYhODwRZymiRMpL/Pb3qW5vi02W+pBEyztQZ2DkSYuCAA==","shasum":"6137375d23f31042c08f5a592df96820730bf7f7","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.2.tgz","fileCount":18,"unpackedSize":132824,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHJ8r6uBMbyx78xKKQfRzXbldG+M1XdTHY1RLb8AzohbAiAVSHhBo63/7Hnu7ubGk2PccdDoId+L8lJqHyQrtdT8hQ=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.2_1689773665800_0.9341889012094895"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.3":{"name":"@vulppi/intrest","version":"0.7.3","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"ae0c14d13a020f2985458e6750fdad3a9f3f5d90","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.3","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-aDGQRG0zXgA/ammI3WBHAa5TZ46LNDM5q8weXXvgjkKLmT2K9zLtpSa+7fkGHK98oyW4t7C3Gs89jZEivJDXUg==","shasum":"5cfa38afb7317cc8daded26866e4618abf6db7c7","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.3.tgz","fileCount":18,"unpackedSize":133117,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICi0ECsR9U1S6hqzqj055d9x2p7Nm4LRsZjqguRczHx9AiByIzxhzyl3mVqOS+qm0wCvuf2d/Es5jJnplMcMdNt1+w=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.3_1689864128558_0.708969676407935"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.4":{"name":"@vulppi/intrest","version":"0.7.4","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"ae0c14d13a020f2985458e6750fdad3a9f3f5d90","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.4","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-Z3q0LG/ac1mVz06EWCeSN5Y8eG/mH4eG7aBwj2bz2CLqKO3ABkQZd1lD0CqjpAZsYzTe/HP/SaEBPav68xKAyw==","shasum":"326f3a10291a2f393be1018cfb239cdafd701ca9","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.4.tgz","fileCount":18,"unpackedSize":132945,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCGuZaL6+uVPIBVAVxItbHT8RypL/bgHXwdJ4b+bCwdvQIhAK5eBYcVW8CNNXuWQwvdtFKhP9BtG/eR14OgR9W66Nqi"}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.4_1689865917769_0.5361168230575912"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.5":{"name":"@vulppi/intrest","version":"0.7.5","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"1efc6a265604467ddb0a49692ffad50ce664e307","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.5","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-FF75HmC44PZc0fg034W6OQBaqfS+7oFq7xRuHFqf2ivBHtCtQDjOVWS3RGTbbysNILe0JFIjB4LRvx9JBL2qhA==","shasum":"2962a11c3f9033e40caa25989cf568be215e883f","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.5.tgz","fileCount":18,"unpackedSize":133130,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCucgnm13p10f6dkqlFsECdSmQfCR/x+1aGspVWzc6bMQIhALXNY8nFyRKu8l1sdSJ+1yZgDI6fDOdpq7slzWBJzM5M"}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.5_1689866699146_0.36125471699327827"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.6":{"name":"@vulppi/intrest","version":"0.7.6","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"79b03f41ebae75997bc28a57979b42216d5d2f3a","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.6","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-qgXeYdXXrsiqF1bBiwOW0bwL9z6aWXLVHvuKYSLp+gptrrhTaNURvR9XJrtToddkD9AqSzB3X3rz9TSULC+Bww==","shasum":"f450e971a832310dce49944b94829fb8912f6909","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.6.tgz","fileCount":18,"unpackedSize":129922,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDr/QtYBYBXJBe4nAnMbVsxnTTV86ZP+THS7v9O1gdDrQIhALk9admMheX3QAJN0MruzE3N3M6GkyPTN2Wh1SOc3VfY"}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.6_1689879707143_0.9633367617588882"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.7":{"name":"@vulppi/intrest","version":"0.7.7","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"readme":"# Vulppi - IntREST\r\n\r\n[![npm version](https://badge.fury.io/js/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![npm downloads](https://img.shields.io/npm/dm/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![GitHub issues](https://img.shields.io/github/issues/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/issues)\r\n[![GitHub license](https://img.shields.io/github/license/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/blob/main/LICENSE)\r\n\r\n**Attention:** Please note that the current version of this framework is in the _alpha stage_ and is **not recommended** for production use. We strongly advise against using this version in live environments or critical systems.\r\n\r\nA more stable and feature-complete beta version of the framework will be released shortly, which will be better suited for production scenarios. We encourage you to wait for the beta release to ensure a more reliable and robust experience.\r\n\r\nIn the meantime, you are welcome to explore and experiment with the alpha version for testing and evaluation purposes. Your feedback and suggestions during this phase will be greatly appreciated as they can help us enhance and improve the framework before the final release.\r\n\r\nThank you for your understanding and support as we work towards delivering a high-quality framework for your programming needs.\r\n\r\n## Table of Contents\r\n\r\n1. [Introduction](#introduction)\r\n   1. [Key Features](#key-features)\r\n   1. [Future Features](#future-features)\r\n2. Documentation\r\n   1. [Getting Started](./docs/GET_START.md)\r\n   2. [Core Concepts](./docs/CORE_CONCEPTS.md)\r\n   3. [Usage Guide](./docs/USAGE_GUIDE.md)\r\n   4. [Configuration](./docs/CONFIGURATIONS.md)\r\n   5. [API Reference](./docs/API_REFERENCE.md)\r\n   6. [Troubleshooting](./docs/TROUBLESHOOTING.md)\r\n   7. [Best Practices and Tips](./docs/BEST_PRACTICES_AND_TIPS.md)\r\n3. [Contributing and Community](#contributing-and-community)\r\n4. [License](#license)\r\n5. [Contact](#contact)\r\n\r\n## Introduction\r\n\r\nIntREST is a versatile backend framework written in TypeScript, specifically tailored for Node.js (version >= 18.0.0). It provides a range of tools and utilities that streamline the development of RESTful APIs. By employing a file-system-based approach, IntREST simplifies route handling by mapping the application's routes to its file structure, enhancing code organization and promoting simplicity.\r\n\r\n### Key Features\r\n\r\n- **Thread Workers:** Divides requests into thread workers, optimizing resource utilization and improving overall performance.\r\n- **RESTful API Development:** Simplifies the process of building robust and efficient RESTful APIs.\r\n- **File-System Based Routing:** Routes within the application are determined by the file structure, ensuring a clean and intuitive approach to defining API endpoints.\r\n- **Performance and Scalability:** Enhances the performance and scalability of Node.js applications, accommodating high volumes of traffic seamlessly.\r\n- **CORS Handling:** Automatically manages Cross-Origin Resource Sharing (CORS) requests, simplifying integration with external clients.\r\n- **Request Parsing:** Automatically detects and parses JSON, URL-encoded and Multipart requests, eliminating the need for manual parsing.\r\n- **Response Type Detection:** Intelligently identifies the response type, supporting JSON, Buffer, String, or ReadableStream, facilitating integration with various client applications.\r\n\r\nWith IntREST, you can expedite your backend development, streamline code organization through file-system-based routing, and deliver high-performance RESTful APIs effortlessly. Let's delve into the details of utilizing this framework to harness its true potential.\r\n\r\n### Future Features\r\n\r\n- Easy handlers for Authentication and Authorization\r\n  - JWT\r\n  - OAuth\r\n  - Providers (Google, Facebook, Twitter, Github, etc.)\r\n  - FIDO2\r\n- Auto validation\r\n  - Request Validation\r\n  - Response Validation\r\n- Auto documentation\r\n  - OpenAPI\r\n- Swagger UI for testing\r\n- Performance monitoring\r\n- Logging\r\n- Error handling\r\n- HTTP2.0\r\n- Deployment\r\n  - Edge functions\r\n  - Serverless functions\r\n\r\n## Contributing and Community\r\n\r\nContributions are welcome! If you want to contribute to IntREST, please follow these steps:\r\n\r\n1. Fork the repository.\r\n2. Create a new branch for your feature or bug fix.\r\n3. Make your changes and commit them with descriptive messages.\r\n4. Push your changes to your forked repository.\r\n5. Submit a pull request to the main repository.\r\n6. And that's it! We will review your pull request as soon as possible.\r\n7. Thank you for contributing to IntREST! 🎉\r\n8. If you have any questions, feel free to contact us.\r\n9. If you want to contribute more, you can [Buy Us a Coffee](https://www.buymeacoffee.com/morbden) ☕️\r\n\r\n## License\r\n\r\nThis project is licensed under the [MIT License](https://github.com/vulppi-dev/intrest/blob/main/LICENSE).\r\n\r\n## Contact\r\n\r\nFor any inquiries or questions, you can reach out to the author:\r\n\r\nRenato Rodrigues  \r\nEmail: renato@vulppi.dev\r\n\r\n---\r\n\r\nThank you for using IntREST! We hope it helps you build powerful and scalable Node.js applications. If you have any feedback or suggestions, feel free to let us know.\r\n\r\nVisit the [Vulppi](https://vulppi.dev) organization site for more information about our projects and services.\r\n","readmeFilename":"README.md","gitHead":"79b03f41ebae75997bc28a57979b42216d5d2f3a","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.7","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-rF0IbGwueWAlIABpHmum8PTFimiu0RLIEj5Tg9JPDbu35jcNUnzb7xt5v0Fyu4DNycPFC5EqQbQmc2Lym2tcHg==","shasum":"0b35df139a632a1bf84023bc013ad36d9513b06c","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.7.tgz","fileCount":18,"unpackedSize":130031,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1S+ayOfwuMk+keD/t2xoueqsts27bpZegrFAP3SNvuQIgXHqWFRobIdmcXSybkmAj87uODsklOWZkoh/CauOJqSo="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.7_1689880966965_0.04959981135182101"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.8":{"name":"@vulppi/intrest","version":"0.7.8","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"readme":"# Vulppi - IntREST\r\n\r\n[![npm version](https://badge.fury.io/js/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![npm downloads](https://img.shields.io/npm/dm/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![GitHub issues](https://img.shields.io/github/issues/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/issues)\r\n[![GitHub license](https://img.shields.io/github/license/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/blob/main/LICENSE)\r\n\r\n**Attention:** Please note that the current version of this framework is in the _alpha stage_ and is **not recommended** for production use. We strongly advise against using this version in live environments or critical systems.\r\n\r\nA more stable and feature-complete beta version of the framework will be released shortly, which will be better suited for production scenarios. We encourage you to wait for the beta release to ensure a more reliable and robust experience.\r\n\r\nIn the meantime, you are welcome to explore and experiment with the alpha version for testing and evaluation purposes. Your feedback and suggestions during this phase will be greatly appreciated as they can help us enhance and improve the framework before the final release.\r\n\r\nThank you for your understanding and support as we work towards delivering a high-quality framework for your programming needs.\r\n\r\n## Table of Contents\r\n\r\n1. [Introduction](#introduction)\r\n   1. [Key Features](#key-features)\r\n   1. [Future Features](#future-features)\r\n2. Documentation\r\n   1. [Getting Started](./docs/GET_START.md)\r\n   2. [Core Concepts](./docs/CORE_CONCEPTS.md)\r\n   3. [Usage Guide](./docs/USAGE_GUIDE.md)\r\n   4. [Configuration](./docs/CONFIGURATIONS.md)\r\n   5. [API Reference](./docs/API_REFERENCE.md)\r\n   6. [Troubleshooting](./docs/TROUBLESHOOTING.md)\r\n   7. [Best Practices and Tips](./docs/BEST_PRACTICES_AND_TIPS.md)\r\n3. [Contributing and Community](#contributing-and-community)\r\n4. [License](#license)\r\n5. [Contact](#contact)\r\n\r\n## Introduction\r\n\r\nIntREST is a versatile backend framework written in TypeScript, specifically tailored for Node.js (version >= 18.0.0). It provides a range of tools and utilities that streamline the development of RESTful APIs. By employing a file-system-based approach, IntREST simplifies route handling by mapping the application's routes to its file structure, enhancing code organization and promoting simplicity.\r\n\r\n### Key Features\r\n\r\n- **Thread Workers:** Divides requests into thread workers, optimizing resource utilization and improving overall performance.\r\n- **RESTful API Development:** Simplifies the process of building robust and efficient RESTful APIs.\r\n- **File-System Based Routing:** Routes within the application are determined by the file structure, ensuring a clean and intuitive approach to defining API endpoints.\r\n- **Performance and Scalability:** Enhances the performance and scalability of Node.js applications, accommodating high volumes of traffic seamlessly.\r\n- **CORS Handling:** Automatically manages Cross-Origin Resource Sharing (CORS) requests, simplifying integration with external clients.\r\n- **Request Parsing:** Automatically detects and parses JSON, URL-encoded and Multipart requests, eliminating the need for manual parsing.\r\n- **Response Type Detection:** Intelligently identifies the response type, supporting JSON, Buffer, String, or ReadableStream, facilitating integration with various client applications.\r\n\r\nWith IntREST, you can expedite your backend development, streamline code organization through file-system-based routing, and deliver high-performance RESTful APIs effortlessly. Let's delve into the details of utilizing this framework to harness its true potential.\r\n\r\n### Future Features\r\n\r\n- Easy handlers for Authentication and Authorization\r\n  - JWT\r\n  - OAuth\r\n  - Providers (Google, Facebook, Twitter, Github, etc.)\r\n  - FIDO2\r\n- Auto validation\r\n  - Request Validation\r\n  - Response Validation\r\n- Auto documentation\r\n  - OpenAPI\r\n- Swagger UI for testing\r\n- Performance monitoring\r\n- Logging\r\n- Error handling\r\n- HTTP2.0\r\n- Deployment\r\n  - Edge functions\r\n  - Serverless functions\r\n\r\n## Contributing and Community\r\n\r\nContributions are welcome! If you want to contribute to IntREST, please follow these steps:\r\n\r\n1. Fork the repository.\r\n2. Create a new branch for your feature or bug fix.\r\n3. Make your changes and commit them with descriptive messages.\r\n4. Push your changes to your forked repository.\r\n5. Submit a pull request to the main repository.\r\n6. And that's it! We will review your pull request as soon as possible.\r\n7. Thank you for contributing to IntREST! 🎉\r\n8. If you have any questions, feel free to contact us.\r\n9. If you want to contribute more, you can [Buy Us a Coffee](https://www.buymeacoffee.com/morbden) ☕️\r\n\r\n## License\r\n\r\nThis project is licensed under the [MIT License](https://github.com/vulppi-dev/intrest/blob/main/LICENSE).\r\n\r\n## Contact\r\n\r\nFor any inquiries or questions, you can reach out to the author:\r\n\r\nRenato Rodrigues  \r\nEmail: renato@vulppi.dev\r\n\r\n---\r\n\r\nThank you for using IntREST! We hope it helps you build powerful and scalable Node.js applications. If you have any feedback or suggestions, feel free to let us know.\r\n\r\nVisit the [Vulppi](https://vulppi.dev) organization site for more information about our projects and services.\r\n","readmeFilename":"README.md","gitHead":"79b03f41ebae75997bc28a57979b42216d5d2f3a","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.8","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-6boot2eK9rPG643Aqo5c8ePaNmCaztf1/D+CcE18ZVLQ1MODE4wCmnRk+RbEaMuUaySb+0MRyLyC6Rdq9Rmk4w==","shasum":"fc3520457ca2729f9f339f3143e065eb1feed836","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.8.tgz","fileCount":18,"unpackedSize":130049,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIC5aJvj9sCUldswRX14ljpAacOHje17OUgZGrZtalidSAiEAn1KhXgAawhIeFPylCjk2o1ob0L5fzBLjHuJc4qMSCa0="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.8_1689881515761_0.8119414380046173"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.9":{"name":"@vulppi/intrest","version":"0.7.9","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"readme":"# Vulppi - IntREST\r\n\r\n[![npm version](https://badge.fury.io/js/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![npm downloads](https://img.shields.io/npm/dm/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![GitHub issues](https://img.shields.io/github/issues/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/issues)\r\n[![GitHub license](https://img.shields.io/github/license/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/blob/main/LICENSE)\r\n\r\n**Attention:** Please note that the current version of this framework is in the _alpha stage_ and is **not recommended** for production use. We strongly advise against using this version in live environments or critical systems.\r\n\r\nA more stable and feature-complete beta version of the framework will be released shortly, which will be better suited for production scenarios. We encourage you to wait for the beta release to ensure a more reliable and robust experience.\r\n\r\nIn the meantime, you are welcome to explore and experiment with the alpha version for testing and evaluation purposes. Your feedback and suggestions during this phase will be greatly appreciated as they can help us enhance and improve the framework before the final release.\r\n\r\nThank you for your understanding and support as we work towards delivering a high-quality framework for your programming needs.\r\n\r\n## Table of Contents\r\n\r\n1. [Introduction](#introduction)\r\n   1. [Key Features](#key-features)\r\n   1. [Future Features](#future-features)\r\n2. Documentation\r\n   1. [Getting Started](./docs/GET_START.md)\r\n   2. [Core Concepts](./docs/CORE_CONCEPTS.md)\r\n   3. [Usage Guide](./docs/USAGE_GUIDE.md)\r\n   4. [Configuration](./docs/CONFIGURATIONS.md)\r\n   5. [API Reference](./docs/API_REFERENCE.md)\r\n   6. [Troubleshooting](./docs/TROUBLESHOOTING.md)\r\n   7. [Best Practices and Tips](./docs/BEST_PRACTICES_AND_TIPS.md)\r\n3. [Contributing and Community](#contributing-and-community)\r\n4. [License](#license)\r\n5. [Contact](#contact)\r\n\r\n## Introduction\r\n\r\nIntREST is a versatile backend framework written in TypeScript, specifically tailored for Node.js (version >= 18.0.0). It provides a range of tools and utilities that streamline the development of RESTful APIs. By employing a file-system-based approach, IntREST simplifies route handling by mapping the application's routes to its file structure, enhancing code organization and promoting simplicity.\r\n\r\n### Key Features\r\n\r\n- **Thread Workers:** Divides requests into thread workers, optimizing resource utilization and improving overall performance.\r\n- **RESTful API Development:** Simplifies the process of building robust and efficient RESTful APIs.\r\n- **File-System Based Routing:** Routes within the application are determined by the file structure, ensuring a clean and intuitive approach to defining API endpoints.\r\n- **Performance and Scalability:** Enhances the performance and scalability of Node.js applications, accommodating high volumes of traffic seamlessly.\r\n- **CORS Handling:** Automatically manages Cross-Origin Resource Sharing (CORS) requests, simplifying integration with external clients.\r\n- **Request Parsing:** Automatically detects and parses JSON, URL-encoded and Multipart requests, eliminating the need for manual parsing.\r\n- **Response Type Detection:** Intelligently identifies the response type, supporting JSON, Buffer, String, or ReadableStream, facilitating integration with various client applications.\r\n\r\nWith IntREST, you can expedite your backend development, streamline code organization through file-system-based routing, and deliver high-performance RESTful APIs effortlessly. Let's delve into the details of utilizing this framework to harness its true potential.\r\n\r\n### Future Features\r\n\r\n- Easy handlers for Authentication and Authorization\r\n  - JWT\r\n  - OAuth\r\n  - Providers (Google, Facebook, Twitter, Github, etc.)\r\n  - FIDO2\r\n- Auto validation\r\n  - Request Validation\r\n  - Response Validation\r\n- Auto documentation\r\n  - OpenAPI\r\n- Swagger UI for testing\r\n- Performance monitoring\r\n- Logging\r\n- Error handling\r\n- HTTP2.0\r\n- Deployment\r\n  - Edge functions\r\n  - Serverless functions\r\n\r\n## Contributing and Community\r\n\r\nContributions are welcome! If you want to contribute to IntREST, please follow these steps:\r\n\r\n1. Fork the repository.\r\n2. Create a new branch for your feature or bug fix.\r\n3. Make your changes and commit them with descriptive messages.\r\n4. Push your changes to your forked repository.\r\n5. Submit a pull request to the main repository.\r\n6. And that's it! We will review your pull request as soon as possible.\r\n7. Thank you for contributing to IntREST! 🎉\r\n8. If you have any questions, feel free to contact us.\r\n9. If you want to contribute more, you can [Buy Us a Coffee](https://www.buymeacoffee.com/morbden) ☕️\r\n\r\n## License\r\n\r\nThis project is licensed under the [MIT License](https://github.com/vulppi-dev/intrest/blob/main/LICENSE).\r\n\r\n## Contact\r\n\r\nFor any inquiries or questions, you can reach out to the author:\r\n\r\nRenato Rodrigues  \r\nEmail: renato@vulppi.dev\r\n\r\n---\r\n\r\nThank you for using IntREST! We hope it helps you build powerful and scalable Node.js applications. If you have any feedback or suggestions, feel free to let us know.\r\n\r\nVisit the [Vulppi](https://vulppi.dev) organization site for more information about our projects and services.\r\n","readmeFilename":"README.md","gitHead":"79b03f41ebae75997bc28a57979b42216d5d2f3a","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.9","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-vfSuzZVj/ekl6QYAQ9c+Tpy2GvmKMZsREJtY0FOgzF0z6RUkZCHP/e1oA86pG7UA7WKTAoShMi7dw3/gTfp0TQ==","shasum":"be20d17743810e4589e6858bcddc38f464eae256","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.9.tgz","fileCount":18,"unpackedSize":130079,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBpGKJE7WAZ1wkP++E5BNNKCJltqSaQKvpsWrHeKMaoFAiBPtNwTi/qd43aHW5QmMtfWEpBAsrBrPosYacLlI1RIMw=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.9_1689881933720_0.19028132272181164"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.10":{"name":"@vulppi/intrest","version":"0.7.10","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"readme":"# Vulppi - IntREST\r\n\r\n[![npm version](https://badge.fury.io/js/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![npm downloads](https://img.shields.io/npm/dm/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![GitHub issues](https://img.shields.io/github/issues/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/issues)\r\n[![GitHub license](https://img.shields.io/github/license/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/blob/main/LICENSE)\r\n\r\n**Attention:** Please note that the current version of this framework is in the _alpha stage_ and is **not recommended** for production use. We strongly advise against using this version in live environments or critical systems.\r\n\r\nA more stable and feature-complete beta version of the framework will be released shortly, which will be better suited for production scenarios. We encourage you to wait for the beta release to ensure a more reliable and robust experience.\r\n\r\nIn the meantime, you are welcome to explore and experiment with the alpha version for testing and evaluation purposes. Your feedback and suggestions during this phase will be greatly appreciated as they can help us enhance and improve the framework before the final release.\r\n\r\nThank you for your understanding and support as we work towards delivering a high-quality framework for your programming needs.\r\n\r\n## Table of Contents\r\n\r\n1. [Introduction](#introduction)\r\n   1. [Key Features](#key-features)\r\n   1. [Future Features](#future-features)\r\n2. Documentation\r\n   1. [Getting Started](./docs/GET_START.md)\r\n   2. [Core Concepts](./docs/CORE_CONCEPTS.md)\r\n   3. [Usage Guide](./docs/USAGE_GUIDE.md)\r\n   4. [Configuration](./docs/CONFIGURATIONS.md)\r\n   5. [API Reference](./docs/API_REFERENCE.md)\r\n   6. [Troubleshooting](./docs/TROUBLESHOOTING.md)\r\n   7. [Best Practices and Tips](./docs/BEST_PRACTICES_AND_TIPS.md)\r\n3. [Contributing and Community](#contributing-and-community)\r\n4. [License](#license)\r\n5. [Contact](#contact)\r\n\r\n## Introduction\r\n\r\nIntREST is a versatile backend framework written in TypeScript, specifically tailored for Node.js (version >= 18.0.0). It provides a range of tools and utilities that streamline the development of RESTful APIs. By employing a file-system-based approach, IntREST simplifies route handling by mapping the application's routes to its file structure, enhancing code organization and promoting simplicity.\r\n\r\n### Key Features\r\n\r\n- **Thread Workers:** Divides requests into thread workers, optimizing resource utilization and improving overall performance.\r\n- **RESTful API Development:** Simplifies the process of building robust and efficient RESTful APIs.\r\n- **File-System Based Routing:** Routes within the application are determined by the file structure, ensuring a clean and intuitive approach to defining API endpoints.\r\n- **Performance and Scalability:** Enhances the performance and scalability of Node.js applications, accommodating high volumes of traffic seamlessly.\r\n- **CORS Handling:** Automatically manages Cross-Origin Resource Sharing (CORS) requests, simplifying integration with external clients.\r\n- **Request Parsing:** Automatically detects and parses JSON, URL-encoded and Multipart requests, eliminating the need for manual parsing.\r\n- **Response Type Detection:** Intelligently identifies the response type, supporting JSON, Buffer, String, or ReadableStream, facilitating integration with various client applications.\r\n\r\nWith IntREST, you can expedite your backend development, streamline code organization through file-system-based routing, and deliver high-performance RESTful APIs effortlessly. Let's delve into the details of utilizing this framework to harness its true potential.\r\n\r\n### Future Features\r\n\r\n- Easy handlers for Authentication and Authorization\r\n  - JWT\r\n  - OAuth\r\n  - Providers (Google, Facebook, Twitter, Github, etc.)\r\n  - FIDO2\r\n- Auto validation\r\n  - Request Validation\r\n  - Response Validation\r\n- Auto documentation\r\n  - OpenAPI\r\n- Swagger UI for testing\r\n- Performance monitoring\r\n- Logging\r\n- Error handling\r\n- HTTP2.0\r\n- Deployment\r\n  - Edge functions\r\n  - Serverless functions\r\n\r\n## Contributing and Community\r\n\r\nContributions are welcome! If you want to contribute to IntREST, please follow these steps:\r\n\r\n1. Fork the repository.\r\n2. Create a new branch for your feature or bug fix.\r\n3. Make your changes and commit them with descriptive messages.\r\n4. Push your changes to your forked repository.\r\n5. Submit a pull request to the main repository.\r\n6. And that's it! We will review your pull request as soon as possible.\r\n7. Thank you for contributing to IntREST! 🎉\r\n8. If you have any questions, feel free to contact us.\r\n9. If you want to contribute more, you can [Buy Us a Coffee](https://www.buymeacoffee.com/morbden) ☕️\r\n\r\n## License\r\n\r\nThis project is licensed under the [MIT License](https://github.com/vulppi-dev/intrest/blob/main/LICENSE).\r\n\r\n## Contact\r\n\r\nFor any inquiries or questions, you can reach out to the author:\r\n\r\nRenato Rodrigues  \r\nEmail: renato@vulppi.dev\r\n\r\n---\r\n\r\nThank you for using IntREST! We hope it helps you build powerful and scalable Node.js applications. If you have any feedback or suggestions, feel free to let us know.\r\n\r\nVisit the [Vulppi](https://vulppi.dev) organization site for more information about our projects and services.\r\n","readmeFilename":"README.md","gitHead":"79b03f41ebae75997bc28a57979b42216d5d2f3a","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.10","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-f8hFk204QBcalUb52XKApDwQShQaFxdVM6psQiTwB+JeMpsQhfRTDgrEZqcpPC9BaCqjXw3Gc9nYjTWn9zWuKQ==","shasum":"743b679e100f9951941359cd4f7c7057df4c8662","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.10.tgz","fileCount":18,"unpackedSize":130187,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGpODKc/+kpM7ekfN3rjMZtDYaby3+EiDDKbTerdbo1TAiA8EVNEJeEMVhxjLH8EHv21csSwBGF9GPlvaRzzi6rjeQ=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.10_1689943313086_0.9602312131898858"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.11":{"name":"@vulppi/intrest","version":"0.7.11","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"readme":"# Vulppi - IntREST\r\n\r\n[![npm version](https://badge.fury.io/js/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![npm downloads](https://img.shields.io/npm/dm/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![GitHub issues](https://img.shields.io/github/issues/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/issues)\r\n[![GitHub license](https://img.shields.io/github/license/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/blob/main/LICENSE)\r\n\r\n**Attention:** Please note that the current version of this framework is in the _alpha stage_ and is **not recommended** for production use. We strongly advise against using this version in live environments or critical systems.\r\n\r\nA more stable and feature-complete beta version of the framework will be released shortly, which will be better suited for production scenarios. We encourage you to wait for the beta release to ensure a more reliable and robust experience.\r\n\r\nIn the meantime, you are welcome to explore and experiment with the alpha version for testing and evaluation purposes. Your feedback and suggestions during this phase will be greatly appreciated as they can help us enhance and improve the framework before the final release.\r\n\r\nThank you for your understanding and support as we work towards delivering a high-quality framework for your programming needs.\r\n\r\n## Table of Contents\r\n\r\n1. [Introduction](#introduction)\r\n   1. [Key Features](#key-features)\r\n   1. [Future Features](#future-features)\r\n2. Documentation\r\n   1. [Getting Started](./docs/GET_START.md)\r\n   2. [Core Concepts](./docs/CORE_CONCEPTS.md)\r\n   3. [Usage Guide](./docs/USAGE_GUIDE.md)\r\n   4. [Configuration](./docs/CONFIGURATIONS.md)\r\n   5. [API Reference](./docs/API_REFERENCE.md)\r\n   6. [Troubleshooting](./docs/TROUBLESHOOTING.md)\r\n   7. [Best Practices and Tips](./docs/BEST_PRACTICES_AND_TIPS.md)\r\n3. [Contributing and Community](#contributing-and-community)\r\n4. [License](#license)\r\n5. [Contact](#contact)\r\n\r\n## Introduction\r\n\r\nIntREST is a versatile backend framework written in TypeScript, specifically tailored for Node.js (version >= 18.0.0). It provides a range of tools and utilities that streamline the development of RESTful APIs. By employing a file-system-based approach, IntREST simplifies route handling by mapping the application's routes to its file structure, enhancing code organization and promoting simplicity.\r\n\r\n### Key Features\r\n\r\n- **Thread Workers:** Divides requests into thread workers, optimizing resource utilization and improving overall performance.\r\n- **RESTful API Development:** Simplifies the process of building robust and efficient RESTful APIs.\r\n- **File-System Based Routing:** Routes within the application are determined by the file structure, ensuring a clean and intuitive approach to defining API endpoints.\r\n- **Performance and Scalability:** Enhances the performance and scalability of Node.js applications, accommodating high volumes of traffic seamlessly.\r\n- **CORS Handling:** Automatically manages Cross-Origin Resource Sharing (CORS) requests, simplifying integration with external clients.\r\n- **Request Parsing:** Automatically detects and parses JSON, URL-encoded and Multipart requests, eliminating the need for manual parsing.\r\n- **Response Type Detection:** Intelligently identifies the response type, supporting JSON, Buffer, String, or ReadableStream, facilitating integration with various client applications.\r\n\r\nWith IntREST, you can expedite your backend development, streamline code organization through file-system-based routing, and deliver high-performance RESTful APIs effortlessly. Let's delve into the details of utilizing this framework to harness its true potential.\r\n\r\n### Future Features\r\n\r\n- Easy handlers for Authentication and Authorization\r\n  - JWT\r\n  - OAuth\r\n  - Providers (Google, Facebook, Twitter, Github, etc.)\r\n  - FIDO2\r\n- Auto validation\r\n  - Request Validation\r\n  - Response Validation\r\n- Auto documentation\r\n  - OpenAPI\r\n- Swagger UI for testing\r\n- Performance monitoring\r\n- Logging\r\n- Error handling\r\n- HTTP2.0\r\n- Deployment\r\n  - Edge functions\r\n  - Serverless functions\r\n\r\n## Contributing and Community\r\n\r\nContributions are welcome! If you want to contribute to IntREST, please follow these steps:\r\n\r\n1. Fork the repository.\r\n2. Create a new branch for your feature or bug fix.\r\n3. Make your changes and commit them with descriptive messages.\r\n4. Push your changes to your forked repository.\r\n5. Submit a pull request to the main repository.\r\n6. And that's it! We will review your pull request as soon as possible.\r\n7. Thank you for contributing to IntREST! 🎉\r\n8. If you have any questions, feel free to contact us.\r\n9. If you want to contribute more, you can [Buy Us a Coffee](https://www.buymeacoffee.com/morbden) ☕️\r\n\r\n## License\r\n\r\nThis project is licensed under the [MIT License](https://github.com/vulppi-dev/intrest/blob/main/LICENSE).\r\n\r\n## Contact\r\n\r\nFor any inquiries or questions, you can reach out to the author:\r\n\r\nRenato Rodrigues  \r\nEmail: renato@vulppi.dev\r\n\r\n---\r\n\r\nThank you for using IntREST! We hope it helps you build powerful and scalable Node.js applications. If you have any feedback or suggestions, feel free to let us know.\r\n\r\nVisit the [Vulppi](https://vulppi.dev) organization site for more information about our projects and services.\r\n","readmeFilename":"README.md","gitHead":"79b03f41ebae75997bc28a57979b42216d5d2f3a","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.11","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-ydONunhX+xW5TokkFmhnpT9XNPY0z/L/30ugCS9aEyiqvxlqYS7+FgDuoKEwqha1utrjBXRqZutoX1488nrOng==","shasum":"a7cea8bbc3f36c97860637eeb85fd7bc3c247a28","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.11.tgz","fileCount":18,"unpackedSize":130243,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDsUkbZBgu6ttInPi0D8MZw2wHyszQNVKCrlLLOOTOmxgIgFY9WzxEPVMHYseMQ2MQSt+7Op0PrCtd8VRfZDvEIa50="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.11_1689943671659_0.2898677335214179"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.12":{"name":"@vulppi/intrest","version":"0.7.12","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"79b03f41ebae75997bc28a57979b42216d5d2f3a","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.12","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-lK0wbKonvtfNQfsai+wJUF/5Hh1upqBQdbcPN2d3W/JUSLdyrVdlnBGvuinWYQH83e1gLLX0MuWcIvjU0Sjw/Q==","shasum":"e5c810689354cc7b871bec661316464a5b100189","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.12.tgz","fileCount":18,"unpackedSize":130134,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGivT4X4a4ZBYdIshAdUkmBF9FsuZP9duoi1cJLOZDL5AiAfEpjkjdE1RUisn+N1rGtSsYbIDFQbQBtDVad/8/qDpA=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.12_1689945452166_0.9851837983418639"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.13":{"name":"@vulppi/intrest","version":"0.7.13","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"f74533c346b0cc69574a8ae5c4280a70ac5f9154","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.13","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-O8ysFI6b35hMCa+vwOkx8v6133hkGE4VZY8vecRhL6bE8BriZRibOs9Tt4a230lOEC9ZdqrPkD04+HMu7musPQ==","shasum":"80a05727a728e5ec0caef7692e250e0d99e8d17f","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.13.tgz","fileCount":18,"unpackedSize":129792,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCc2CyoomG+4LuoqRLP9DhDJBtJzb4Gol8TrfpnZQ7Q/wIga609uQDBRxILmwg1FmoFZgQB72i3lyxTYH0AGgX4FOo="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.13_1689946778603_0.40039278485760366"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.14":{"name":"@vulppi/intrest","version":"0.7.14","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"35a9007258ba0f7f69d9a5feefe0e6128b4dddac","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.14","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-b+oO452tnsY1EhljgmsOdaq9wVqhvVUx3+sWGrlQBRI/e5ZLRadHiqbxKCtJ3DvciiXtmJ1W6Wb3OsMuZk00AA==","shasum":"112bf362a68e3ea78d4c257c7e75a31f2c32c1d3","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.14.tgz","fileCount":18,"unpackedSize":130252,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICgl0dOBLchz4b/5KP4i7TpMuBstMHpEVFHjKlk+hFF+AiBwqJIEcniNZR5rd0jJQbIfgF/PfFJ4p2LZ1SzHE1vJkA=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.14_1689955874283_0.8906031975961555"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.15":{"name":"@vulppi/intrest","version":"0.7.15","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"9cd69d93b92d1ddd40ab11e94308ec2d0192151a","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.15","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-mHsNotTsRHBRQOwepSvyVzxuVOdPcZ1cGxtP1x5r0lbxgQ38R4Nf6x8wXtHEsM07xFiVX4CIlUE8bwBMz4BW5g==","shasum":"578ef81bd5bfcd2d1218e1c4a1eecc05fc180626","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.15.tgz","fileCount":18,"unpackedSize":130419,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEsUIY8cvm8VrAAUhNbeMKMKGijZwYLmf9/G37eXIkE9AiEAndyrEt/uHptgspI4MaQTvcr625gfp6r+g5zdI6LUUvE="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.15_1689957644126_0.10454096671300861"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.16":{"name":"@vulppi/intrest","version":"0.7.16","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"9cd69d93b92d1ddd40ab11e94308ec2d0192151a","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.16","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-l3Pxyf0o+KJTZd1sqle7phyK/jIOlORPvF5j2ibBVViJ/h0vyuG5uzneKA2pt9KKv+m8riDPuteIUrmw5BQIaQ==","shasum":"52cfefaef47251dfd6c7e3f39a67bb02e49854d3","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.16.tgz","fileCount":18,"unpackedSize":130652,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQC/6FEc0+yHObQgGphbuC0ZptYQU5D97tsAxGs9ocjjVAIgGy55CFqKSIPb+hUcsEBVi2rjdKKaKtB9OiXcv9Y9RgI="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.16_1689958699454_0.4274370333954043"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.19":{"name":"@vulppi/intrest","version":"0.7.19","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"2c9237c3cdb6d9980a941e8853976ee0d5546410","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.19","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-BRZnqzXaGnd4fCEuu2T1RuRqxa1dSVW1flPOK35LXKeqM4KS314KMPPOJIr8XlocRLViFMELnEeYpobm2RzBuQ==","shasum":"1e13e380089847f7d0567d0266e99cf4204d5c3c","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.19.tgz","fileCount":18,"unpackedSize":131392,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAOnGI6hglrk0xxHvvTpQJG9825bwpo1eEEh7wpk1HOkAiBHk1gwZzI+ZW/8cSpol113FHsmef1/tOjoSniqZq7bJA=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.19_1689974794425_0.07139116396694578"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.20":{"name":"@vulppi/intrest","version":"0.7.20","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"readme":"# Vulppi - IntREST\r\n\r\n[![npm version](https://badge.fury.io/js/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![npm downloads](https://img.shields.io/npm/dm/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![GitHub issues](https://img.shields.io/github/issues/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/issues)\r\n[![GitHub license](https://img.shields.io/github/license/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/blob/main/LICENSE)\r\n\r\n**Attention:** Please note that the current version of this framework is in the _alpha stage_ and is **not recommended** for production use. We strongly advise against using this version in live environments or critical systems.\r\n\r\nA more stable and feature-complete beta version of the framework will be released shortly, which will be better suited for production scenarios. We encourage you to wait for the beta release to ensure a more reliable and robust experience.\r\n\r\nIn the meantime, you are welcome to explore and experiment with the alpha version for testing and evaluation purposes. Your feedback and suggestions during this phase will be greatly appreciated as they can help us enhance and improve the framework before the final release.\r\n\r\nThank you for your understanding and support as we work towards delivering a high-quality framework for your programming needs.\r\n\r\n## Table of Contents\r\n\r\n1. [Introduction](#introduction)\r\n   1. [Key Features](#key-features)\r\n   1. [Future Features](#future-features)\r\n2. Documentation\r\n   1. [Getting Started](./docs/GET_START.md)\r\n   2. [Core Concepts](./docs/CORE_CONCEPTS.md)\r\n   3. [Usage Guide](./docs/USAGE_GUIDE.md)\r\n   4. [Configuration](./docs/CONFIGURATIONS.md)\r\n   5. [API Reference](./docs/API_REFERENCE.md)\r\n   6. [Troubleshooting](./docs/TROUBLESHOOTING.md)\r\n   7. [Best Practices and Tips](./docs/BEST_PRACTICES_AND_TIPS.md)\r\n3. [Contributing and Community](#contributing-and-community)\r\n4. [License](#license)\r\n5. [Contact](#contact)\r\n\r\n## Introduction\r\n\r\nIntREST is a versatile backend framework written in TypeScript, specifically tailored for Node.js (version >= 18.0.0). It provides a range of tools and utilities that streamline the development of RESTful APIs. By employing a file-system-based approach, IntREST simplifies route handling by mapping the application's routes to its file structure, enhancing code organization and promoting simplicity.\r\n\r\n### Key Features\r\n\r\n- **Thread Workers:** Divides requests into thread workers, optimizing resource utilization and improving overall performance.\r\n- **RESTful API Development:** Simplifies the process of building robust and efficient RESTful APIs.\r\n- **File-System Based Routing:** Routes within the application are determined by the file structure, ensuring a clean and intuitive approach to defining API endpoints.\r\n- **Performance and Scalability:** Enhances the performance and scalability of Node.js applications, accommodating high volumes of traffic seamlessly.\r\n- **CORS Handling:** Automatically manages Cross-Origin Resource Sharing (CORS) requests, simplifying integration with external clients.\r\n- **Request Parsing:** Automatically detects and parses JSON, URL-encoded and Multipart requests, eliminating the need for manual parsing.\r\n- **Response Type Detection:** Intelligently identifies the response type, supporting JSON, Buffer, String, or ReadableStream, facilitating integration with various client applications.\r\n\r\nWith IntREST, you can expedite your backend development, streamline code organization through file-system-based routing, and deliver high-performance RESTful APIs effortlessly. Let's delve into the details of utilizing this framework to harness its true potential.\r\n\r\n### Future Features\r\n\r\n- Easy handlers for Authentication and Authorization\r\n  - JWT\r\n  - OAuth\r\n  - Providers (Google, Facebook, Twitter, Github, etc.)\r\n  - FIDO2\r\n- Auto validation\r\n  - Request Validation\r\n  - Response Validation\r\n- Auto documentation\r\n  - OpenAPI\r\n- Swagger UI for testing\r\n- Performance monitoring\r\n- Logging\r\n- Error handling\r\n- HTTP2.0\r\n- Deployment\r\n  - Edge functions\r\n  - Serverless functions\r\n\r\n## Contributing and Community\r\n\r\nContributions are welcome! If you want to contribute to IntREST, please follow these steps:\r\n\r\n1. Fork the repository.\r\n2. Create a new branch for your feature or bug fix.\r\n3. Make your changes and commit them with descriptive messages.\r\n4. Push your changes to your forked repository.\r\n5. Submit a pull request to the main repository.\r\n6. And that's it! We will review your pull request as soon as possible.\r\n7. Thank you for contributing to IntREST! 🎉\r\n8. If you have any questions, feel free to contact us.\r\n9. If you want to contribute more, you can [Buy Us a Coffee](https://www.buymeacoffee.com/morbden) ☕️\r\n\r\n## License\r\n\r\nThis project is licensed under the [MIT License](https://github.com/vulppi-dev/intrest/blob/main/LICENSE).\r\n\r\n## Contact\r\n\r\nFor any inquiries or questions, you can reach out to the author:\r\n\r\nRenato Rodrigues  \r\nEmail: renato@vulppi.dev\r\n\r\n---\r\n\r\nThank you for using IntREST! We hope it helps you build powerful and scalable Node.js applications. If you have any feedback or suggestions, feel free to let us know.\r\n\r\nVisit the [Vulppi](https://vulppi.dev) organization site for more information about our projects and services.\r\n","readmeFilename":"README.md","gitHead":"c35ce103a7f48d19750e803b39ebc9931f1d750c","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.20","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-Ga/Pt2C/6WFtRNf4MI8ZJexXCn6aFMk8rRVlYxKYsApyXCaowY3hOiboAbXHotPq8TKwU08Splf0R7eo3D3kpw==","shasum":"2792f70b93d56ea0165212eb643e6e463cee999c","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.20.tgz","fileCount":18,"unpackedSize":132267,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDwxu52iNUQi+jzQFN9V6HBqptivpqHcDNqIQ1VroP4mAIhAIvJeYtseflNNk+lo5VQP6HIZ5Dvr//+TwQ3pduSxvXW"}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.20_1689975650534_0.005200532129303603"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.7.21":{"name":"@vulppi/intrest","version":"0.7.21","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"c35ce103a7f48d19750e803b39ebc9931f1d750c","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.7.21","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-s175qaEEtTM1/1xZ36wFD3xZ07Vwgz4GRH43Q4qu5uCsq0MYPjxom5wcBupqVELX5CndEtJ7aYGdK0lcWzv5VA==","shasum":"b69229824aef0419d630fde87ae43d48f4205260","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.7.21.tgz","fileCount":18,"unpackedSize":132174,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCWTxWdqFz/d9L7RXT2p+E42Vj8NaCc/+NVTB76CRKwiAIhAKjdxXPoVxw42x3cOoHP101JaheHVmL8sk/rUIIiuCpj"}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.7.21_1689976086730_0.6517696937001416"},"_hasShrinkwrap":false,"deprecated":"It's alpha version for tests"},"0.8.1":{"name":"@vulppi/intrest","version":"0.8.1","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","fast-xml-parser":"^4.2.6","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"4fe7344ce0e146ac9c2b141fdc9b25dc9c53f3ed","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.8.1","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-UBux3/l/BXfKeWc7CvqwMfa+mnIYClRtnqOM53YWKj9KZn6anFrUzmE1B4+rhwzNcmaDlacSxgjdNJmIk3fjGA==","shasum":"79153d8b7f1e7786c2ef2a372e95288b843ae21e","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.8.1.tgz","fileCount":19,"unpackedSize":153766,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD7uLEEUwmnJb5uZUAy1kBBCffBJf//G5UpWBFCBFNgTgIhANMnVLL82Dd6PrMgrKHfM+CK+zLrqyezewBmW6Ua9NRV"}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.8.1_1690215960678_0.7805231419726206"},"_hasShrinkwrap":false},"0.8.2":{"name":"@vulppi/intrest","version":"0.8.2","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.14","fast-xml-parser":"^4.2.6","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","range-parser":"^1.2.1","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.2","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1"},"gitHead":"50d9ee329fbafe82f44e3f9718a095d47f4e215c","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.8.2","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-tlUecVm0D4AFxVB24n/li9HcfsRuzWDjDNAI80L2OfxduCEIQTqM4De6P3R2ER3pX10/p5x3CQ+HoCaZpXokRg==","shasum":"2e1a6fa27997fd2f44c4d66ea46c6fb06b04df9d","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.8.2.tgz","fileCount":19,"unpackedSize":153801,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAnRKUbhvX4fscMYtpvSBKXbDrWBtew5+uRabQuLWYWdAiA95xtvtF+4Bzn054I4O3n2Jr5LpW3q9lGkQN2q3sC7TA=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.8.2_1690218678069_0.28752936355815883"},"_hasShrinkwrap":false},"0.8.3":{"name":"@vulppi/intrest","version":"0.8.3","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.16","fast-xml-parser":"^4.2.6","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","openapi-types":"^12.1.3","range-parser":"^1.2.1","ts-morph":"^19.0.0","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.4","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1","@types/node":"^20.4.4"},"gitHead":"bf706994852cca7637bb4488b2180dffbc0c7d4d","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.8.3","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-l+XielY/66kBBQXv54WY8OXtigsdNoQzGPPOKhy12IzSLE716KjCYokoNXo40xjCD+UQU53QLtE+ltbydJXgsA==","shasum":"361ccf77a878ac4ef91457192ade18a6de9fb233","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.8.3.tgz","fileCount":21,"unpackedSize":205053,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCYlfhrcmg3Umo+WdiumUp3NkW2Jha90t+Q45k979Y1bwIhAOBidWzkHkE1ztt/fONj0pZ7k77ih6UkNcJl7WyUM4oh"}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.8.3_1690373641282_0.44005195169301103"},"_hasShrinkwrap":false},"0.9.0":{"name":"@vulppi/intrest","version":"0.9.0","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.16","fast-xml-parser":"^4.2.6","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","openapi-types":"^12.1.3","range-parser":"^1.2.1","ts-morph":"^19.0.0","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.4","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/cookie":"^0.5.1","@types/node":"^20.4.4"},"gitHead":"5ba83a02ac3f09f71881107000ffc745463b9a5f","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.9.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-AejT7YgtybiyFW7c7Ktqe7+moMDNfJioAGhKnlbJyjcBfpYOPjo8mQORjGiempOgwXR22QKVWZsdLjU9Ud0cdg==","shasum":"712adaa869e19620b4740c75c02fc5d560021c65","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.9.0.tgz","fileCount":19,"unpackedSize":164693,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA/Ho1tWPr++8N233QIErOz7G5y79XZ6L2EM4Y6y/aibAiA/6fLW9hVjJ/RGydI8Fuun/xa5n/Jt2Dhr/zM48mSSig=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.9.0_1690491537589_0.6335348452300418"},"_hasShrinkwrap":false},"0.10.0":{"name":"@vulppi/intrest","version":"0.10.0","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@types/cookie":"^0.5.1","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.16","fast-xml-parser":"^4.2.6","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","openapi-types":"^12.1.3","range-parser":"^1.2.1","ts-morph":"^19.0.0","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.4","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/node":"^20.4.4"},"gitHead":"5ba83a02ac3f09f71881107000ffc745463b9a5f","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.10.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-cPiMK9V4Th3ZXYwn5xJ3kjeQtCUsLBC9WIXnVgyxL5HptBh/vGcUOUzjHPkroeNCay+y9gNJBj9J48tIZ53rew==","shasum":"e43f2f6b5243f42cdc8b7158fb3f32a57150ee0c","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.10.0.tgz","fileCount":20,"unpackedSize":177658,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICGXtt25H9/av9asyYCVWpgOkF5/YVKKwPn062Jq3ks+AiAeG/QzRH9Ww244IMyhF30M1KsdHXb4dnPfqX80z9v25g=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.10.0_1690632078821_0.5583618043529361"},"_hasShrinkwrap":false},"0.10.1":{"name":"@vulppi/intrest","version":"0.10.1","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@types/cookie":"^0.5.1","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.16","fast-xml-parser":"^4.2.6","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","openapi-types":"^12.1.3","range-parser":"^1.2.1","ts-morph":"^19.0.0","typescript":"^5.1.6","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/node":"^20.4.4","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/node":"^20.4.4"},"gitHead":"324626ec998d5fd3d4892882ea6d8dc5dc73ffdd","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.10.1","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-yGAcOXihhBW5JzTjI7XoOKhE2tgpmPyNlbqdx3zfusMi/7/kfvUrUeNC89CcZ9tL7HcJ/rHO7hKuuupGDKBMIA==","shasum":"8ddcb8d268ab7b1687eb00b12f938e3ccdbde7aa","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.10.1.tgz","fileCount":20,"unpackedSize":178482,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIElHrDZ6lWm8DeaJOZkSm7YE0m61sqY+be3o++KiG24TAiBacLwini++bqcjQpfXSlsvmTvO/6HGAJPiJfDXBZ4hHA=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.10.1_1690891795322_0.6976348770997072"},"_hasShrinkwrap":false},"0.11.0":{"name":"@vulppi/intrest","version":"0.11.0","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@types/cookie":"^0.5.1","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.16","fast-xml-parser":"^4.2.6","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.8","lodash":"^4.17.21","mime-types":"^2.1.35","openapi-types":"^12.1.3","range-parser":"^1.2.1","ts-morph":"^19.0.0","typescript":"^5.1.6","valibot":"^0.8.0","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.195","@types/mime-types":"^2.1.1","@types/node":"^20.4.4","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/node":"^20.4.4"},"gitHead":"92a87155d3a422d8e8699ae2433749c5923152ca","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.11.0","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-gKuD9gpV4NdQpMc2OOc2/RLG+t/WWpyBcSqmk+8aFfFH62WoyYF9hxEyG5RYlPEGt5OAVaaXPcurkTiDVTgFCw==","shasum":"7e0b1cd2e177fd3f2f0e4c9d3c6b662d4c2a6620","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.11.0.tgz","fileCount":24,"unpackedSize":298471,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICGrlHzaE2rZN1+edr+gbqruElMmJrA6Za/Et1V8kpbIAiEAxv1K/UjPbDpjyq9lwYnn3NbDsgCyaOFm+v9zROJaCBM="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.11.0_1691152890785_0.16319489108435659"},"_hasShrinkwrap":false,"deprecated":"Middleware not working"},"0.11.1":{"name":"@vulppi/intrest","version":"0.11.1","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@types/cookie":"^0.5.1","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.17","fast-xml-parser":"^4.2.7","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^8.2.6","lodash":"^4.17.21","mime-types":"^2.1.35","openapi-types":"^12.1.3","range-parser":"^1.2.1","ts-morph":"^19.0.0","typescript":"^5.1.6","valibot":"^0.8.0","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.196","@types/mime-types":"^2.1.1","@types/node":"^20.4.7","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/node":"^20.4.7"},"gitHead":"698dfee02a6a9eed34ca3d6a8a177db12cfcd492","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.11.1","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-FimvFZz67k5pgID7H0lJZXGjogW3st6rB0CU3qiBjOimdhfK5PQ90JryEZ6ebzF2ZIiGcwafp6JHNud7NaTmxA==","shasum":"ff93a61f77c8af509883dfbee35e21c7d49b2d9d","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.11.1.tgz","fileCount":24,"unpackedSize":298471,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDet0xY5wR/5eD5OvmzypHkjGqBep2YqKsyKsk0RF4u3gIgR+OZPQU9UUdva5v2NtjPX3ENGRmH3FyDVxUMp/8L5xE="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.11.1_1691153018583_0.2784160278203778"},"_hasShrinkwrap":false,"deprecated":"Middleware not working"},"0.11.2":{"name":"@vulppi/intrest","version":"0.11.2","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","require":"./dist/lib/index.cjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@types/cookie":"^0.5.1","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.17","fast-xml-parser":"^4.2.7","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^8.2.6","lodash":"^4.17.21","mime-types":"^2.1.35","openapi-types":"^12.1.3","range-parser":"^1.2.1","ts-morph":"^19.0.0","typescript":"^5.1.6","valibot":"^0.8.0","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.196","@types/mime-types":"^2.1.1","@types/node":"^20.4.7","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/node":"^20.4.7"},"gitHead":"698dfee02a6a9eed34ca3d6a8a177db12cfcd492","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.11.2","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-/ZdSIP6gHu5IQTbh+YOLqEksisX3YIYs1SUjH7xJfdOCn5jsWntC3uCH4BDBpmPZqlhqU3Dm+tDMsAY//kKg1Q==","shasum":"cb33b01d213fa53b193f59c6618a796d2d7fbfc0","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.11.2.tgz","fileCount":24,"unpackedSize":298495,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIG8ASTjSY3DsS8+jj4LlCnKHvzBkwX878tnaJM2gIPWCAiB1ARW4D+6tGSPXeiLfACC+XZhfi2a1Gl/k3/0CRPy+bg=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.11.2_1691155523713_0.722215985901209"},"_hasShrinkwrap":false},"0.12.1":{"name":"@vulppi/intrest","version":"0.12.1","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@types/cookie":"^0.5.1","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.17","fast-xml-parser":"^4.2.7","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^8.2.6","lodash":"^4.17.21","mime-types":"^2.1.35","openapi-types":"^12.1.3","range-parser":"^1.2.1","ts-morph":"^19.0.0","typescript":"^5.1.6","valibot":"^0.8.0","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.196","@types/mime-types":"^2.1.1","@types/node":"^20.4.7","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/node":"^20.4.7"},"gitHead":"5f90ac16339f4c0e2f6b6d43f985ea8f7cf7688c","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.12.1","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-kBV/xgq24JkjBGDZavrkFUa47wmGIXeOVNgCHfXmQNCUy6SdOzYHvMBeqfPBY5Ank/CHMNly/UDpvU1kgC2S6g==","shasum":"8c331366e08493d5d82cd2d693bf4fc88ec3bc3a","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.12.1.tgz","fileCount":25,"unpackedSize":367934,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCTqi6d5WLwPH50nDNCVjlEaCsCrPOkljJ6/HU3BmjG5AIgNYbEBUjHvXAjgxeMPFIJN0hL3dXGgmY6YM7UJwmLago="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.12.1_1691179164138_0.7719871945809424"},"_hasShrinkwrap":false},"0.12.2":{"name":"@vulppi/intrest","version":"0.12.2","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@types/cookie":"^0.5.1","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.17","fast-xml-parser":"^4.2.7","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^8.2.6","lodash":"^4.17.21","mime-types":"^2.1.35","openapi-types":"^12.1.3","range-parser":"^1.2.1","ts-morph":"^19.0.0","typescript":"^5.1.6","valibot":"^0.8.0","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.196","@types/mime-types":"^2.1.1","@types/node":"^20.4.7","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/node":"^20.4.7"},"gitHead":"80a583b60272fe0f53a76ea059e181a2d7152211","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.12.2","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-DcKKz06YmASfOBMNmKA7H1msxaLgGqcGvmv7JNgd03ao2/K+8zPg04ttEOIgnX3iYmzaKOHy/xiGrw/Hb/oETw==","shasum":"1d402e1dd1312b8fedc10712338581b988fc8840","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.12.2.tgz","fileCount":25,"unpackedSize":368573,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDnbJOPQVhPxCnBa4wJmau2YFP9hzpISduxDsndKQcVUQIhANUws2jO0VHQvKx9szzPaIIz5IYVyyB9MQ+b4VEjPjvr"}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.12.2_1691586715927_0.5071442645379944"},"_hasShrinkwrap":false},"0.12.3":{"name":"@vulppi/intrest","version":"0.12.3","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@types/cookie":"^0.5.1","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.17","fast-xml-parser":"^4.2.7","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^8.2.6","lodash":"^4.17.21","mime-types":"^2.1.35","openapi-types":"^12.1.3","range-parser":"^1.2.1","ts-morph":"^19.0.0","typescript":"^5.1.6","valibot":"^0.8.0","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.196","@types/mime-types":"^2.1.1","@types/node":"^20.4.7","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/node":"^20.4.7"},"gitHead":"7c797ba1e994dc0459ecb9b982353191f9b19763","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.12.3","_nodeVersion":"18.16.0","_npmVersion":"9.5.1","dist":{"integrity":"sha512-afEERf9tQFgBpiBUDdfHXuePd/abXLNRJj4q+fOEEAdxpJa49woed+XTiMTzVh5wF5QILkVBhRMrIIxUF8qkOA==","shasum":"baf44948f607750fed8fa262ff20b861d4038aea","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.12.3.tgz","fileCount":25,"unpackedSize":372224,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD+vGMHX5RC7UleX7s4ukznTjhsliP7464UlIZJTNz/PAIhAI0XWr+smuX+3D/S+19ffv6aILviUDDYcTT+U/vb4jOY"}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.12.3_1691590461579_0.3345627138779277"},"_hasShrinkwrap":false},"0.13.0":{"name":"@vulppi/intrest","version":"0.13.0","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@types/cookie":"^0.5.1","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.18.17","fast-xml-parser":"^4.2.7","get-tsconfig":"^4.6.2","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^8.2.6","lodash":"^4.17.21","mime-types":"^2.1.35","openapi-types":"^12.1.3","range-parser":"^1.2.1","ts-morph":"^19.0.0","typescript":"^5.1.6","valibot":"^0.8.0","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.196","@types/mime-types":"^2.1.1","@types/node":"^20.4.7","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/node":"^20.4.7"},"gitHead":"e7e39478fa13c654e7993dabcdd351f5c59c3a87","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.13.0","_nodeVersion":"18.17.1","_npmVersion":"9.6.7","dist":{"integrity":"sha512-JtdSQu4hSn9xBePqFudUqOgm1VgVTYLRROIXfV7i9bhaKotHkb421p75lxyEpjhpYKtBo5jkUJGtdFDVLkXbOQ==","shasum":"074491159cc072763fd407e6593e477717a18e38","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.13.0.tgz","fileCount":25,"unpackedSize":342075,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIBj8DgdSrehZQiPApI5CMkh7KK3xX6a3Ur8aPtCADf6jAiEAl/2RHabl9GAEBrtg6zypTJZOnOabUa9iONo+Bg7XvEk="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.13.0_1692216166741_0.9271546205120524"},"_hasShrinkwrap":false},"0.14.1":{"name":"@vulppi/intrest","version":"0.14.1","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@types/cookie":"^0.5.1","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.19.2","fast-xml-parser":"^4.2.7","get-tsconfig":"^4.7.0","glob":"^10.3.3","http-status-codes":"^2.2.0","inquirer":"^9.2.10","lodash":"^4.17.21","mime-types":"^2.1.35","openapi-types":"^12.1.3","range-parser":"^1.2.1","ts-morph":"^19.0.0","typescript":"^5.1.6","valibot":"^0.13.1","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.1","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.197","@types/mime-types":"^2.1.1","@types/node":"^20.5.4","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"peerDependencies":{"@types/node":"^20.5.4"},"gitHead":"38da24bd8146baddb6274a81f26cc85832bfbf55","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_id":"@vulppi/intrest@0.14.1","_nodeVersion":"18.17.1","_npmVersion":"9.6.7","dist":{"integrity":"sha512-8/EgXdIYQPn1VY502c3W8f1ye4lYqtqvTOZT+o3EFf8DCnUphmPccMyW9dkVrK1DPGnnwTjBanDYoh2TekbtBw==","shasum":"74f1fcb53fbfdd6275ac62bdfb4591689b55abac","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.14.1.tgz","fileCount":25,"unpackedSize":342430,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDbYoY2794huFXR2s3PGWdIzCfcAczj8mZlQF5P9nxcfAiBtYtHTnjp+3FZrLSkWGdNoMMLa63G4WlsmSw15vK6kkA=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.14.1_1692876957826_0.5157782308927659"},"_hasShrinkwrap":false},"0.15.0":{"name":"@vulppi/intrest","version":"0.15.0","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@types/cookie":"^0.5.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.19.2","fast-xml-parser":"^4.2.7","get-tsconfig":"^4.7.0","glob":"^10.3.4","http-status-codes":"^2.2.0","inquirer":"^9.2.10","lodash":"^4.17.21","mime-types":"^2.1.35","ms":"^2.1.3","range-parser":"^1.2.1","typescript":"^5.2.2","valibot":"^0.13.1","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.2","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.198","@types/mime-types":"^2.1.1","@types/ms":"^0.7.31","@types/node":"^20.5.9","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"_id":"@vulppi/intrest@0.15.0","gitHead":"40f77c694acc8975d0d03f2d93f9698d45f2e68e","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_nodeVersion":"20.6.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-h/qm2jk4v/gwo40m2ggQ7e5UT+8W1Qplvf0Rdz2qR6QPh5cCb4h5tqVvqPaVR0Fx8SJNrjycLSpgrG/WinoB8w==","shasum":"244490a6d4bb5324f37a994299b4d330b4ff2166","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.15.0.tgz","fileCount":25,"unpackedSize":345473,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCgM96XibvfqDoIWYsKLD6qkJ3gf2BqjEQi30FH8aJNBAIhAKRUGT4XMQ9a+tGjBXY9/Ms4uH2M2g02q31ApuWkqA11"}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.15.0_1694006216551_0.8365278668002065"},"_hasShrinkwrap":false},"0.15.1":{"name":"@vulppi/intrest","version":"0.15.1","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.19.3","fast-xml-parser":"^4.2.7","get-tsconfig":"^4.7.0","glob":"^10.3.4","http-status-codes":"^2.2.0","inquirer":"^9.2.11","lodash":"^4.17.21","mime-types":"^2.1.35","ms":"^2.1.3","range-parser":"^1.2.1","typescript":"^5.2.2","valibot":"^0.15.0","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/cookie":"^0.5.2","@types/concat-stream":"^2.0.0","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.198","@types/mime-types":"^2.1.1","@types/ms":"^0.7.31","@types/node":"^20.6.0","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"_id":"@vulppi/intrest@0.15.1","gitHead":"40f77c694acc8975d0d03f2d93f9698d45f2e68e","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_nodeVersion":"20.6.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-vcjdyd0HstwqhY5DcpShVJifnCFO4CU0KE6xpirbIcojqOlzo59GsMaeb0MrMQ3A5RXoQCnsEPflckm76vZtTw==","shasum":"8668fe778771f2d6efe28a50e0b7a199e8b6ab1a","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.15.1.tgz","fileCount":25,"unpackedSize":345523,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCID7/nU2FtjtUWttDIsqsmLwsNofxVrXvsvNZhA7e256LAiBdBvOlMc//8Ljkc5vHTeA81BAahAFo3bj9Ap1ZrxDfqA=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.15.1_1694701601358_0.3970101320756463"},"_hasShrinkwrap":false},"0.15.2":{"name":"@vulppi/intrest","version":"0.15.2","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.19.3","fast-xml-parser":"^4.2.7","get-tsconfig":"^4.7.0","glob":"^10.3.4","http-status-codes":"^2.2.0","inquirer":"^9.2.11","lodash":"^4.17.21","mime-types":"^2.1.35","ms":"^2.1.3","range-parser":"^1.2.1","typescript":"^5.2.2","valibot":"^0.15.0","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/cookie":"^0.5.2","@types/concat-stream":"^2.0.0","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.198","@types/mime-types":"^2.1.1","@types/ms":"^0.7.31","@types/node":"^20.6.0","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"_id":"@vulppi/intrest@0.15.2","gitHead":"15d6220faf27c1c15d816906b62ba62f092e4446","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_nodeVersion":"20.6.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-No4aQPsfTD6VwVo6Xfu1qm6QbLj1z/vMVmMrpX2TOx+QWeqUPZ5gGW9d/IKF7w2D9khMNeYyltjTzrdEf7SCEQ==","shasum":"94f0ec6480b0431dd13fe9944b0f14d6cfbf3c48","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.15.2.tgz","fileCount":25,"unpackedSize":345430,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDLe8K14BmatOjMLXrL8qQjqQvygR84v+xtm/iO0cf8+gIhAMPjZNkTItU6ic4ouyLOLQx6u4NMhrWNj9496gmSZuAl"}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.15.2_1694702244305_0.1736636136291827"},"_hasShrinkwrap":false},"0.15.3":{"name":"@vulppi/intrest","version":"0.15.3","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"nodemon --watch src -e js,cjs,mjs,ts,json scripts/build.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.19.3","fast-xml-parser":"^4.2.7","get-tsconfig":"^4.7.0","glob":"^10.3.4","http-status-codes":"^2.2.0","inquirer":"^9.2.11","lodash":"^4.17.21","mime-types":"^2.1.35","ms":"^2.1.3","range-parser":"^1.2.1","typescript":"^5.2.2","valibot":"^0.15.0","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/cookie":"^0.5.2","@types/concat-stream":"^2.0.0","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.198","@types/mime-types":"^2.1.1","@types/ms":"^0.7.31","@types/node":"^20.6.0","@types/range-parser":"^1.2.4","@types/yargs":"^17.0.24","nodemon":"^3.0.1","npm-run-all":"^4.1.5"},"_id":"@vulppi/intrest@0.15.3","gitHead":"df8973aee62e479a743b816747b9e67e01ea0695","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_nodeVersion":"20.6.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-CNjjOMoDFNcDVFyeoVkTS+vCjYGl2KrUeHNmFTVqXU9kjSOfFqg0QZqvU/Hm8ONAL8KEp0w7lq8KZBfswjNW8g==","shasum":"b9d8da4bc8c6a4301a682c1bbda8faa013fd40e4","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.15.3.tgz","fileCount":25,"unpackedSize":345866,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIAgwX6MCL2KEGMsIh9jUApQ1OMQ/G+caTsQ/RroqAbzOAiAtIClgp496YqD0mMzGYpWtpN51GcPK7qIOoFv7TmMieA=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.15.3_1694703268730_0.13487934950750935"},"_hasShrinkwrap":false},"0.17.0":{"name":"@vulppi/intrest","version":"0.17.0","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"node scripts/dev.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","chokidar":"^3.5.3","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.19.3","fast-xml-parser":"^4.2.7","get-tsconfig":"^4.7.0","glob":"^10.3.4","http-status-codes":"^2.2.0","inquirer":"^9.2.11","lodash":"^4.17.21","mime-types":"^2.1.35","ms":"^2.1.3","range-parser":"^1.2.1","set-cookie-parser":"^2.6.0","typescript":"^5.2.2","valibot":"^0.15.0","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.2","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.198","@types/mime-types":"^2.1.1","@types/ms":"^0.7.31","@types/node":"^20.6.1","@types/range-parser":"^1.2.4","@types/set-cookie-parser":"^2.4.3","@types/yargs":"^17.0.24","npm-run-all":"^4.1.5"},"_id":"@vulppi/intrest@0.17.0","gitHead":"de2b3289cb3618a48ed8e349a042d097627d96fe","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_nodeVersion":"20.6.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-1yA5IuSJxbkfYnfC5ZThBaFEcYfiPKN9xFJG8WJSpCU6ML8BNNmb4FkTe55L1/BoAliZJjs1lSNHcSGEN/pNwA==","shasum":"22af10b0caa83dea914b4ef36affbde4e21eb3a8","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.17.0.tgz","fileCount":25,"unpackedSize":354950,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA24PvrR4TSwnfFpZhWPsN4FjYi36xAwPfTcwlk63hEyAiBXF0aJertJ3bjSkg12WkdgkxYnWZP5BtVxko2LgOvupQ=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.17.0_1694869349661_0.5399075383584386"},"_hasShrinkwrap":false},"0.17.1":{"name":"@vulppi/intrest","version":"0.17.1","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"node scripts/dev.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","chokidar":"^3.5.3","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.19.3","fast-xml-parser":"^4.2.7","get-tsconfig":"^4.7.0","glob":"^10.3.4","http-status-codes":"^2.2.0","inquirer":"^9.2.11","lodash":"^4.17.21","mime-types":"^2.1.35","ms":"^2.1.3","range-parser":"^1.2.1","set-cookie-parser":"^2.6.0","typescript":"^5.2.2","valibot":"^0.15.0","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.2","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.198","@types/mime-types":"^2.1.1","@types/ms":"^0.7.31","@types/node":"^20.6.1","@types/range-parser":"^1.2.4","@types/set-cookie-parser":"^2.4.3","@types/yargs":"^17.0.24","npm-run-all":"^4.1.5"},"_id":"@vulppi/intrest@0.17.1","gitHead":"e5571431ff013a55a98aa81882c4c96e4abbc9e2","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_nodeVersion":"20.6.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-QZYRJRFwZpN3ZhfNHfdFqHm5XsSpw1MUG/yHAT3o/M3ZNcPeNjGxm0gKozOKU3ELW8l0Q270lZVcJrFUBZJDJA==","shasum":"ec7f477db2e31d1d439a28c7da056f106f053a6b","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.17.1.tgz","fileCount":25,"unpackedSize":359325,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDUytq7SRqwLbBBf/Eq107uTdRWazqWANltp0lsCchUUwIhANkmz4hp13DNCrq6SyTDEgeXNwQdG9cbmA5gA9Mn4/YT"}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.17.1_1694870558019_0.9502174898697058"},"_hasShrinkwrap":false},"0.17.2":{"name":"@vulppi/intrest","version":"0.17.2","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"node scripts/dev.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","chokidar":"^3.5.3","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.19.3","fast-xml-parser":"^4.2.7","get-tsconfig":"^4.7.0","glob":"^10.3.4","http-status-codes":"^2.2.0","inquirer":"^9.2.11","lodash":"^4.17.21","mime-types":"^2.1.35","ms":"^2.1.3","range-parser":"^1.2.1","set-cookie-parser":"^2.6.0","typescript":"^5.2.2","valibot":"^0.15.0","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.0","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.2","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.198","@types/mime-types":"^2.1.1","@types/ms":"^0.7.31","@types/node":"^20.6.1","@types/range-parser":"^1.2.4","@types/set-cookie-parser":"^2.4.3","@types/yargs":"^17.0.24","npm-run-all":"^4.1.5"},"_id":"@vulppi/intrest@0.17.2","gitHead":"e5571431ff013a55a98aa81882c4c96e4abbc9e2","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_nodeVersion":"20.6.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-OSpjsy6dgeSyFDtO1sajuxxn2v0rdehne021Wq55F4TOJG8Oe7tGLuoUSHgFI1CyMgnfbJnutlEMPpCyjeAs+w==","shasum":"70bc4c32fb8557797bfefdb289821d27b05336a0","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.17.2.tgz","fileCount":25,"unpackedSize":355229,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICE2DVqtwojNh/mpuJZClbnGFzs8IxtbjW3UiXJIPL0fAiEA/UQEJdCM3UrmvdJYf5vmaDbzN3or7rRnuynPXJMjgCM="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.17.2_1695156206570_0.9368424846514924"},"_hasShrinkwrap":false},"0.18.0":{"name":"@vulppi/intrest","version":"0.18.0","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"node scripts/dev.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","chokidar":"^3.5.3","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.19.4","fast-xml-parser":"^4.3.1","get-tsconfig":"^4.7.2","glob":"^10.3.10","http-status-codes":"^2.3.0","inquirer":"^9.2.11","lodash":"^4.17.21","mime-types":"^2.1.35","ms":"^2.1.3","range-parser":"^1.2.1","set-cookie-parser":"^2.6.0","typescript":"^5.2.2","valibot":"^0.17.1","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.1","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.2","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.199","@types/mime-types":"^2.1.2","@types/ms":"^0.7.32","@types/node":"^20.7.1","@types/range-parser":"^1.2.5","@types/set-cookie-parser":"^2.4.4","@types/yargs":"^17.0.25","npm-run-all":"^4.1.5"},"_id":"@vulppi/intrest@0.18.0","gitHead":"4b8c531c156023d1a42ec27d79f32eb6486379f1","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_nodeVersion":"20.6.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-1J3+DBFeOVO6vWNJSdE7R0j005r/3uYoHLOgQaH343a3r7+2+d/txZYkhP0o2a5+ww0iw3q6VgV6ug2QmJhMUg==","shasum":"f4f5e87bf547a3faa5b4866eb321ca9b949719b2","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.18.0.tgz","fileCount":25,"unpackedSize":355075,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGu7MU7V33QuELF9CRzQnQfFo0ff3wSxyWAHHT7aoZpoAiBV4aoiMU3rVOUKzlJjuGoP/76Pn6eeBoBVHipw5uC/dQ=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.18.0_1695898513289_0.6345755825509583"},"_hasShrinkwrap":false},"0.19.0":{"name":"@vulppi/intrest","version":"0.19.0","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"node scripts/dev.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","chokidar":"^3.5.3","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.19.4","fast-xml-parser":"^4.3.1","get-tsconfig":"^4.7.2","glob":"^10.3.10","http-status-codes":"^2.3.0","inquirer":"^9.2.11","lodash":"^4.17.21","mime-types":"^2.1.35","ms":"^2.1.3","range-parser":"^1.2.1","set-cookie-parser":"^2.6.0","typescript":"^5.2.2","valibot":"^0.17.1","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.1","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.2","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.199","@types/mime-types":"^2.1.2","@types/ms":"^0.7.32","@types/node":"^20.7.1","@types/range-parser":"^1.2.5","@types/set-cookie-parser":"^2.4.4","@types/yargs":"^17.0.25","npm-run-all":"^4.1.5"},"_id":"@vulppi/intrest@0.19.0","gitHead":"30e69988ea0e44267f2dbacc6630bee6ca2af799","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_nodeVersion":"20.6.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-KR41x6s1HY8xPn5ucO5sz5Y2oB2TY0PZ9+9VqMnUjdMce+sKryUwbTTjLqABaIc+n0iE/Wp3BFRJUYBh32Rywg==","shasum":"ab576b0074f43a2c9432e100ee5a1bcff1e9d5aa","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.19.0.tgz","fileCount":25,"unpackedSize":356331,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA1tp8gibl6YRv+j0gPh4ENaEJmKAFapcgDVZ4LpstlvAiAdUjN4F2D9NC0gqL5deQn4XaHl4nKPjBwHsgyGl27iew=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.19.0_1695903457133_0.0643354933974607"},"_hasShrinkwrap":false},"0.19.1":{"name":"@vulppi/intrest","version":"0.19.1","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"node scripts/dev.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","chokidar":"^3.5.3","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.19.4","fast-xml-parser":"^4.3.1","get-tsconfig":"^4.7.2","glob":"^10.3.10","http-status-codes":"^2.3.0","inquirer":"^9.2.11","lodash":"^4.17.21","mime-types":"^2.1.35","ms":"^2.1.3","range-parser":"^1.2.1","set-cookie-parser":"^2.6.0","typescript":"^5.2.2","valibot":"^0.17.1","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.1","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.2","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.199","@types/mime-types":"^2.1.2","@types/ms":"^0.7.32","@types/node":"^20.7.1","@types/range-parser":"^1.2.5","@types/set-cookie-parser":"^2.4.4","@types/yargs":"^17.0.25","npm-run-all":"^4.1.5"},"_id":"@vulppi/intrest@0.19.1","gitHead":"541e89eaf6aaa9f7069e534fa6d0aa0dfb3b86db","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_nodeVersion":"20.6.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-/4kdBddxEVm+nARLDLTKWkR7uQV3Yju7vy4hS1qs94lgwkPjO0ghhtJCIQVCH2MxdmwP616vYWAQq2lWkdAReA==","shasum":"a860f1c8c25180b9ca5880f1e4c47706a92eb412","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.19.1.tgz","fileCount":25,"unpackedSize":355845,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCFLEkLgSVRfhEoI5o6h2pEkYq8nQ1zALuvtamgaclsVQIgdDzVeimRdBadPUNO/h2Bc9Og8pXFl4ygP05wK7WjKyQ="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.19.1_1695905057188_0.20246356392481513"},"_hasShrinkwrap":false},"0.19.2":{"name":"@vulppi/intrest","version":"0.19.2","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs","irst":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"node scripts/dev.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","chokidar":"^3.5.3","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.19.4","fast-xml-parser":"^4.3.1","get-tsconfig":"^4.7.2","glob":"^10.3.10","http-status-codes":"^2.3.0","inquirer":"^9.2.11","lodash":"^4.17.21","mime-types":"^2.1.35","ms":"^2.1.3","range-parser":"^1.2.1","set-cookie-parser":"^2.6.0","typescript":"^5.2.2","valibot":"^0.17.1","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.1","@types/concat-stream":"^2.0.0","@types/cookie":"^0.5.2","@types/inquirer":"^9.0.3","@types/lodash":"^4.14.199","@types/mime-types":"^2.1.2","@types/ms":"^0.7.32","@types/node":"^20.7.1","@types/range-parser":"^1.2.5","@types/set-cookie-parser":"^2.4.4","@types/yargs":"^17.0.25","npm-run-all":"^4.1.5"},"_id":"@vulppi/intrest@0.19.2","gitHead":"3ea379ed22d673f9cfbff6984d8e3883e0346a66","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_nodeVersion":"20.6.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-Jqrbl4ar5zyTlcHpDegUcOctZmbocZlnCHb/0R1Ni80BGPNayHtiZJYKxXx0uiVfjjAzTt9dHVKqgs67JQWNSA==","shasum":"ba723f44e56d13ecd1302ec4ce7811af8b61a59d","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.19.2.tgz","fileCount":25,"unpackedSize":356312,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICckNUia1+LeIpGuFO8VAGj82FN7gpKyz8fHQp2vwbxIAiEArjY3NmhjZszN7nPLdI9gvOUCiXiswXImuE6I2KJvXGk="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.19.2_1696438937550_0.6174312825373891"},"_hasShrinkwrap":false},"0.19.3":{"name":"@vulppi/intrest","version":"0.19.3","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"node scripts/dev.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.3","busboy":"^1.6.0","chalk":"^5.3.0","chokidar":"^3.5.3","concat-stream":"^2.0.0","cookie":"^0.5.0","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.19.5","fast-xml-parser":"^4.3.2","get-tsconfig":"^4.7.2","glob":"^10.3.10","http-status-codes":"^2.3.0","inquirer":"^9.2.11","lodash":"^4.17.21","mime-types":"^2.1.35","ms":"^2.1.3","range-parser":"^1.2.1","set-cookie-parser":"^2.6.0","typescript":"^5.2.2","valibot":"^0.19.0","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.2","@types/concat-stream":"^2.0.1","@types/cookie":"^0.5.3","@types/inquirer":"^9.0.6","@types/lodash":"^4.14.200","@types/mime-types":"^2.1.3","@types/ms":"^0.7.33","@types/node":"^20.8.9","@types/range-parser":"^1.2.6","@types/set-cookie-parser":"^2.4.5","@types/yargs":"^17.0.29","npm-run-all":"^4.1.5"},"_id":"@vulppi/intrest@0.19.3","gitHead":"3ea379ed22d673f9cfbff6984d8e3883e0346a66","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_nodeVersion":"20.6.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-7fWiJJHUA1z5cWHfsPnFB95uIvyvkYt9k/yaGvLrCRsP5vRd2YM/ol1TQWVgpX3qsTo1bUa/mGlB9hFXyRzn4w==","shasum":"9d89c924bf45a2265c3f112addc812ade522f9ea","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.19.3.tgz","fileCount":25,"unpackedSize":356916,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCPAGLkJdxGPY3v9ry257LSUCPmLWWJwHBH1Ya1vjkF4QIhAI0s6gIfBewiHRQKP329HImJWeYEFgxBajlFDhkwZDdv"}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.19.3_1698321060404_0.23464906177950695"},"_hasShrinkwrap":false},"0.19.4":{"name":"@vulppi/intrest","version":"0.19.4","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"node scripts/dev.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.6.5","busboy":"^1.6.0","chalk":"^5.3.0","chokidar":"^3.5.3","concat-stream":"^2.0.0","cookie":"^0.6.0","devcert":"^1.2.2","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.19.5","fast-xml-parser":"^4.3.2","get-tsconfig":"^4.7.2","glob":"^10.3.10","http-status-codes":"^2.3.0","inquirer":"^9.2.11","lodash":"^4.17.21","mime-types":"^2.1.35","ms":"^2.1.3","range-parser":"^1.2.1","selfsigned":"^2.4.1","set-cookie-parser":"^2.6.0","typescript":"^5.2.2","valibot":"^0.20.1","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.2","@types/concat-stream":"^2.0.2","@types/cookie":"^0.5.4","@types/inquirer":"^9.0.6","@types/lodash":"^4.14.200","@types/mime-types":"^2.1.4","@types/ms":"^0.7.34","@types/node":"^20.8.10","@types/range-parser":"^1.2.6","@types/set-cookie-parser":"^2.4.5","@types/yargs":"^17.0.30","npm-run-all":"^4.1.5"},"_id":"@vulppi/intrest@0.19.4","gitHead":"f5f641dce77c6f2d5a8bc548481c236778df7be0","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_nodeVersion":"20.6.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-NJUOsPXTT12rZ9LkkpjLwCat/CNWAbMhEnrs70t8R8WEMDfqBBEW9TXUVh+3yWn5wyoBkVcQLgRfIGElB2OzLg==","shasum":"3c6b6a44944fb9896b212e5a44037dc65d95009c","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.19.4.tgz","fileCount":29,"unpackedSize":490804,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDDVyMjPPnqdsgbQ/6NO+hDYbNhcGVfON/S8JR6K+yelwIgYGvvN0QH0mjvADoWwJa0YFx2vzMPBNCBXUwl8FQTcYk="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.19.4_1699362714251_0.3230577898970386"},"_hasShrinkwrap":false},"0.19.5":{"name":"@vulppi/intrest","version":"0.19.5","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"node scripts/dev.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.7.1","busboy":"^1.6.0","chalk":"^5.3.0","chokidar":"^3.5.3","concat-stream":"^2.0.0","cookie":"^0.6.0","devcert":"^1.2.2","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.19.8","fast-xml-parser":"^4.3.2","get-tsconfig":"^4.7.2","glob":"^10.3.10","http-status-codes":"^2.3.0","inquirer":"^9.2.12","lodash":"^4.17.21","mime-types":"^2.1.35","ms":"^2.1.3","range-parser":"^1.2.1","selfsigned":"^2.4.1","set-cookie-parser":"^2.6.0","typescript":"^5.3.2","valibot":"^0.22.0","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.3","@types/concat-stream":"^2.0.3","@types/cookie":"^0.6.0","@types/inquirer":"^9.0.7","@types/lodash":"^4.14.202","@types/mime-types":"^2.1.4","@types/ms":"^0.7.34","@types/node":"^20.10.3","@types/range-parser":"^1.2.7","@types/set-cookie-parser":"^2.4.7","@types/yargs":"^17.0.32","npm-run-all":"^4.1.5"},"_id":"@vulppi/intrest@0.19.5","gitHead":"5d64ee3d23c8468048163b75335fdbaaadc2e7a3","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_nodeVersion":"20.6.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-tY8ZHojPEBywVotDqNFpVVV7pXSxGsq17rUVNh/sTSWs6Y8bay3eooMvT+aDXEj9b+0va42OPO+SQ8US4d38PQ==","shasum":"be5b0f2c2dd0e0b9245951f3602ad668dfc54b06","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.19.5.tgz","fileCount":29,"unpackedSize":490781,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDiCUzHmAzJdUhUFu9UtzXU4VdDwRN/sr3EZEp7QemNcwIgLTtChyDwwMqT0BsNVRhU1PzJ1j2YuWT5OhavyA4CTcM="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.19.5_1701795683256_0.5263167079603843"},"_hasShrinkwrap":false},"0.20.0":{"name":"@vulppi/intrest","version":"0.20.0","description":"Backend kit make by Vulppi","license":"MIT","author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"type":"module","repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"main":"dist/lib/index.mjs","module":"dist/lib/index.mjs","types":"types/index.d.ts","bin":{"intrest":"bin/index.mjs","irest":"bin/index.mjs"},"exports":{".":{"import":"./dist/lib/index.mjs","default":"./dist/lib/index.mjs"},"./types/*":{"types":"./types/*"}},"scripts":{"dev":"node scripts/dev.mjs","build":"node scripts/build.mjs","bench":"node scripts/bench.mjs","test":"run-s build test:start","test:start":"uvu -r dotenv-expand/config -r esbuild-register"},"dependencies":{"@esbuild-plugins/tsconfig-paths":"^0.1.2","@vulppi/toolbelt":"^0.7.1","busboy":"^1.6.0","chalk":"^5.3.0","chokidar":"^3.5.3","concat-stream":"^2.0.0","cookie":"^0.6.0","devcert":"^1.2.2","dotenv":"^16.3.1","dotenv-expand":"^10.0.0","esbuild":"^0.19.9","fast-xml-parser":"^4.3.2","get-tsconfig":"^4.7.2","glob":"^10.3.10","http-status-codes":"^2.3.0","inquirer":"^9.2.12","lodash":"^4.17.21","mime-types":"^2.1.35","ms":"^2.1.3","range-parser":"^1.2.1","selfsigned":"^2.4.1","set-cookie-parser":"^2.6.0","typescript":"^5.3.3","valibot":"^0.24.1","yargs":"^17.7.2"},"devDependencies":{"@types/busboy":"^1.5.3","@types/concat-stream":"^2.0.3","@types/cookie":"^0.6.0","@types/inquirer":"^9.0.7","@types/lodash":"^4.14.202","@types/mime-types":"^2.1.4","@types/ms":"^0.7.34","@types/node":"^20.10.4","@types/range-parser":"^1.2.7","@types/set-cookie-parser":"^2.4.7","@types/yargs":"^17.0.32","npm-run-all":"^4.1.5"},"_id":"@vulppi/intrest@0.20.0","gitHead":"3516659859bc8bb3a9f9fedb727d17217d08bdea","bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"homepage":"https://github.com/vulppi-dev/intrest#readme","_nodeVersion":"20.6.0","_npmVersion":"9.8.1","dist":{"integrity":"sha512-1XI7DbWVUIA4bz5fUAVGHvOV2TTYhPDguEnn1rxkgFbKgGzp5WyIB0KyXcOr4ngCWZ/1j9pGvBOaTvnUdZ0JOQ==","shasum":"3ea6152e1460aab942a8348c12cfc867b90ad5f9","tarball":"https://registry.npmjs.org/@vulppi/intrest/-/intrest-0.20.0.tgz","fileCount":29,"unpackedSize":494442,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBOxh13L8FuY+HtwmKn/ROt6jyEKiJEfbb5mL4kSTrPoAiA90oSGjjorbslTXN6Pq216bgKOgQBYqrBtvQHeDh4W2w=="}]},"_npmUser":{"name":"morbden","email":"morbden.dev@gmail.com"},"directories":{},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/intrest_0.20.0_1702466601286_0.49313433142100993"},"_hasShrinkwrap":false}},"time":{"created":"2023-07-14T15:21:17.869Z","0.4.0":"2023-07-14T15:21:18.172Z","modified":"2023-12-13T11:23:21.700Z","0.5.0":"2023-07-15T19:13:30.224Z","0.5.1":"2023-07-16T01:14:31.392Z","0.5.2":"2023-07-17T12:59:13.413Z","0.5.3":"2023-07-17T17:27:43.864Z","0.5.4":"2023-07-17T17:28:34.194Z","0.5.5":"2023-07-17T17:43:42.962Z","0.5.7":"2023-07-17T19:58:19.971Z","0.5.8":"2023-07-17T20:47:27.978Z","0.6.0":"2023-07-18T17:15:18.558Z","0.6.1":"2023-07-18T19:35:02.458Z","0.7.0":"2023-07-18T23:46:35.046Z","0.7.1":"2023-07-19T13:28:26.929Z","0.7.2":"2023-07-19T13:34:25.964Z","0.7.3":"2023-07-20T14:42:08.718Z","0.7.4":"2023-07-20T15:11:57.950Z","0.7.5":"2023-07-20T15:24:59.362Z","0.7.6":"2023-07-20T19:01:47.308Z","0.7.7":"2023-07-20T19:22:47.149Z","0.7.8":"2023-07-20T19:31:55.952Z","0.7.9":"2023-07-20T19:38:53.911Z","0.7.10":"2023-07-21T12:41:53.280Z","0.7.11":"2023-07-21T12:47:51.841Z","0.7.12":"2023-07-21T13:17:32.370Z","0.7.13":"2023-07-21T13:39:38.803Z","0.7.14":"2023-07-21T16:11:14.483Z","0.7.15":"2023-07-21T16:40:44.278Z","0.7.16":"2023-07-21T16:58:19.652Z","0.7.17":"2023-07-21T17:57:47.421Z","0.7.18":"2023-07-21T21:06:23.462Z","0.7.19":"2023-07-21T21:26:34.568Z","0.7.20":"2023-07-21T21:40:50.718Z","0.7.21":"2023-07-21T21:48:06.895Z","0.8.1":"2023-07-24T16:26:00.862Z","0.8.2":"2023-07-24T17:11:18.289Z","0.8.3":"2023-07-26T12:14:01.503Z","0.9.0":"2023-07-27T20:58:57.840Z","0.10.0":"2023-07-29T12:01:19.062Z","0.10.1":"2023-08-01T12:09:55.571Z","0.11.0":"2023-08-04T12:41:30.951Z","0.11.1":"2023-08-04T12:43:38.858Z","0.11.2":"2023-08-04T13:25:23.890Z","0.12.1":"2023-08-04T19:59:24.455Z","0.12.2":"2023-08-09T13:11:56.120Z","0.12.3":"2023-08-09T14:14:21.801Z","0.13.0":"2023-08-16T20:02:46.975Z","0.14.1":"2023-08-24T11:35:57.999Z","0.15.0":"2023-09-06T13:16:56.763Z","0.15.1":"2023-09-14T14:26:41.511Z","0.15.2":"2023-09-14T14:37:24.552Z","0.15.3":"2023-09-14T14:54:28.995Z","0.17.0":"2023-09-16T13:02:29.881Z","0.17.1":"2023-09-16T13:22:38.237Z","0.17.2":"2023-09-19T20:43:26.817Z","0.18.0":"2023-09-28T10:55:13.466Z","0.19.0":"2023-09-28T12:17:37.392Z","0.19.1":"2023-09-28T12:44:17.387Z","0.19.2":"2023-10-04T17:02:17.723Z","0.19.3":"2023-10-26T11:51:00.610Z","0.19.4":"2023-11-07T13:11:54.494Z","0.19.5":"2023-12-05T17:01:23.452Z","0.19.6":"2023-12-06T21:22:32.614Z","0.20.0":"2023-12-13T11:23:21.454Z"},"maintainers":[{"name":"morbden","email":"morbden.dev@gmail.com"}],"description":"Backend kit make by Vulppi","homepage":"https://github.com/vulppi-dev/intrest#readme","keywords":["adaptable","api-rest","api","automatic","backend","dotenv-expand","dotenv","esbuild","express","framework","http-status-codes","http-status","http","intrest","intelli","kit","rest-api","rest","restful","scalable","status-codes","stream-api","stream","streaming-api","streaming","streams","thread","threads","typescript","vulppi","worker-thread","worker-threads","worker","workers"],"repository":{"type":"git","url":"git+https://github.com/vulppi-dev/intrest.git"},"author":{"name":"Renato Rodrigues","email":"renato@vulppi.dev"},"bugs":{"url":"https://github.com/vulppi-dev/intrest/issues"},"license":"MIT","readme":"# Vulppi - IntREST - BETA\r\n\r\n[![npm version](https://badge.fury.io/js/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![npm downloads](https://img.shields.io/npm/dm/%40vulppi%2Fintrest.svg)](https://www.npmjs.com/package/@vulppi/intrest)\r\n[![GitHub issues](https://img.shields.io/github/issues/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/issues)\r\n[![GitHub license](https://img.shields.io/github/license/vulppi-dev/intrest.svg)](https://github.com/vulppi-dev/intrest/blob/main/LICENSE)\r\n\r\n**Attention:** Please note that the current version of this framework is in the **_beta stage_** and is **not recommended** for production use. We advise you to wait for the stable release before using it in a production environment.\r\n\r\nWe are working hard to deliver a stable and reliable framework for your backend development needs.\r\n\r\nIn the meantime, you are welcome to explore and experiment with the **_beta_** version for testing and evaluation purposes. Your feedback and suggestions during this phase will be greatly appreciated as they can help us enhance and improve the framework before the final release.\r\n\r\nThank you for your understanding and support as we work towards delivering a high-quality framework for your programming needs.\r\n\r\n## Table of Contents\r\n\r\n1. [Introduction](#introduction)\r\n   1. [Key Features](#key-features)\r\n   1. [Future Features](#future-features)\r\n2. [Documentation](#documentation)\r\n   1. [Getting Started](./docs/GET_START.md)\r\n   2. [Core Concepts](./docs/CORE_CONCEPTS.md)\r\n   3. [Usage Guide](./docs/USAGE_GUIDE.md)\r\n   4. [Configuration](./docs/CONFIGURATIONS.md)\r\n   5. [API Reference](./docs/API_REFERENCE.md)\r\n   6. [Troubleshooting](./docs/TROUBLESHOOTING.md)\r\n   7. [Best Practices and Tips](./docs/BEST_PRACTICES_AND_TIPS.md)\r\n3. [Contributing and Community](#contributing-and-community)\r\n4. [License](#license)\r\n5. [Contact](#contact)\r\n\r\n## Introduction\r\n\r\nIntREST is a versatile backend framework written in TypeScript, specifically tailored for Node.js (version >= 18.0.0). It provides a range of tools and utilities that streamline the development of RESTful APIs. By employing a file-system-based approach, IntREST simplifies route handling by mapping the application's routes to its file structure, enhancing code organization and promoting simplicity.\r\n\r\n### Key Features\r\n\r\n- **Thread Workers:** Divides requests into thread workers pool, optimizing resource utilization and improving overall performance.\r\n- **RESTful API Development:** Simplifies the process of building robust and efficient RESTful APIs.\r\n- **File-System Based Routing:** Routes within the application are determined by the file structure, ensuring a clean and intuitive approach to defining API endpoints.\r\n- **Performance and Scalability:** Enhances the performance and scalability of Node.js applications, accommodating high volumes of traffic seamlessly.\r\n- **CORS Handling:** Automatically manages Cross-Origin Resource Sharing (CORS) requests, simplifying integration with external clients.\r\n- **Request Parsing:** Automatically detects and parses JSON, XML, URL-encoded and Multipart requests, eliminating the need for manual parsing.\r\n- **Response Type Detection:** Intelligently identifies the response type, supporting JSON, Buffer, String, or ReadableStream, facilitating integration with various client applications.\r\n\r\nWith IntREST, you can expedite your backend development, streamline code organization through file-system-based routing, and deliver high-performance RESTful APIs effortlessly. Let's delve into the details of utilizing this framework to harness its true potential.\r\n\r\n### Future Features\r\n\r\n- Easy handlers for Authentication and Authorization\r\n  - JWT\r\n  - OAuth\r\n  - Providers (Google, Facebook, Twitter, Github, etc.)\r\n  - FIDO2\r\n- Auto validation\r\n  - Request Validation\r\n  - Response Validation\r\n- Auto documentation\r\n  - OpenAPI\r\n- Swagger UI for testing\r\n- Performance monitoring\r\n- Logging\r\n- Error handling\r\n- HTTP2.0\r\n- Deployment\r\n  - Edge functions\r\n  - Serverless functions\r\n\r\n## Documentation\r\n\r\n1. [Getting Started](./docs/GET_START.md)\r\n2. [Core Concepts](./docs/CORE_CONCEPTS.md)\r\n3. [Usage Guide](./docs/USAGE_GUIDE.md)\r\n4. [Configuration](./docs/CONFIGURATIONS.md)\r\n5. [API Reference](./docs/API_REFERENCE.md)\r\n6. [Troubleshooting](./docs/TROUBLESHOOTING.md)\r\n7. [Best Practices and Tips](./docs/BEST_PRACTICES_AND_TIPS.md)\r\n\r\n## Contributing and Community\r\n\r\nContributions are welcome! If you want to contribute to IntREST, please follow these steps:\r\n\r\n1. Fork the repository.\r\n2. Create a new branch for your feature or bug fix.\r\n3. Make your changes and commit them with descriptive messages.\r\n4. Push your changes to your forked repository.\r\n5. Submit a pull request to the main repository.\r\n6. And that's it! We will review your pull request as soon as possible.\r\n7. Thank you for contributing to IntREST! 🎉\r\n8. If you have any questions, feel free to contact us.\r\n9. If you want to contribute more, you can [Buy Us a Coffee](https://www.buymeacoffee.com/morbden) ☕️\r\n\r\n## License\r\n\r\nThis project is licensed under the [MIT License](https://github.com/vulppi-dev/intrest/blob/main/LICENSE).\r\n\r\n## Contact\r\n\r\nFor any inquiries or questions, you can reach out to the author:\r\n\r\nRenato Rodrigues  \r\nEmail: renato@vulppi.dev\r\n\r\n---\r\n\r\nThank you for using IntREST! We hope it helps you build powerful and scalable Node.js applications. If you have any feedback or suggestions, feel free to let us know.\r\n\r\nVisit the [Vulppi](https://vulppi.dev) organization site for more information about our projects and services.\r\n","readmeFilename":"README.md"}