Registry / database / mongoose-data-seed

mongoose-data-seed

JSON →
library2.1.6jsnpmunverified

Seed MongoDB databases with seed data using Mongoose models. Version 2.1.6 is the latest stable release; the package has had irregular updates with last release in 2020. It provides a CLI (md-seed) to generate and run seeders, supports dropping the database before seeding, and allows ordering of seeders. Compared to alternatives like mongoose-seed, it offers a Seeder class with shouldRun and run methods, and integrates with semantic-release for versioning.

npm install mongoose-data-seed
INSTALL
IMPORT
SIG · MONGOOSE-DATA-SEED
M
mongoose-data-seed
databasejavascriptv2.1.6
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

Seeder
import { Seeder } from 'mongoose-data-seed';
const Seeder = require('mongoose-data-seed').Seeder;
CommonJS require works but named export; default import not available.
default
import mongooseDataSeed from 'mongoose-data-seed';
const mongooseDataSeed = require('mongoose-data-seed');
No default export exists; this import will result in undefined.
seedersList
export const seedersList = { Users };
module.exports = { seedersList: { Users } };
CLI reads md-seed-config.js which should export named seedersList.

Create a basic seeder class extending Seeder, implement shouldRun/run, and export default.

// Install: npm install --save mongoose-data-seed // Initialize: md-seed init // Generate seeder: md-seed g users // seeders/users.seeder.js import { Seeder } from 'mongoose-data-seed'; import { User } from '../models'; const data = [ { email: 'user1@test.com', password: '123' }, { email: 'user2@test.com', password: '456' } ]; class UsersSeeder extends Seeder { async shouldRun() { return User.countDocuments().exec().then(c => c === 0); } async run() { return User.create(data); } } export default UsersSeeder;
Debug
Known issues
breakingVersion 2.0.0 changed the API from using md-seed object to named exports.
fix
Update seeders to extend Seeder class and export default; configure md-seed-config.js with named exports.
affects: <2.0.0
gotchamd-seed init creates seeders folder and package.json scripts; may overwrite existing files without backup.
fix
Backup your project before running init, or manually create configuration files.
affects: >=1.0.0
deprecatedPackage uses mongoose 5.x; future compatibility with mongoose 6+ is untested.
fix
Consider using a more modern seeding library like @casl/mongoose or custom scripts for mongoose 6+.
affects: >=2.1.0
Errors
Common errors & fixes
SyntaxError: Unexpected token import
Node.js version <8 or using CommonJS without transpilation.
fix
Use Node >=8 or configure Babel for ES modules; alternatively use require syntax.
Cannot find module 'mongoose-data-seed'
Package not installed or missing from node_modules.
fix
Run npm install --save mongoose-data-seed and ensure package.json contains it.
Seeder is not a constructor
Incorrect import: importing default instead of named Seeder.
fix
Use import { Seeder } from 'mongoose-data-seed'.
Upgrade
Version history
2.1.6latest on npm
Audit
Dependencies
mongooserequiredPeer dependency for model interaction; must be installed separately
Agent activity
4 hits · last 30 days
node
4
Resources
mongoose-data-seed — npm install mongoose-data-seed · libregistry