{"_id":"@101-ways/core-mongo","name":"@101-ways/core-mongo","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@101-ways/core-mongo","description":"Accelerator Mongo package.","version":"0.1.0","main":"./dist/index.js","types":"./dist/index.d.ts","dependencies":{"mongodb":"^6.5.0","tslib":"^2.6.2","@101-ways/core":"^0.2.0"},"devDependencies":{"mongodb-memory-server":"^9.2.0"},"scripts":{"build":"make","test":"make test"},"_id":"@101-ways/core-mongo@0.1.0","_integrity":"sha512-uo3y4Ke4En4WqvnlmSbQQQx6Jws8It1/A3WNS9YOqOrmdAHT3sK5+Rz74MrsD129VIO1/CDN320b1ra6Er/SUw==","_resolved":"/tmp/e32a5c8b80647f542422f71fa3842bb0/101-ways-core-mongo-0.1.0.tgz","_from":"file:101-ways-core-mongo-0.1.0.tgz","_nodeVersion":"18.20.2","_npmVersion":"10.5.0","dist":{"integrity":"sha512-uo3y4Ke4En4WqvnlmSbQQQx6Jws8It1/A3WNS9YOqOrmdAHT3sK5+Rz74MrsD129VIO1/CDN320b1ra6Er/SUw==","shasum":"7bcb67f2d8ad93224d788e572d7eda3ba9894a14","tarball":"https://registry.npmjs.org/@101-ways/core-mongo/-/core-mongo-0.1.0.tgz","fileCount":18,"unpackedSize":11908,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCjA6gOtbVcjH4kmbUtgGBlbgEdjt0++FXOa8HytQ7OMwIhALkPYDEX6+AoTxf4W4PPsxm+K+9I7P1QCqKcXzLUuI5r"}]},"_npmUser":{"name":"borisovg","email":"git@gir.me.uk"},"directories":{},"maintainers":[{"name":"borisovg","email":"git@gir.me.uk"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/core-mongo_0.1.0_1714487223325_0.541748083366997"},"_hasShrinkwrap":false}},"time":{"created":"2024-04-30T14:27:03.115Z","0.1.0":"2024-04-30T14:27:03.513Z","modified":"2024-04-30T14:27:03.875Z"},"maintainers":[{"name":"borisovg","email":"git@gir.me.uk"}],"description":"Accelerator Mongo package.","readme":"# @101-ways/core-mongo\n\n[MongoDb](https://www.mongodb.com/) client accelerator package. It uses the Service Registry pattern to create a single object with APIs.\n\n## Features\n\n- starts server on port 8000 by default\n- debug logging with tracing metadata\n\n## Usage\n\n```ts\nimport { load } from '@101-ways/core-mongo';\n\nload([`${__dirname}/modules`]).then(async (sr) => {\n  const collection = sr.mongo.db().collection('test');\n  const list = await collection.find({}).toArray();\n  console.log(list);\n  sr.core.shutdown.run();\n});\n```\n\nBasic example for creating a child package:\n\n```ts\nimport { load as loadCore, type Registry } from '@101-ways/core-mongo';\n\nexport type { Registry };\n\nexport async function load<T extends Registry>(paths: string[] = [], sr?: T) {\n  return loadCore([`${__dirname}/modules`, ...paths], sr);\n}\n```\n\n## Service Registry API\n\nEverything in [@101-ways/core](../core/README.md) and\n\n- sr.config - configuration (see [./src/modules/config.ts](./src/modules/config.ts))\n- sr.mongo - MongoDB client (see https://mongodb.github.io/node-mongodb-native/6.5/classes/MongoClient.html)\n\n## Environment Variables\n\nEverything in [@101-ways/core](../core/README.md) and\n\n- MONGO_URI='mongodb://localhost:27017/test' - Mongo connection URI\n","readmeFilename":"README.md"}