@gzl10/nexus-sdk
v0.12.6
Published
SDK types for creating Nexus plugins and modules
Downloads
3,033
Readme
@gzl10/nexus-sdk
Warning: This project is currently in testing/experimental phase. Use at your own risk.
SDK types for creating Nexus plugins and modules. Provides TypeScript interfaces and type definitions for building modular backends.
Repository: https://gitlab.gzl10.com/oss/nexus
Installation
pnpm add @gzl10/nexus-sdkUsage
import type {
ModuleManifest,
PluginManifest,
EntityDefinition,
ModuleContext
} from '@gzl10/nexus-sdk'
// Define a module
const manifest: ModuleManifest = {
name: 'my-module',
label: 'My Module',
description: 'A custom Nexus module',
type: 'core',
dependencies: []
}
// Define entity
const entity: EntityDefinition = {
name: 'products',
type: 'collection',
label: 'Products',
fields: [
{ name: 'title', type: 'string', required: true },
{ name: 'price', type: 'decimal', required: true }
]
}Exported Types
| Type | Description |
| ---- | ----------- |
| ModuleManifest | Module metadata definition |
| PluginManifest | Plugin metadata definition |
| EntityDefinition | Entity schema definition |
| ModuleContext | Context passed to module lifecycle hooks |
| ModuleRequirements | Module dependencies and requirements |
| ModuleMiddlewares | Express middleware configuration |
| ModuleAbilities | CASL ability definitions |
| Request | Express Request type |
| Response | Express Response type |
| Router | Express Router type |
| Category | Entity category type |
Development
pnpm build # Build library
pnpm typecheck # Type check
pnpm lint # Linting
pnpm clean # Clean build artifactsLicense
MIT
