open-index/open-npm huggingface dataset:
npm package: @ramas81/colorful-hello
Description: A cheerful CLI that prints colorful greetings
Author: ramas81
Latest version: 1.0.1

# @ramas81/colorful-hello

A cheerful CLI tool that brings color to your terminal greetings! 🌈

## Installation

```bash
npm install -g @ramas81/colorful-hello
```

## Usage

Basic greeting:
```bash
say-hello
```

Custom greeting with name:
```bash
say-hello "Your Name"
```

## Features

- 🎨 Random color selection
- 👋 Personalized greetings
- ✨ Unicode emoji support
- 🔧 Simple CLI interface

## Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

## License

MIT © ramas81
npm package: @ramathibodi/nuxt-commons
Description: Ramathibodi Nuxt modules for common components
Latest version: 4.0.2

# @ramathibodi/nuxt-commons

Nuxt module for Nuxt 3 and Nuxt 4 that provides shared runtime building blocks for Rama projects:
- globally auto-imported UI components
- auto-imported composables
- runtime plugins for permission/dialog/default behavior
- utility and lab exports

## Install

```bash
# pnpm
pnpm add -D @ramathibodi/nuxt-commons

# yarn
yarn add --dev @ramathibodi/nuxt-commons

# npm
npm install --save-dev @ramathibodi/nuxt-commons
```

## Nuxt Setup

```ts
// nuxt.config.ts
export default defineNuxtConfig({
  modules: ['@ramathibodi/nuxt-commons'],
})
```

Supported Nuxt versions: `^3.16.0 || ^4.0.0`

## What The Module Registers

Configured in `src/module.ts`:
- Components from `src/runtime/components` (global + prefixed)
- Composables from `src/runtime/composables/**` (auto-imported)
- Plugins:
  - `src/runtime/plugins/permission.ts`
  - `src/runtime/plugins/dialogManager.ts` (client)
  - `src/runtime/plugins/clientConfig.ts` (client)
  - `src/runtime/plugins/default.ts` (client)
- Type templates from `src/runtime/types/*.d.ts`

## Runtime Config

This module uses public runtime config at:

```ts
runtimeConfig.public['nuxt-commons']
```

Module options are merged into this key by module setup.

## Development

```bash
# Install dependencies
npm install

# Prepare stubs/types
npm run dev:prepare

# Run playground
npm run dev

# Build playground
npm run dev:build

# Lint and test
npm run lint
npm run test
```

## Documentation

Generate documentation artifacts from source:

```bash
# Vue component API docs (vue-docgen)
npm run docs:api:components

# Composable API docs (typedoc)
npm run docs:api:composables

# Both API docs
npm run docs:api

# AI-focused summary + type index
npm run docs:ai:summary
```

`docs:api:components` now runs a post-process step that enriches missing prop/event descriptions and missing type/default cells in generated markdown using `docs/ai-summary.json`.

Documentation config files:
- [`docs/vue-docgen.config.cjs`](docs/vue-docgen.config.cjs) for component docs generation
- [`docs/typedoc.json`](docs/typedoc.json) for composable docs generation
- [`docs/typedoc.tsconfig.json`](docs/typedoc.tsconfig.json) for docs-only TypeScript scope

Generated outputs:
- [`docs/components/`](docs/components/) (vue-docgen output)
- [`docs/composables/`](docs/composables/) (typedoc output)
- [`docs/ai-summary.md`](docs/ai-summary.md) (compact AI-oriented markdown summary)
- [`docs/ai-summary.json`](docs/ai-summary.json) (machine-readable component/composable metadata)
- [`docs/type-index.json`](docs/type-index.json) (type index for tooling/AI pipelines)

`docs:ai:summary` generates:
- `docs/ai-summary.md`
- `docs/ai-summary.json`
- `docs/type-index.json`

## Publish Notes

`package.json` `version` is used to select the publish line by `major.minor`:

- Keep the same `major.minor` line to continue normal releases.
- Change it to `0.2.0`, `1.1.0`, etc. to start publishing that new line on the next release.

```bash
npm run dev:build
npm run release
```
npm package: @rambler-tech/commitlint-config
Description: ## Install
Latest version: 0.1.1

# Shared [CommitLint](https://commitlint.js.org) config

## Install

```
npm install -D @commitlint/cli @rambler-tech/commitlint-config
```

or

```
yarn add -D @commitlint/cli @rambler-tech/commitlint-config
```

## Usage

Included configurations:

- `@rambler-tech/commitlint-config` - simple rules
- `@rambler-tech/commitlint-config/conventional` - for conventional commits
- `@rambler-tech/commitlint-config/shared` - for shared modules – conventional commits with optional refs

Example `.commitlintrc.json` for conventional commits:

```json
{
  "extends": [
    "@rambler-tech/commitlint-config/conventional"
  ]
}
```
npm package: @rambler-tech/debug
Description: Debug management based on [debug](https://github.com/debug-js/debug).
Latest version: 0.1.4

# Debug

Debug management based on [debug](https://github.com/debug-js/debug).

## Install

```
npm install -D @rambler-tech/debug
```

or

```
yarn add -D @rambler-tech/debug
```
npm package: @rambler-tech/eslint-config
Description: ## Install
Latest version: 0.17.1

# Shared [ESLint](https://eslint.org) v9 config

## Install

```
npm install -D eslint @rambler-tech/eslint-config
```

or

```
yarn add -D eslint @rambler-tech/eslint-config
```

## Usage

Included base configs:

- `@rambler-tech/eslint-config` - base JavaScript
- `@rambler-tech/eslint-config/semi` - base with semicolons and trailing commas

Included special configs:

- `@rambler-tech/eslint-config/ts` - TypeScript
- `@rambler-tech/eslint-config/react` - React
- `@rambler-tech/eslint-config/next` - Next.js

Example `eslint.config.mjs` for React project:

```mjs
import { jsConfig } from '@rambler-tech/eslint-config'
import { reactConfig } from '@rambler-tech/eslint-config/react'

export default [...jsConfig, ...reactConfig]
```

Example `eslint.config.mjs` for TypeScript project:

```mjs
import { jsConfig } from '@rambler-tech/eslint-config'
import { tsConfig } from '@rambler-tech/eslint-config/ts'

export default [...jsConfig, ...tsConfig]
```

Example `eslint.config.mjs` for TypeScript React project:

```mjs
import { jsConfig } from '@rambler-tech/eslint-config'
import { reactConfig } from '@rambler-tech/eslint-config/react'
import { tsConfig } from '@rambler-tech/eslint-config/ts'

export default [...jsConfig, ...reactConfig, ...tsConfig]
```

Example `eslint.config.mjs` for TypeScript Next.js project:

```mjs
import { jsConfig } from '@rambler-tech/eslint-config'
import { nextConfig } from '@rambler-tech/eslint-config/next'
import { tsConfig } from '@rambler-tech/eslint-config/ts'

export default [...jsConfig, ...nextConfig, ...tsConfig]
```

Note that the `@rambler-tech/eslint-config/ts` should be second to last in the list since it includes `@typescript-eslint/parser`
npm package: @rambler-tech/lhci-report
Description: Print Lighthouse CI report to CLI
Latest version: 0.2.0

# Lighthouse CI report

Print Lighthouse CI report to CLI

## Install

```
npm install -D @rambler-tech/lhci-report
```

or

```
yarn add -D @rambler-tech/lhci-report
```

## Usage

```sh
lhci-report <lhci report dir>

Lighthouse report

URL: https://www.rambler.ru/
Number of runs: 3

performance         0.93  0.94  0.94
accessibility       0.87  0.87  0.87
best-practices      0.52  0.56  0.56
seo                 0.92  0.92  0.92
pwa                 0.71  0.71  0.71
```
npm package: @rambler-tech/licenselint
Description: A linter for NPM package licenses to avoid dependencies that not compatible with license of your software
Author: Andrey Polischuk
Latest version: 1.3.0

# License Lint

A linter for NPM package licenses to avoid dependencies that not compatible with license of your software. It can check licenses automatically on CI or on NPM `postinstall`.

![](./screenshot.png)

## Install

```sh
npm install -D @rambler-tech/licenselint
```

or 

```sh
yarn add -D @rambler-tech/licenselint
```

## Usage

```sh
licenselint --help

  Lint NPM package licenses

  Usage
    licenselint [dirname]

  Options
    --production    Only lint production dependencies
    --development   Only lint development dependencies
    --summary       Output a summary of the license usage
    --deny          Fail on an occurrence of the licenses of the deny list
    --allow         Fail on an occurrence of the licenses not in the allow list
    --exclude       Exclude modules which licenses are in the list
    --extends       Use custom configuration file

  Examples
    licenselint
    licenselint packages/foo
    licenselint --production
    licenselint --deny LGPL
    licenselint --allow MIT --allow ISC
    licenselint --extends shared/licenserc.json
```

Then use it for automatically check in CI

```yaml
...
lint deps:
  stage: test
  script:
    - npm install
    - licenselint
...
```

Or on NPM `postinstall`

```json
{
  "name": "app",
  "description": "...",
  "version": "0.1.2",
  "scripts": {
    "...": "...",
    "postinstall": "licenselint"
  },
  "...": "..."
}
```

## Configuration

Create `.licenserc.json` configuration file:

```json
{
  "production": true,
  "deny": [
    "GPL",
    "LGPL"
  ]
}
```

Configuration file supports all CLI flags.

Also you can extends your local setup with shared configuration:

```json
{
  "extends": "@shared/licenserc",
  "summary": true
}
```

## License

MIT
npm package: @rambler-tech/licenselint-config
Description: ## Install
Latest version: 0.0.2

# Shared [License Lint](https://github.com/rambler-digital-solutions/licenselint) config

## Install

```
npm install -D @rambler-tech/licenselint @rambler-tech/licenselint-config
```

or

```
yarn add -D @rambler-tech/licenselint @rambler-tech/licenselint-config
```

## Usage

Create a **.licenserc.json** and extend this config

```
{
  "extends": "@rambler-tech/licenselint-config"
}
```
npm package: @rambler-tech/prettier-config
Description: ## Install
Latest version: 0.1.0

# Shared [Prettier](https://prettier.io) config

## Install

```
npm install -D prettier @rambler-tech/prettier-config
```

or

```
yarn add -D prettier @rambler-tech/prettier-config
```

## Usage

Create a **.prettierrc** and export a string

```
"@rambler-tech/prettier-config"
```

or add a key to your **package.json** file

```
"prettier": "@rambler-tech/prettier-config"
```

## Included configurations

- `@rambler-tech/prettier-config` - base JavaScript and TypeScript
- `@rambler-tech/prettier-config/semi` - base with semicolons and trailing commas
npm package: @rambler-tech/razzle-bundle-analyzer
Description: ## Install
Latest version: 0.1.0

# Bundle Analyzer Plugin 

## Install

```
npm install -D @rambler-tech/razzle-bundle-analyzer
```

or

```
yarn add -D @rambler-tech/razzle-bundle-analyzer
```

## Usage

Add the plugin to `razzle.config.js`

```js
const BundleAnalyzerPlugin = require('@rambler-tech/razzle-bundle-analyzer')

module.exports = {
  plugins: [
    BundleAnalyzerPlugin({
      analyzerMode: 'server',
      analyzerHost: 'localhost',
      analyzerPort: 3003
    })
  ],
  modifyWebpackConfig({webpackConfig}) {
    // ...
    return webpackConfig
  }
}
```

Than add npm script to run analyzer to your `package.json`

```json
{
  ...
  "scripts": {
    ...
    "analyzer": "BUNDLE_ANALYZER=true razzle build --noninteractive"
  }
}
```
npm package: @rambler-tech/razzle-chunks
Description: Support for split chunks
Latest version: 0.1.0

# Chunks Plugin

Support for split chunks

## Install

```
npm install -D @rambler-tech/razzle-chunks
```

or

```
yarn add -D @rambler-tech/razzle-chunks
```

## Usage

Add the plugin to `razzle.config.js`

```js
const path = require('path')
const ChunksPlugin = require('@rambler-tech/razzle-chunks')

module.exports = {
  plugins: [
    ChunksPlugin({
      vendors: /[\\/]node_modules[\\/]*[\\/]/
    })
  ],
  modifyWebpackConfig({webpackConfig}) {
    // ...
    return webpackConfig
  }
}
```
npm package: @rambler-tech/razzle-compression
Description: Get compressed versions of assets with gzip and brotli algorithms
Latest version: 0.1.0

# Compression Plugin

Get compressed versions of assets with gzip and brotli algorithms

## Install

```
npm install -D @rambler-tech/razzle-compression
```

or

```
yarn add -D @rambler-tech/razzle-compression
```

## Usage

Add the plugin to `razzle.config.js`

```js
const CompressionPlugin = require('@rambler-tech/razzle-compression')

module.exports = {
  plugins: [
    CompressionPlugin(),
  ],
  modifyWebpackConfig({webpackConfig}) {
    // ...
    return webpackConfig
  }
}
```
npm package: @rambler-tech/razzle-css
Description: Enhanced inject CSS into the razzle bundle
Latest version: 0.2.0

# CSS Plugin

Enhanced inject CSS into the razzle bundle

## Install

```
npm install -D @rambler-tech/razzle-css
```

or

```
yarn add -D @rambler-tech/razzle-css
```

## Usage

Add the plugin to `razzle.config.js`

```js
const CssPlugin = require('@rambler-tech/razzle-css')

module.exports = {
  plugins: [
    CssPlugin()
  ],
  modifyWebpackConfig({webpackConfig}) {
    // ...
    return webpackConfig
  }
}
```
npm package: @rambler-tech/razzle-environment
Description: Pass environment variables to app with [`dotenv`](https://github.com/motdotla/dotenv) and custom variables
Latest version: 0.1.0

# Environment Plugin 

Pass environment variables to app with [`dotenv`](https://github.com/motdotla/dotenv) and custom variables

## Install

```
npm install -D @rambler-tech/razzle-environment
```

or

```
yarn add -D @rambler-tech/razzle-environment
```

## Usage

Add the plugin to `razzle.config.js`

```js
const EnvironmentPlugin = require('@rambler-tech/razzle-environment')

const VERSION = '...'

module.exports = {
  plugins: [
    EnvironmentPlugin({
      VERSION
    })
  ],
  modifyWebpackConfig({webpackConfig}) {
    // ...
    return webpackConfig
  }
}
```
npm package: @rambler-tech/razzle-eslint
Description: Find problems in your code on build step
Latest version: 0.1.3

# ESLint Plugin

Find problems in your code on build step

## Install

```
npm install -D @rambler-tech/razzle-eslint eslint
```

or

```
yarn add -D @rambler-tech/razzle-eslint eslint
```

## Usage

Add the plugin to `razzle.config.js`

```js
const ESLintPlugin = require('@rambler-tech/razzle-eslint')

module.exports = {
  plugins: [
    ESLintPlugin(),
  ],
  modifyWebpackConfig({webpackConfig}) {
    // ...
    return webpackConfig
  }
}
```
npm package: @rambler-tech/razzle-multi-entry
Description: Support for multiple entries instead of one
Latest version: 0.1.1

# Multi Entry Plugin

Support for multiple entries instead of one

## Install

```
npm install -D @rambler-tech/razzle-multi-entry
```

or

```
yarn add -D @rambler-tech/razzle-multi-entry
```

## Usage

Add the plugin to `razzle.config.js`

```js
const path = require('path')
const MultiEntryPlugin = require('@rambler-tech/razzle-multi-entry')

module.exports = {
  plugins: [
    MultiEntryPlugin({
      mobile: path.resolve(__dirname, 'src/mobile/client'),
      desktop: path.resolve(__dirname, 'src/desktop/client')
    })
  ],
  modifyWebpackConfig({webpackConfig}) {
    // ...
    return webpackConfig
  }
}
```
npm package: @rambler-tech/razzle-svgr
Description: Transform SVGs into React components
Latest version: 0.2.0

# SVGR Plugin

Transform SVGs into React components

## Install

```
npm install -D @rambler-tech/razzle-svgr
```

or

```
yarn add -D @rambler-tech/razzle-svgr
```

## Usage

Add the plugin to `razzle.config.js`

```js
const SvgrPlugin = require('@rambler-tech/razzle-svgr')

module.exports = {
  plugins: [
    SvgrPlugin()
  ],
  modifyWebpackConfig({webpackConfig}) {
    // ...
    return webpackConfig
  }
}
```

It's also possible to provide args from svgr plugin

```js
const SvgrPlugin = require('@rambler-tech/razzle-svgr')

module.exports = {
  plugins: [
    SvgrPlugin({
      native: true,
    })
  ],
  modifyWebpackConfig({webpackConfig}) {
    // ...
    return webpackConfig
  }
}
```

[Full list of options are avaible here](https://react-svgr.com/docs/options/)
npm package: @rambler-tech/razzle-typescript
Description: Find problems in your code on build step
Latest version: 0.1.0

# TypeScript Plugin

Find problems in your code on build step

## Install

```
npm install -D @rambler-tech/razzle-typescript
```

or

```
yarn add -D @rambler-tech/razzle-typescript
```

## Usage

Add the plugin to `razzle.config.js`

```js
const TypeScriptPlugin = require('@rambler-tech/razzle-typescript')

module.exports = {
  plugins: [
    TypeScriptPlugin(),
  ],
  modifyWebpackConfig({webpackConfig}) {
    // ...
    return webpackConfig
  }
}
```
npm package: @rambler-tech/renovate-config
Description: ## Install
Latest version: 0.1.4

# Shared [Renovate Bot](https://docs.renovatebot.com) config

## Install

```
npm install -D @rambler-tech/renovate-config
```

or

```
yarn add -D @rambler-tech/renovate-config
```

## Usage

Included configurations:

- `@rambler-tech/renovate-config` - base config
- `@rambler-tech/renovate-config/automerge` - enables auto-merge for `patch` and `minor` updates

Example `renovate.json` for updates with auto-merge:

```json
{
  "$schema": "https://docs.renovatebot.com/renovate-schema.json",
  "extends": [
    "@rambler-tech/renovate-config",
    "@rambler-tech/renovate-config:automerge"
  ]
}
```
npm package: @rambler-tech/semantic-release-config
Description: ## Install
Latest version: 0.0.3

# Shared [Semantic Release](https://github.com/semantic-release/semantic-release) config

## Install

```
npm install -D semantic-release @rambler-tech/semantic-release-config
```

or

```
yarn add -D semantic-release @rambler-tech/semantic-release-config
```

## Usage

Create a **.releaserc.json** and extend this config

```
{
  "extends": "@rambler-tech/semantic-release-config"
}
```
npm package: @rambler-tech/stylelint-config
Description: ## Install
Latest version: 0.1.0

# Shared [StyleLint](https://stylelint.io) config

## Install

```
npm install -D stylelint @rambler-tech/stylelint-config
```

or

```
yarn add -D stylelint @rambler-tech/stylelint-config
```

## Usage

Create a **.stylelintrc** and extend this config

```
{
  "extends": ["@rambler-tech/stylelint-config"]
}
```

or add a key to your **package.json** file

```
"stylelint": {
  "extends": ["@rambler-tech/stylelint-config"]
}
```
npm package: @rambler-tech/ts-config
Description: ## Install
Latest version: 0.1.1

# Shared [TypeScript](https://www.typescriptlang.org) config

## Install

```
npm install -D typescript @rambler-tech/ts-config
```

or

```
yarn add -D typescript @rambler-tech/ts-config
```

## Usage

Create a **tsconfig.json** and extend this config. Don't forget to add `baseUrl` option since it is relative to `tsconfig.json` file location.

```
{
	"extends": "@rambler-tech/ts-config/base",
  "compilerOptions": {
    "baseUrl": "src",
    ...
  }
}
```

Shared config is a **base** config — means it includes compiler options that are only shared between all typescript projects. You should add special options for each project explicitly.
npm package: @rambler-tech/typedoc-config
Description: ## Install
Latest version: 0.4.0

# Shared [TypeDoc](https://typedoc.org) config

## Install

```
npm install -D typedoc @rambler-tech/typedoc-config
```

or

```
yarn add -D typedoc @rambler-tech/typedoc-config
```

## Usage

Create a **typedoc.json** and extend this config

```
{
  "extends": "@rambler-tech/typedoc-config"
}
```

## Custom fields

This config supports custom fields from [typedoc-plugin-extras](https://github.com/Drarig29/typedoc-plugin-extras) plugin.

```json
{
  "extends": "@rambler-tech/typedoc-config",
  "customTitle": "Package name",
  "customDescription": "Yet another package"
}
```

## Additional pages

This config supports additional pages with [@knodes/typedoc-plugin-pages](https://github.com/KnodesCommunity/typedoc-plugins/tree/develop/packages/plugin-pages) plugin.

Create markdown files into your repository (by default in the `docs` directory):

```
docs/
  getting-started.md
  getting-started/
    configuration.md
    other.md
  index.json
```

Configure your pages tree in the `index.json` configuration. Example:

```json
[
  {
    "name": "Getting started",
    "source": "getting-started.md",
    "children": [
      { "name": "Configuration", "source": "configuration.md" },
      { "name": "Another page", "source": "other.md" }
    ]
  }
]
```
npm package: @rambler-tech/yandex-metrica
Description: Yandex Metrica utils
Latest version: 0.1.0

# Yandex Metrica

Yandex Metrica utils

## Install

```
npm install -D @rambler-tech/yandex-metrica
```

or

```
yarn add -D @rambler-tech/yandex-metrica
```