- Use
registerTransformto add custom document transforms - Use
registerSchemaExtensionfor custom schema logic - Example: see
examples/plugins/example-transform-plugin.ts
- Use
registerValidatorto enforce schema rules - Example: see
examples/validation/example-validator.ts
- Use
registerMigrationfor upgrades/downgrades - Example: see
examples/migration/example-migration.ts
- Always version your schemas and migrations
- Write idempotent migration scripts
- Validate documents before and after migration
- Use the permission model for plugin security
- See
benchmarks/validation-migration.bench.tsfor performance testing