@mycuppa/plugin
v0.0.0
Published
Plugin system for Cuppa framework
Maintainers
Readme
@mycuppa/plugin
Extensible plugin system for Cuppa applications.
Installation
npm install @mycuppa/plugin @mycuppa/core
# or
pnpm add @mycuppa/plugin @mycuppa/coreQuick Start
import { createPlugin, registerPlugin } from '@mycuppa/plugin'
// Create a plugin
const analyticsPlugin = createPlugin({
name: 'analytics',
version: '1.0.0',
install(cuppa) {
cuppa.on('page:view', (data) => {
console.log('Page viewed:', data)
})
},
})
// Register plugin
registerPlugin(analyticsPlugin)
// Use plugin API
cuppa.emit('page:view', { path: '/home' })Creating Plugins
import { createPlugin } from '@mycuppa/plugin'
export const myPlugin = createPlugin({
name: 'my-plugin',
version: '1.0.0',
install(cuppa, options) {
// Add methods
cuppa.myMethod = () => {
console.log('Custom method')
}
// Register lifecycle hooks
cuppa.on('init', () => {
console.log('App initialized')
})
// Add global utilities
cuppa.utils.myUtil = () => 'utility function'
},
})Features
- 🔌 Easy Extension - Simple plugin API
- 🎯 Type-Safe - Full TypeScript support
- 🔄 Lifecycle Hooks - Tap into application lifecycle
- 📦 Composable - Combine multiple plugins
- 🛠️ Plugin Registry - Manage installed plugins
Documentation
For detailed documentation, visit:
License
MIT
