@riavzon/utils
v1.1.0
Published
Collection of generic/advanced TypeScript utilities and ESLint configs
Maintainers
Readme
Shared Utilities
A collection of generic TypeScript utilities and types.
Structure
generic/: Core utility functions for data manipulation, sanitization, and validation.eslint/: Reusable ESLint configurations for Vue/Next.js and TypeScript.types/: Shared TypeScript interfaces and unified API response formats.server/: Server utilities.
Usage
ESLint Configuration
The library exports strict, pre configured ESLint setups for both pure TypeScript, Vue projects and React projects.
For Pure TypeScript Projects:
// eslint.config.mjs
import { defineStrictTSConfig } from '@riavzon/utils/eslint/strict';
export default defineStrictTSConfig({
rootDir: import.meta.dirname,
extraIgnores: ['coverage/**']
});For Vue + TypeScript Projects:
// eslint.config.mjs
import { defineStrictVueConfig } from '@riavzon/utils/eslint/strict/vue';
export default defineStrictVueConfig({
rootDir: import.meta.dirname,
overrides: [
{
rules: {
'vue/multi-word-component-names': 'off'
}
}
]
});General Utilities
import { ensureArray, miniCache, BatchQueue } from '@riavzon/utils';
const list = ensureArray(someValue);Server only
import { uploadCsv, run } from '@riavzon/utils/server';
await run('some shell command')
const up = await uploadCsv(csvPath, 'table_name', pool as PgPool, 'pg');
const up = await uploadCsv(csvPath, 'table_name', pool as Pool, 'mysql');Check directly the source code to see available utils, docs available via ts-docs, and a dedicated site is coming soon. Supports esm and cjs.
MIT License
