{"_id":"@bonifaceebuka/core-backend","_rev":"2-df15fb46de765f59a59553bb21c064ca","name":"@bonifaceebuka/core-backend","dist-tags":{"latest":"1.0.2"},"versions":{"1.0.0":{"name":"@bonifaceebuka/core-backend","version":"1.0.0","keywords":[],"author":"","license":"ISC","_id":"@bonifaceebuka/core-backend@1.0.0","maintainers":[{"name":"bonifaceebuka","email":"boniface.ebuka@gmail.com"}],"dist":{"shasum":"ed044db1c84794d1aed91858913fef6801796964","tarball":"https://registry.npmjs.org/@bonifaceebuka/core-backend/-/core-backend-1.0.0.tgz","fileCount":488,"integrity":"sha512-ILtnhWvfbmE7WS8XfIe3YQtjAsrjrCzatnSaavOn1or+51kqxe+AzeG+SzGaXx3j/EwC4Vt5YgFLSlZae21ESA==","signatures":[{"sig":"MEYCIQC7lKjRhhTKpmuFo4AtZdgHGnGdxir0SexiRLBTsRfFagIhAMCUugY33SUbsoIAyQCqvMN7OqPn//OOFcdo7ahOG1NT","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":854715},"main":"dist/index.js","types":"dist/index.d.ts","gitHead":"e18f4c116f74c09b9c50dfcb50523094982ee27d","scripts":{"lint":"eslint src/**/*.ts","test":"jest","build":"tsc && echo 'Compiled TS'","prepare":"npm run build","typeorm":"ts-node ./node_modules/typeorm/cli.js","typeorm:ds":"npm run typeorm -- -d ./src/common/configs/postgres.ts","migration:run":"npm run typeorm:ds -- migration:run","prepublishOnly":"npm run build","migration:create":"npm run typeorm migration:create","migration:revert":"npm run typeorm:ds -- migration:revert","migration:generate":"npm run typeorm:ds -- migration:generate"},"_npmUser":{"name":"bonifaceebuka","email":"boniface.ebuka@gmail.com"},"_npmVersion":"10.8.2","description":"Auri spectrum's backend core","directories":{},"_nodeVersion":"20.19.5","dependencies":{"pg":"^8.16.0","tsoa":"^6.6.0","uuid":"^11.1.0","axios":"^1.9.0","bullmq":"^5.53.0","dotenv":"^16.4.7","moment":"^2.30.1","multer":"^2.0.2","openai":"^4.95.0","stripe":"^20.1.0","express":"^4.21.2","ioredis":"^5.6.1","typeorm":"^0.3.21","winston":"^3.17.0","bcryptjs":"^3.0.2","raw-body":"^3.0.0","cloudinary":"^2.7.0","node-fetch":"^3.3.2","nodemailer":"^6.10.0","cross-fetch":"^4.1.0","streamifier":"^0.1.1","heic-convert":"^2.1.0","jsonwebtoken":"^9.0.2","@sendgrid/mail":"^8.1.6","class-validator":"^0.14.2","class-transformer":"^0.5.1","express-handlebars":"^8.0.3","winston-daily-rotate-file":"^5.0.0"},"_hasShrinkwrap":false,"devDependencies":{"typedi":"^0.10.0","nodemon":"^3.1.9","ts-node":"^10.9.2","barrelsby":"^2.8.1","typescript":"^5.8.2","@types/cors":"^2.8.17","@types/node":"^22.13.10","@types/express":"^5.0.0","tsconfig-paths":"^4.2.0","@types/socket.io":"^3.0.2","@types/nodemailer":"^6.4.17","@types/streamifier":"^0.1.2","@types/heic-convert":"^2.1.0","@types/jsonwebtoken":"^9.0.9","@types/module-alias":"^2.0.4"},"_npmOperationalInternal":{"tmp":"tmp/core-backend_1.0.0_1772114645786_0.8306931407367124","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@bonifaceebuka/core-backend","version":"1.0.2","description":"Auri spectrum's backend core","main":"dist/index.js","types":"dist/index.d.ts","scripts":{"test":"jest","lint":"eslint src/**/*.ts","typeorm":"ts-node ./node_modules/typeorm/cli.js","typeorm:ds":"npm run typeorm -- -d ./src/common/configs/postgres.ts","migration:create":"npm run typeorm migration:create","migration:generate":"npm run typeorm:ds -- migration:generate","migration:run":"npm run typeorm:ds -- migration:run","migration:revert":"npm run typeorm:ds -- migration:revert","build":"tsc && echo 'Compiled TS'","prepare":"npm run build","prepublishOnly":"npm run build"},"keywords":[],"author":"","license":"ISC","dependencies":{"bcryptjs":"^3.0.2","bullmq":"^5.53.0","axios":"^1.9.0","class-transformer":"^0.5.1","class-validator":"^0.14.2","cloudinary":"^2.7.0","cross-fetch":"^4.1.0","dotenv":"^16.4.7","express-handlebars":"^8.0.3","express":"^4.21.2","heic-convert":"^2.1.0","ioredis":"^5.6.1","jsonwebtoken":"^9.0.2","moment":"^2.30.1","multer":"^2.0.2","node-fetch":"^3.3.2","nodemailer":"^6.10.0","openai":"^4.95.0","pg":"^8.16.0","@sendgrid/mail":"^8.1.6","raw-body":"^3.0.0","streamifier":"^0.1.1","stripe":"^20.1.0","tsoa":"^6.6.0","typeorm":"^0.3.21","uuid":"^11.1.0","winston":"^3.17.0","winston-daily-rotate-file":"^5.0.0"},"devDependencies":{"@types/cors":"^2.8.17","@types/express":"^5.0.0","@types/heic-convert":"^2.1.0","@types/jsonwebtoken":"^9.0.9","@types/module-alias":"^2.0.4","@types/node":"^22.13.10","@types/nodemailer":"^6.4.17","@types/streamifier":"^0.1.2","@types/socket.io":"^3.0.2","barrelsby":"^2.8.1","nodemon":"^3.1.9","ts-node":"^10.9.2","tsconfig-paths":"^4.2.0","typedi":"^0.10.0","typescript":"^5.8.2"},"_id":"@bonifaceebuka/core-backend@1.0.2","gitHead":"de3db10996aa5047aa70ee74f6795bcd071a9112","_nodeVersion":"20.19.5","_npmVersion":"10.8.2","dist":{"integrity":"sha512-0lERagzGUwzvaXDxBpeK7/RyYs+CBV9FPZOQ4Uv3K7XhlWSPdruVRy8IomFNUmTn+z8GmQQk8LZpUqIKZnxNbA==","shasum":"e26097e7c2da5a64f9d11ac667c57f35842f3f3b","tarball":"https://registry.npmjs.org/@bonifaceebuka/core-backend/-/core-backend-1.0.2.tgz","fileCount":488,"unpackedSize":857268,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBRW1hq69C2EebVJ5X6X6dIBTrBFrfArRjMCgC9GPLtyAiEAwR6ENN1ZPg30zy1fB8mwlDfgnw2zLv80dYMrvLbSR5s="}]},"_npmUser":{"name":"bonifaceebuka","email":"boniface.ebuka@gmail.com"},"directories":{},"maintainers":[{"name":"bonifaceebuka","email":"boniface.ebuka@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/core-backend_1.0.2_1772122308533_0.5927761427780416"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-26T14:04:05.689Z","modified":"2026-02-26T16:11:48.839Z","1.0.0":"2026-02-26T14:04:05.975Z","1.0.2":"2026-02-26T16:11:48.731Z"},"license":"ISC","keywords":[],"description":"Auri spectrum's backend core","maintainers":[{"name":"bonifaceebuka","email":"boniface.ebuka@gmail.com"}],"readme":"# 📦 Auri Spectrum's Core Backend Code\n\nThis is a reusable backend core infrastructure package developed and used on Aurispec's backend services - admin & mobile.\n\n`@bonifaceebuka/core-backend` provides shared backend logic, database models, utilities, and integrations extracted from the mobile and admin API service to reduce code repetition and one source of truth for database models and migrations.\n\n---\n\n## 🛠️ Tech Stack\n\n- **Node.js**\n- **Postgres** with **TypeORM**\n- **Redis**\n- **Websocket**\n- **Dotenv**\n\n---\n\n\n- ✅ TypeScript-first architecture\n- ✅ TypeORM integration\n- ✅ Reusable database models\n- ✅ Queue processing (BullMQ + Redis)\n- ✅ Authentication & JWT helpers\n- ✅ Email & notification utilities\n- ✅ File upload & media processing\n- ✅ Cloud integrations (Cloudinary, SendGrid, Stripe)\n- ✅ Logging with Winston\n- ✅ Validation & transformation helpers\n- ✅ Swagger/OpenAPI support via TSOA\n- ✅ Production-ready structure\n\n---\n\n## 🧑‍💻 Getting Started To Contribute To This Codebase\n\n### Prerequisites\n\n- [Supabase (Postrges + Vector search + Embeddings)](https://supabase.com/docs/guides/ai)\n- [npm](https://www.npmjs.com/) or [Yarn](https://yarnpkg.com/)\n\n### Installation\n\n```bash\ngit clone https://github.com/Auritechnologies/backend-core.git\ncd backend-core\ncp .env.example .env\nnpm install\nnpm run migration:run\nnpm run dev\n\nnpm version patch\nnpm publish\n\n```\n\n## 📥 Installation\n\n```bash\nnpm install @bonifaceebuka/core-backend\nOR\nyarn add @bonifaceebuka/core-backend\n```\n---\n## 📥 Installation\n\nsrc\n│\n├── common/\n│   ├── configs\n│   ├── helpers\n│   └── utils\n│\n├── models/\n├── database/\n\n---","readmeFilename":"Readme.md"}