Sequelize-Logbook
A plugin for adding a log book / revision history / audit / paper trail to a sequelize model.
🎛 Usage
models/index.js associate
pattern:
When using the my-model.js
const trackRevisions = module { let MyModel = sequelize}
General use
const trackRevisions = let MyModel = sequelizelet AnotherModel = sequelize
🐲 whoDunnit / blame / author tracking.
SequelizeRevisions will look against the global sequelize object for a whoDunnit key. If this key is present, it will save this value as the author of the revision. Otherwise, it'll fall back to process.env.NODE_ENV
const sequelize = db user password configsequelizewhoDunnit = 'yourUserString'
⚠ Caveats
Revisions will not be automatically generated for instances created, deleted, or updated with Bulk actions
If you want revisions generated for Bulk actions, pass individualHooks: true
as a sequelize option.
🏗 Contributing
📐 Tests
npm run test
✂ Linting
npm run prettier
✨ Inspired by
Related:
This library is similar to these other packages, with the addition of:
- whoDunnit / blame history
- Unit tests! 📏
- sequelize-paper-trail - ⛔ empty unit tests
- sequelize-temporal - 👴 not maintained
- sequelize-revisions - 🚫 no unit tests
License
Sequelize-logbook is MIT licensed.