Development scripts and CLI tools for DXT UI projects - automated component generation, library building and project management tools
npm install @dxtmisha/scriptsš ļø Development scripts and CLI tools for DXT UI projects - automated component generation, library building and project management tools.



``bash`
npm install -D @dxtmisha/scripts
> Note: TypeScript sources are shipped directly. Requires a TypeScript runner like vite-node, tsx or manual transpilation.
- šļø Component scaffolding - automatic Vue component generation with TypeScript
- šÆ AI integration - Google AI (Gemini) powered code generation
- š§ CLI commands - ready-to-use command line tools
- š Documentation generation - automatic Storybook and MDX creation
- ā” Library management - export barrel file maintenance
- šØ Design system tools - constructor and properties management
- š¦ TypeScript source - no build step required
`bashGenerate component scaffolds in empty directories
npx dxt-component
$3
`typescript
import {
ComponentCreator,
DesignComponent,
AiGoogle,
LibraryExport
} from '@dxtmisha/scripts'// Generate component scaffolds
const creator = new ComponentCreator()
creator.make() // Scans and creates templates for empty component dirs
// AI-powered generation
const ai = new AiGoogle()
ai.addPrompt('You are a Vue component expert')
ai.setModel('gemini-1.5-flash')
const result = await ai.generate('Create props interface for Button component')
// Library export management
const library = new LibraryExport()
library.make() // Rebuilds barrel export files
`š Available utilities
$3
#### Component Generation
`typescript
import { ComponentCreator, ComponentItem, ComponentWiki } from '@dxtmisha/scripts'// Bulk component scaffolding
const creator = new ComponentCreator()
creator.make() // Creates templates in all empty component directories
// Single component generation
const item = new ComponentItem('/path/to/component')
item.make() // Creates complete component file set
// Documentation generation
const wiki = new ComponentWiki('Button')
wiki.make() // Generates Storybook files
`#### AI Integration
`typescript
import { AiAbstract, AiGoogle } from '@dxtmisha/scripts'const ai = new AiGoogle()
// Prompt management
ai.addPrompt('Context line 1')
ai.addPrompt('Context line 2')
ai.resetPrompt() // Clear all prompts
// Configuration
ai.setKey('your-api-key')
ai.setModel('gemini-1.5-flash')
// Generation
const response = await ai.generate('Generate TypeScript interface')
`#### Design System Tools
`typescript
import {
DesignComponent,
DesignConstructor,
DesignTypescript,
DesignStructure
} from '@dxtmisha/scripts'// Component orchestration
const component = new DesignComponent('Button', { variant: 'primary' })
component.make() // Creates: props.ts, styleToken.scss, Component.vue, etc.
// TypeScript analysis
const ts = new DesignTypescript('/path/to/props.ts')
const props = ts.getType('ButtonProps')?.props // Extract prop definitions
`$3
`typescript
import { useAi } from '@dxtmisha/scripts'// Reactive AI integration
const { ai, generate, loading, error } = useAi()
// Usage in Vue component
const result = await generate('Create component documentation')
`$3
`typescript
import {
getComponentPaths,
getConstructorProperties,
getNameDirByPaths
} from '@dxtmisha/scripts'// Path utilities
const paths = getComponentPaths('/components/Button')
const properties = getConstructorProperties()
const dirName = getNameDirByPaths(['src', 'components', 'Button'])
`šÆ CLI Commands Reference
| Command | Purpose | Arguments | Output |
|---------|---------|-----------|---------|
|
dxt-component | Component scaffolding | None (scans all) | Creates templates in empty dirs |
| dxt-component-wiki | Wiki generation | | Generates .stories.ts and .mdx |
| dxt-constructor | Constructor build | None | Updates constructor files |
| dxt-library | Library exports | None | Rebuilds barrel exports |
| dxt-ui | Full UI build | None | Complete project generation |šļø Generated File Structure
When using
DesignComponent, the following files are created:`
MyComponent/
āāā properties.json # Design tokens binding
āāā props.ts # TypeScript props + defaults
āāā styleToken.scss # SCSS tokens and imports
āāā MyComponent.vue # Vue SFC template
āāā index.ts # Component export
āāā wiki.ts # Storybook controls
āāā MyComponent.stories.ts # Storybook configuration
āāā MyComponent.mdx # MDX documentation
`šÆ Use cases
$3
`typescript
import { AiGoogle } from '@dxtmisha/scripts'async function generateComponentDocs(componentName: string) {
const ai = new AiGoogle()
ai.addPrompt('You are a technical writer for Vue components')
ai.addPrompt('Write clear, concise documentation')
const docs = await ai.generate(
)
return docs
}
`š¦ Requirements
Core Dependencies:
- Node.js ā„18.0.0
- TypeScript ā„5.0.0
Peer Dependencies (install separately):
-
@dxtmisha/functional ā„1.0.3 - utility functions
- @dxtmisha/configuration ā„0.3.9 - build configurations
- @dxtmisha/wiki ā„0.23.5 - storybook utilities
- @dxtmisha/styles ā„1.0.2 - styling system
- vue` ā„3.0.0 - Vue framework (when needed)MIT Ā© dxtmisha
---
ā Give us a star if these scripts helped accelerate your development!