{"_id":"@a-project-net/easy-express","_rev":"16-b764763532d2f4c4c2c88005d48ad236","time":{"created":"2023-01-03T11:54:51.290Z","1.0.0":"2023-01-02T21:17:19.346Z","modified":"2023-01-05T22:55:34.673Z","1.0.1":"2023-01-02T21:22:49.731Z","2.0.0":"2023-01-02T21:27:48.966Z","2.1.0":"2023-01-02T21:40:43.897Z","2.2.0":"2023-01-02T22:03:12.133Z","0.0.1":"2023-01-03T11:00:54.166Z","3.0.0":"2023-01-03T11:04:53.763Z","3.0.1":"2023-01-03T11:32:08.715Z","3.0.2":"2023-01-03T11:37:43.678Z","5.0.0":"2023-01-03T11:54:51.696Z","5.2.0":"2023-01-05T22:32:05.933Z","5.2.1":"2023-01-05T22:33:43.820Z","5.3.0":"2023-01-05T22:38:42.422Z","5.4.0":"2023-01-05T22:55:34.527Z"},"name":"@a-project-net/easy-express","dist-tags":{"latest":"5.4.0"},"versions":{"5.0.0":{"name":"@a-project-net/easy-express","version":"5.0.0","description":"Lightweight wrapper over express, allowing to create applications comfortably","main":"index.js","author":{"name":"APNET"},"keywords":["express","api","apnet","a-project-net"],"scripts":{"start":"node index.js","test":"node test.js"},"license":"MIT","dependencies":{"@types/express":"^4.17.15","body-parser":"^1.20.1","express":"^4.18.2"},"_id":"@a-project-net/easy-express@5.0.0","_nodeVersion":"19.0.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-LKqj3N6Ny+T1lwcJn+Muq3sQ5cFj5XpHr5mpKo1kHB4E8eAf3s5rcL0/m6o1jI9aZ8IaOQgIF+W/Bts4kX6n2Q==","shasum":"3431a899200e967a59a251dffdb72be9138cffb1","tarball":"https://registry.npmjs.org/@a-project-net/easy-express/-/easy-express-5.0.0.tgz","fileCount":10,"unpackedSize":10169,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDrcKOoNeXkgE5hCtgZHRxTNTqNrsep5svWkPoQglUJ9AIhAInR8YUKkBzFArouSg1t6qtndiy6pvvXkY1v9WzPEhxW"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjtBeLACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmrtog//dPRuC2w80ln9yEqPy8/qYfbveWEdr+M7eYJQwbgTXyFR89+r\r\nfqZDr4t8REjKilzDdY1D69Y+FavtOibE0MmgKWFvHNLjJbfxJXRL7C3oZ8yi\r\neokHVJddHdcNfbsVRvDjKRKrN+23tqelg9JCuHb23kt/61yr+4t2Z4x+RetP\r\nAorD8onEFOMHTXmy4Gjq8ytY0y1k7qtVB7urp/R5Vde5hPHE3KGb+HsTaWvn\r\nee+NsjD3Sf/ZxV9psV+T/6YJvomV+U1GLnnUw8PArC7/UjWNT0KPiwMVkT4R\r\n2Rsnv3HAcc7zuT6QPyLjVB2x/LrQRwQt2eVsQmUhN1IZjnadvLL7ZdFG/z9Q\r\n8XKa/3aP9U0kRQh2T3n+rN9mYftpO38Xk4putu5r8EDoEsL/TNobU4A7KPgC\r\n56XT0MDegOAT2YcjvdIz9Cradl7RU6oDLvu9z7/9mk8UOAm+T5n0WFi/5voz\r\nHkGCQZGBDeXlHSWrGK2FWVzZhs35DIqoux627K+oIdEBgEm/78OIxXqtmokc\r\nqFfOASzoxbwBE821mLw9qui5DSXq5u5u/+Dxl3XdKbL4bNhUxoXq1P/kKtiP\r\nRxkO9mdwIdYi6r2PKf3wh2P4IH/mVtO3md8YWZTJWUPrETiwQ997bHJzMY1s\r\n0RTjehtK5PYRaOwDv/dB2B1mzoY8kTE97OA=\r\n=eZoI\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"a-project-net","email":"apnet.alexzyr@gmail.com"},"directories":{},"maintainers":[{"name":"a-project-net","email":"apnet.alexzyr@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/easy-express_5.0.0_1672746891537_0.7016297560292446"},"_hasShrinkwrap":false},"5.2.0":{"name":"@a-project-net/easy-express","version":"5.2.0","description":"Lightweight wrapper over express, allowing to create applications comfortably","main":"index.js","author":{"name":"APNET"},"keywords":["express","api","apnet","a-project-net"],"scripts":{"start":"node index.js","test":"node test.js"},"license":"MIT","dependencies":{"@types/express":"^4.17.15","body-parser":"^1.20.1","express":"^4.18.2"},"_id":"@a-project-net/easy-express@5.2.0","_nodeVersion":"19.0.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-JaoK/D2G5CcCTidb5l+RxLpk4Y0R58d8GIMvPctYOhmJO5rwM7aBqTs6E3VdYYSiD5TZjgRBXH/nEk2Ejhd25Q==","shasum":"f78d839d2c0945261e3ec1a5b1df56d70949029e","tarball":"https://registry.npmjs.org/@a-project-net/easy-express/-/easy-express-5.2.0.tgz","fileCount":10,"unpackedSize":10465,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQClQ/QA2mjDo7gPGhKkq2ySudWuoqVSriZqP6O58ihYPAIgYhF+E1dqfa/htwrOenO2rLxwtXoADd4O36RCdzUlC8s="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjt0/lACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpCAhAAggruTCKr1e776JKiO6Q9VOkKxSAFJCMBqciLGBChAZhZeThV\r\nd+A7DL+CjnR0Q3qcMGd+PsVGoG1PiSXZBqQZpO5MbuQ40o4cQX1LFlJyKOod\r\n0lqMsbGDuSE7f68Qn/tW2lm7AH0Jd4r0rVAVCQkqYudXgzr3zEACoTpGQGeY\r\n/lbJPu11t8avFNet3+MJ/BcxXExGPeMdkntefsPM2c28oSLGyg8b6zPIaEbn\r\nAF3StgJplxI7xwCVMbAHuhJpg5k39eHBVxbDUThKBnH3CMwIGiXoLuq4Tj0w\r\n0gPDTPIbwDb5mtNaSn0P/XbF07z8huTG0Td8MvYFxzfaH7DCYUy4xD2ovGrF\r\nSGm+xZsRseuWkbK+6EdULOmeXGvUxeekqTmFWrIIPz5QymeKBwMUOQrYObJ1\r\nTh+DBnSNjCGHtRYiZJvR3707VVRQKJU+2Fs3D1KMYP5AtxlaLALbUR7J2sV0\r\n08O9oFvCqBnbE79pUBjrK1LOz6Zega0iX11NGrpTRVDl5OXRxLlV9rscqvFo\r\nx3fkSd4SCGidhzmx2ffqwD/XEqpAHns63qKuDyj69QippN46rV+/T7aAd8eq\r\nJL6HlqdBqo5XtenEyx5eFyBcV2aXDr9jed9kv0GRWn2IMlY11TgPalBhKhVW\r\nigtU8X0vjaAhkbBSdr4NnzYbIiwLszmFUuU=\r\n=qhHW\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"a-project-net","email":"apnet.alexzyr@gmail.com"},"directories":{},"maintainers":[{"name":"a-project-net","email":"apnet.alexzyr@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/easy-express_5.2.0_1672957925715_0.33178350943586743"},"_hasShrinkwrap":false},"5.2.1":{"name":"@a-project-net/easy-express","version":"5.2.1","description":"Lightweight wrapper over express, allowing to create applications comfortably","main":"index.js","author":{"name":"APNET"},"keywords":["express","api","apnet","a-project-net"],"scripts":{"start":"node index.js","test":"node test.js"},"license":"MIT","dependencies":{"@types/express":"^4.17.15","body-parser":"^1.20.1","express":"^4.18.2"},"_id":"@a-project-net/easy-express@5.2.1","_nodeVersion":"19.0.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-MdR++Wo1ZMsC4FVYb3vTf8+C91nfuVO7BSMfxzEqU65cn+welDG60iZO2Lzi+p6gKUPl2tkL4PQ5PoDpjeYkQw==","shasum":"28a27f6b67195ca051b401a3523f85895672cb42","tarball":"https://registry.npmjs.org/@a-project-net/easy-express/-/easy-express-5.2.1.tgz","fileCount":10,"unpackedSize":10464,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCGpQEVI3+Olo/oyMZwEM+Nwl/pfyL0khB5qsqQ55e9FwIhAIYbqKNkNAImgTtRvrG9Ut1PpSdrE428wYropFtLCsjw"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjt1BHACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoflA//SJdTxljKroRpSe2b8F6jFfmer4za1/LM4c6kpZTjM3kuHKgU\r\nkFjttMmXCKmDQueM3GSMdj1p41OkCmoaSJlS1EWDsF+WjVFf8W2DFI+7wj2R\r\n0nWbNArAcjHy62K3YOR8kughBMMkPu/GftEB0SrIr7G1rU5a+xbCjWcyxBLK\r\nCsSszryKFtulAVletzandK6tzQBiIxNPsGd0EJntSlLwpHsi8YNV8sIqP1Kh\r\n6KDwYcwF1ahYHaXyzS7Xw3aVH0nNrS28cmbame+XWJWSwCBegeCU5XjHm9uH\r\n4tAlViSzWJxfFKrCQIIK/IsBkmo0EL2Cn77oaizjxKSPpubCoBgMW+4TxJZy\r\nr+CGCBTwe377rTq3GFq7C3zYawSB0VQgDKkmsueJZyugbCR0CPSkVXdg4zSP\r\n1l5tIEfUvWXY5YvHSQhZrKlaq2B6P0Q9Gkakf0gPCTO/f1kcZrrWoc/7zDO9\r\nS/Wop+4Yq4pLmhfXQRFptOLke68uZzO6mIB80h8Vs4Fk+eh+oh4qnOQVPGOy\r\nL4v7Tql8sC9yxNxu3Sn2+J4MINkLlNt4gsJlr21cMqb821fRGMX2t0rCocZo\r\nzgobQOU1OnRvf8guUDKb0L+QFkV9dIacWPib/PauYPpf6dFXBf02hTCPNL0M\r\nLwCxVvg0VrsXLkEjyDgh06+5K3Fjx1Yw8Ek=\r\n=aqsk\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"a-project-net","email":"apnet.alexzyr@gmail.com"},"directories":{},"maintainers":[{"name":"a-project-net","email":"apnet.alexzyr@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/easy-express_5.2.1_1672958023605_0.5420397712607379"},"_hasShrinkwrap":false},"5.3.0":{"name":"@a-project-net/easy-express","version":"5.3.0","description":"Lightweight wrapper over express, allowing to create applications comfortably","main":"index.js","author":{"name":"APNET"},"keywords":["express","api","apnet","a-project-net"],"scripts":{"start":"node index.js","test":"node test.js"},"license":"MIT","dependencies":{"@types/express":"^4.17.15","body-parser":"^1.20.1","express":"^4.18.2"},"_id":"@a-project-net/easy-express@5.3.0","_nodeVersion":"19.0.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-3d8AFmyf+k6C0jPd1kOM3GpN0liTdXENZjTr+gyp9BRyN2PAa7HVXePSq4vlV/JVjUG4fRKk4HY4AhstwrJAxg==","shasum":"09cc32351bb5a0d8bccbcdb2c2f14227017e987a","tarball":"https://registry.npmjs.org/@a-project-net/easy-express/-/easy-express-5.3.0.tgz","fileCount":10,"unpackedSize":10269,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCAGicLZbrIc1QHwvQ6HWUk9artQmo2AyuoVRynCkulXwIhAOgWZUJAWx808HJ8JutxlJN27mhWmPyGtXbDnyYeV8VY"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjt1FyACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoOGA//fZnbd1Q8+Hhjv7Fu4t04a3CU347TWt9JQ9g7SYtKgUqSRvqo\r\nzge8WQ98Z7DznA4iI4d53GXkjay04zCyTqs1QZALRRFnQqmsYZ7lEbwaV+7q\r\nx9oiI0ubEVdbYZ+guYfog5ZiuplAcOT8VQ3efZC6tbZeCQzZPIuE3toyrKG0\r\nmFo8XdvxW1Silfpy/fD3D91YIcZ0x/y93MywM45chIbQ1Lcnxg7KgIrLdoEa\r\nY0nZk8jyQgpl5kHT01/e0Ydarfa5jkddOrskzOqx30aDb0cL1oob70xM/Mf2\r\nmQ7VXYBsLviu9EqjqOcKL2VQ14nvyuO8pnnJVhv0FxprMs67C3+4U6H/HIK9\r\nCQ0S854RCfiE8nuHntbfMFMwgJ5ShabjZ2bb9EeDAKZiQMFh4DOMfIyLAKOx\r\nSoZlkWH0zLWJKCUmdq1TEIZiEAHO64HWXTZv5gS7D0RhuzeG+UctzJeBu4rU\r\ns6YV6vb3AWijc5SSBFLLrcy+rNAjH/FAXaxMyP8h57Z929ZRKMsmoFUOqd49\r\nxQXYuSTMbf461sguueg/VUOHo1zEVP9XiRpssVxstr0+nyraXkbNGsHEKFTs\r\nuKAySW1ADu62AxG4wI+BNoYpi13U+FDOp91e2i5c2tcZ7yFt3lOQKmY4vqM3\r\n6IGuLjWUxWJqVqEHij63RuSNBeKJsG/Giu8=\r\n=XiZP\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"a-project-net","email":"apnet.alexzyr@gmail.com"},"directories":{},"maintainers":[{"name":"a-project-net","email":"apnet.alexzyr@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/easy-express_5.3.0_1672958322265_0.5204821637689503"},"_hasShrinkwrap":false},"5.4.0":{"name":"@a-project-net/easy-express","version":"5.4.0","description":"Lightweight wrapper over express, allowing to create applications comfortably","main":"index.js","author":{"name":"APNET"},"keywords":["express","api","apnet","a-project-net"],"scripts":{"start":"node index.js","test":"node test.js"},"license":"MIT","dependencies":{"@types/express":"^4.17.15","body-parser":"^1.20.1","cookie-parser":"^1.4.6","express":"^4.18.2"},"_id":"@a-project-net/easy-express@5.4.0","_nodeVersion":"19.0.0","_npmVersion":"8.19.2","dist":{"integrity":"sha512-1iVAgO6baMTG7yJZo9mJZJvED3T6sdhrNx9d08C7ZYGO2KUBN1rNK4Zm4RaFwmbiCrbzW1emv0+qr2fRcgrznQ==","shasum":"d448e5cd000ae702aeb47fc1446306bc42462473","tarball":"https://registry.npmjs.org/@a-project-net/easy-express/-/easy-express-5.4.0.tgz","fileCount":10,"unpackedSize":10482,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIApZvwBstbG7KiBsbz9c0ja0H440cUnYiYsGt05TbQ9/AiEAk1LGJEEMfYumFHFEBpcHV9eHPXp37N4mHw1p3WJiZ/0="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjt1VmACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmqs0hAAiLy8wez+JQesNWR6AVjRkkgkNZFRNfynxIaIloiQ93V4KFR+\r\nGDT59aiwow35MxUqgHhR16YeBY4Yk7YlszsNBa2eaEu6RSRtTck4cva/u2kF\r\nRVqSEor08BuupiJgpPaGtvOuUOcLQm9W2FRNYZ3bXayum4049aeq8knLs0lS\r\nO6SvdZfE3+2NFig6EEA6cu9+oHXmXk/DTn+WHsgY+UQ08Ceg6ddZxp3sB9Xo\r\n2XFd/VfAuRcerFjEQKtz1JKVAn69DG7lCbPlLuygtIwFIxYrta4ocq103SlZ\r\nuWLgqX5YeCGuA7stmovjBWT89blUpiSL1YXjJjqaMVVi6SNQqQVkqEHUTA/q\r\neALahlxkcoOAB4n/+DFvg7580AZuzE45mIShheFwk+XkDoLGtmIlgIvF2o4B\r\nZMxY66/HjhrW7DYq2XUN98RR+GlNnjOERUIbel7gVa6cEAq/MzVVMU/bDkna\r\n8VnOWn+8uhFxTxU5cClj/PM2Bii3VtbPOpOj3/qr7IZN8rf8TaK+HTmmPQr/\r\nRz6D/hyToXTYgzPzPPB17bb4WXimF2nlJCm0AyD5ecFAAKbEjHXyYGaoYUUj\r\n4/jig1w+acg2pIT1x18pCMt5SbzbdgMRNjtyebW3W9YtGCKoR0p55gL/N4Gi\r\nOSklQVTUo00FlfZ8ehdaRXxdebRRULmU5iY=\r\n=XBam\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"a-project-net","email":"apnet.alexzyr@gmail.com"},"directories":{},"maintainers":[{"name":"a-project-net","email":"apnet.alexzyr@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/easy-express_5.4.0_1672959334378_0.1265389006550086"},"_hasShrinkwrap":false}},"maintainers":[{"name":"a-project-net","email":"apnet.alexzyr@gmail.com"}],"description":"Lightweight wrapper over express, allowing to create applications comfortably","keywords":["express","api","apnet","a-project-net"],"author":{"name":"APNET"},"license":"MIT","readme":"# APNET Easy-Express\n## _Lightweight wrapper over express, allowing to create applications comfortably_\n\nWarning! The project is actively under development. Some features may not work!\n\n## Features\n\n- Quick creation of an application with basic features\n- BodyParser out of the box\n- CookieParser out of the box\n- Handy log system\n- Easy creation of large APIs\n\n## Installation\n```sh\nnpm i @a-project-net/easy-express\n```\n\n```sh\nyarn add @a-project-net/easy-express\n```\n\n## Quick Start\n__app.js__\n```js\nconst { EasyExpressApplication } = require('@a-project-net/easy-express');\n//creating new app instance\nconst app = new EasyExpressApplication;\n\n//starting server on port\napp.start(3000);\n```\n\n## Routing\n\n__router.js__\n```js\nconst { Listener } = require('@a-project-net/easy-express');\n\nmodule.exports = [\n    // endpoint\n    new Listener({\n        path: 'welcome',\n        //method: get, post or parent(default)\n        type: 'get',\n        //endpoint listeners\n        listener: ({ res }) => {\n            res.send('hey!');\n        },\n    }),\n    new Listener({\n        path: 'user',\n        //default method: parent\n\n        //child endpoints\n        listeners: [\n            new Listener({\n                path: '/',\n                type: 'get',\n                listener: ({ res }) => {\n                    return res.send('...');\n                }\n            }),\n            new Listener({\n                path: 'setUsername',\n                type: 'post',\n                listener: ({ body, log, res }) => {\n                    log(body);\n                    return res.send('done');\n                }\n            }),\n        ]\n    })\n];\n```\n__app.js__\n```js\nconst { EasyExpressApplication } = require('@a-project-net/easy-express');\n\nconst app = new EasyExpressApplication;\n\n//setup router\napp.setupAPIListener('api', require('./router'));\n\napp.start(3000);\n```\n\n## Listener\n```js\nnew Listener({\n    //path of endpoint\n    path: 'welcome',\n    //method (post, get)\n    type: 'get',\n    //handler\n    listener: ({ \n        //express response\n        res, \n        //express request\n        req, \n        //logger function\n        log, \n        //body, from body-parser\n        body,\n        //cookies, from request\n        cookies,\n        //for middlewares\n        next,\n    }) => {\n        //your code\n        return res.send('welcome');\n    }\n})\n```\n\n## Logger\n```js\n\n//displays request method, endpoint path and your message. must be provided to endpoint handler!\nlog('my message')\n```\n\n## Utils\n__logging additions__\n```js\n//some colors for logs :)\nconst { logger: { colors } } = require('@a-project-net/easy-express');\n//e.g. red text\nlog(colors.FgRed + 'red message!');\n```\n\n__how to get express app instance__\n```js\nconst { EasyExpressApplication } = require('@a-project-net/easy-express');\n//creating new app instance\nconst app = new EasyExpressApplication;\n\n//getting instance\napp.getInstance().use(something...)\n\n//starting server on port\napp.start(3000);\n```\n\n## License\n\nMIT","readmeFilename":"readme.md"}