@aippy/vite-plugins
v0.2.4
Published
Vite plugins for Aippy projects - Asset management and component tagging
Readme
@aippy/vite-plugins
Vite plugins collection for Aippy projects, providing asset management and component tagging capabilities.
Installation
pnpm add -D @aippy/vite-pluginsPlugins
1. Asset Constants Plugin
Generates constant references for static assets and replaces hardcoded paths.
import { assetConstantsPlugin } from '@aippy/vite-plugins/asset-constants'
export default defineConfig({
plugins: [
assetConstantsPlugin({
extensions: ['.png', '.jpg', '.jpeg', '.gif', '.svg', '.mp4', '.mp3'],
srcDir: 'src',
outputFile: 'src/config/assets.json',
devMode: true
})
]
})2. Aippy Preload Plugin
Scans build output and generates preload meta tags for assets.
import { aippyPreloadPlugin } from '@aippy/vite-plugins/aippy-preload'
export default defineConfig({
plugins: [
aippyPreloadPlugin({
extensions: ['.js', '.css', '.png', '.jpg', '.svg'],
outDir: 'dist',
includeSubdirs: true
})
]
})3. Aippy Tagger Plugin
Tags React components with metadata for development tools and inspector.
import { aippyTaggerPlugin } from '@aippy/vite-plugins/aippy-tagger'
export default defineConfig({
plugins: [
aippyTaggerPlugin()
]
})All-in-One Import
import { assetConstantsPlugin, aippyPreloadPlugin, aippyTaggerPlugin } from '@aippy/vite-plugins'Utility Functions
The package also exports utility functions that can be used independently:
import {
processAssetURL,
isValidAsset,
generateConstantName,
extractAssetsFromContent,
findProjectRoot
} from '@aippy/vite-plugins/utils'
// Process asset URLs
const processedUrl = processAssetURL('./image.png') // '/image.png'
// Validate asset paths
const isValid = isValidAsset('./image.png') // true
// Generate constant names
const constantName = generateConstantName('/image.png') // 'IMAGE_ABCD'
// Extract assets from content
const assets = extractAssetsFromContent(htmlContent, 'html', ['.png', '.jpg'])
// Find project root
const projectRoot = findProjectRoot() // '/path/to/project'License
UNLICENSED - Aippy Team
