v1.3.0: The Plugin System
Added
- Plugin System: Enterprise teams can now inject their own JavaScript/TypeScript custom rules dynamically at runtime via
config.smile.json.- Plugins can be loaded via relative paths (
./my-rules.js) or NPM packages (smile-plugin-enterprise). - Custom rules can target specific formats (e.g.
openapi) or apply universally to all formats using"all". - Added new
pluginsarray property to the configuration file format.
- Plugins can be loaded via relative paths (
Docs
- Plugin Guide: Created a dedicated
docs/plugins.mdexplaining how to build and inject custom rules. - Boilerplate: Added a ready-to-use boilerplate plugin in
examples/my-custom-plugin.js.
Chore
- Test Fixtures Isolation: Migrated all internal
.yamltest files from theexamples/folder to a dedicatedfixtures/directory. Theexamples/folder is now strictly reserved for clean, production-ready boilerplate code. Evaluated and refactored the entiresrc/core/__tests__suite to point to the new directory safely.
📦 Installation
npm install -g @mrjacket/smileView Full CHANGELOG