open-index/open-npm huggingface dataset:
npm package: @rosmarinus/babel-plugin-tree-cutting
Description: a babel plugin to make project tree shaking possible
Latest version: 2.1.3

# @rosmarinus/babel-plugin-tree-cutting

<p align="center">
  <a href="https://www.npmjs.com/package/@rosmarinus/babel-plugin-tree-cutting"><img src="https://img.shields.io/npm/v/@rosmarinus/babel-plugin-tree-cutting" alt="npm package"></a>
  <a href="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml"><img src="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml/badge.svg" alt="build status"></a>
  <a href="https://pr.new/rosmarinus-project/rosmarinus-universal"><img src="https://developer.stackblitz.com/img/start_pr_dark_small.svg" alt="Start new PR in StackBlitz Codeflow"></a>
</p>

This npm is used to transform the import code to import from the correct sub path.

Always use with @rosmarinus/import-map-generator.

For examples:
```typescript
import { foo } from 'npm'

// will be transformed to
import { foo } from 'npm/foo'
```

# How to Install

```bash
npm i @rosmarinus/babel-plugin-tree-cutting
```

# How to Use

```js
// babel.config.js
module.exports = {
  plugins: [
    [
      '@rosmarinus/babel-plugin-tree-cutting',
      {
        npmName: 'your npm name',
        exportMapPath: 'the path of @rosmarinus/import-map-generator output'
      }
    ],
  ]
}
npm package: @rosmarinus/cli-mod
Description: cli tool for rosmarinus projects
Latest version: 0.0.4

# @rosmarinus/cli-mod

<p align="center">
  <a href="https://www.npmjs.com/package/@rosmarinus/cli-mod"><img src="https://img.shields.io/npm/v/@rosmarinus/cli-mod" alt="npm package"></a>
  <a href="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml"><img src="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml/badge.svg" alt="build status"></a>
  <a href="https://pr.new/rosmarinus-project/rosmarinus-universal"><img src="https://developer.stackblitz.com/img/start_pr_dark_small.svg" alt="Start new PR in StackBlitz Codeflow"></a>
</p>

This npm is an useful tool for developing.

# Install
```bash
npm install @rosmarinus/cli-mod
```

# Usage
```bash

# alias git branch clean. This command will delete local git branches that are not on remote
gbc

# alias encode ls. This command will encode the output of ls command
els
npm package: @rosmarinus/common-plugins
Description: some common plugins for rosmarinus
Latest version: 0.4.13

@rosmarinus/common-plugins

<p align="center">
  <a href="https://www.npmjs.com/package/@rosmarinus/common-plugins"><img src="https://img.shields.io/npm/v/@rosmarinus/common-plugins" alt="npm package"></a>
  <a href="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml"><img src="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml/badge.svg" alt="build status"></a>
  <a href="https://pr.new/rosmarinus-project/rosmarinus-universal"><img src="https://developer.stackblitz.com/img/start_pr_dark_small.svg" alt="Start new PR in StackBlitz Codeflow"></a>
</p>

some common plugins for rollup. always used in rosmarinus projects.

# How to Install

```bash
npm i @rosmarinus/common-plugins -D
```

# How to Use

```js
// rollup.config.js
import commonPlugin from '@rosmarinus/common-plugins';

export default {
  input: 'src/index.ts',
  plugins: [
    commonPlugin(),
  ],
};
```
npm package: @rosmarinus/common-tailwindcss
Description: common-tailwindcss for rosmarinus projects
Latest version: 0.3.1

# @rosmarinus/common-tailwindcss

<p align="center">
  <a href="https://www.npmjs.com/package/@rosmarinus/common-tailwindcss"><img src="https://img.shields.io/npm/v/@rosmarinus/common-tailwindcss" alt="npm package"></a>
  <a href="https://github.com/rosmarinus-project/common-tailwindcss/actions/workflows/publish.yml"><img src="https://github.com/rosmarinus-project/common-tailwindcss/actions/workflows/publish.yml/badge.svg" alt="build status"></a>
  <a href="https://pr.new/rosmarinus-project/common-tailwindcss"><img src="https://developer.stackblitz.com/img/start_pr_dark_small.svg" alt="Start new PR in StackBlitz Codeflow"></a>
</p>

# Install
```bash
npm install @rosmarinus/common-tailwindcss
```
npm package: @rosmarinus/common-utils
Description: some common utils for rosmarinus
Latest version: 3.1.1

# @rosmarinus/common-utils

<p align="center">
  <a href="https://www.npmjs.com/package/@rosmarinus/common-utils"><img src="https://img.shields.io/npm/v/@rosmarinus/common-utils" alt="npm package"></a>
  <a href="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml"><img src="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml/badge.svg" alt="build status"></a>
  <a href="https://pr.new/rosmarinus-project/rosmarinus-universal"><img src="https://developer.stackblitz.com/img/start_pr_dark_small.svg" alt="Start new PR in StackBlitz Codeflow"></a>
</p>


This npm package contains some function encapsulation commonly used in development, which is more engineering-oriented.

# How to Install

```bash
npm i @rosmarinus/common-utils
```

# Functions introduction

1. logger

This module encapsulates chalk as output, and the input parameters are the same as the console module.

2. sleep

This module encapsulates several common delay methods into promise output

3. uuid

This module is a wrapper for the uuid npm library

4. AsyncTask

AsyncTask is an encapsulation of promise and is used in scenarios where calls and callbacks are separated.

4. FileLogger

FileLogger is a file logger that can be used in nodejs and environments to output log to a local file.

5. json

This module is a wrapper for the JSON.stringify and JSON.parse methods to make them more secure.

6. is-type

Some functions to determine the type of data, such as isArray, isObject, isString, etc.

7. try

This module is a wrapper for try-catch, which can return undefined when an error occurs.

8. url

This module is a collection of url handle function, such as handling url params to object.


# About Tree shaking
this npm doesn't support tree shaking, because it use some npm packages that don't support tree shaking.

But there is always a way to solve this problem, you can use babel-plugin from this npm to solve this problem.

```js
// babel.config.js
module.exports = {
  plugins: ['@rosmarinus/common-utils/babel-plugin'],
};
```
npm package: @rosmarinus/compiler-kit
Description: compiler kit for rosmarinus projects
Latest version: 0.2.2

# @rosmarinus/compiler-kit

<p align="center">
  <a href="https://www.npmjs.com/package/@rosmarinus/compiler-kit"><img src="https://img.shields.io/npm/v/@rosmarinus/compiler-kit" alt="npm package"></a>
  <a href="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml"><img src="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml/badge.svg" alt="build status"></a>
  <a href="https://pr.new/rosmarinus-project/rosmarinus-universal"><img src="https://developer.stackblitz.com/img/start_pr_dark_small.svg" alt="Start new PR in StackBlitz Codeflow"></a>
</p>

This is a compiler utils in babel and htmlparser2.

## Installation
```sh
npm install @rosmarinus/compiler-kit
```

## Usage

### ES
```typescript
import { esCompiler } from '@rosmarinus/compiler-kit';
const ast = esCompiler.parse('const a = 1;');

esCompiler.walker(ast, {
  // babel traverse
});

const codeGen = esCompiler.builder(ast);
```

### HTML
```typescript
import { htmlCompiler } from '@rosmarinus/compiler-kit';
const ast = htmlCompiler.parse('<div>hello world</div>');

htmlCompiler.walker(ast, {
  // htmlparser2 traverse
});

const codeGen = htmlCompiler.builder(ast);
```
npm package: @rosmarinus/eslint-config-rosmarinus
Description: eslint config
Author: JOJO
Latest version: 1.0.6

# @rosmarinus/eslint-config-rosmarinus

This is a commonly used eslint configuration.

# How to use
```javascript
// .eslintrc.js
module.exports = {
  extends: ['@rosmarinus/eslint-config-rosmarinus'],
};
```

### Vue Project
```javascript
// .eslintrc.js
module.exports = {
  extends: ['@rosmarinus/eslint-config-rosmarinus', '@rosmarinus/eslint-config-rosmarinus/vue'],
};
```

### React Project
```javascript
// .eslintrc.js
module.exports = {
  extends: ['@rosmarinus/eslint-config-rosmarinus', '@rosmarinus/eslint-config-rosmarinus/react'],
};
```
npm package: @rosmarinus/html-entities-decoder
Description: html-entities-decoder for rosmarinus projects
Latest version: 0.0.3

# @rosmarinus/html-entities-decoder

<p align="center">
  <a href="https://www.npmjs.com/package/@rosmarinus/html-entities-decoder"><img src="https://img.shields.io/npm/v/@rosmarinus/template-name" alt="npm package"></a>
  <a href="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml"><img src="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml/badge.svg" alt="build status"></a>
  <a href="https://pr.new/rosmarinus-project/rosmarinus-universal"><img src="https://developer.stackblitz.com/img/start_pr_dark_small.svg" alt="Start new PR in StackBlitz Codeflow"></a>
</p>

# Install
```bash
npm install @rosmarinus/html-entities-decoder
```
npm package: @rosmarinus/i18n
Description: i18n for rosmarinus
Latest version: 1.2.1

# @rosmarinus/i18n

<a href="https://github.com/rosmarinus-project/i18n/actions/workflows/publish.yml"><img src="https://github.com/rosmarinus-project/i18n/actions/workflows/publish.yml/badge.svg" alt="build status"></a> <a href="https://pr.new/rosmarinus-project/i18n"><img src="https://developer.stackblitz.com/img/start_pr_dark_small.svg" alt="Start new PR in StackBlitz Codeflow"></a>

i18n for rosmarinus projects.

# How to Install

```bash
npm i @rosmarinus/i18n
```
npm package: @rosmarinus/import-map-generator
Description: a tool to generate a import map json
Latest version: 0.2.6

# @rosmarinus/import-map-generator

<p align="center">
  <a href="https://www.npmjs.com/package/@rosmarinus/import-map-generator"><img src="https://img.shields.io/npm/v/@rosmarinus/import-map-generator" alt="npm package"></a>
  <a href="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml"><img src="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml/badge.svg" alt="build status"></a>
  <a href="https://pr.new/rosmarinus-project/rosmarinus-universal"><img src="https://developer.stackblitz.com/img/start_pr_dark_small.svg" alt="Start new PR in StackBlitz Codeflow"></a>
</p>

Generate an import map from your source code, which can be used to load modules in sub path.

# Install
```bash
npm install @rosmarinus/import-map-generator -D
```

# Usage

## CLI
```bash
rosmarinus-import-map-generator gen-export-map --config map.config.js
```

## API
```typescript
import { genExportMap } from '@rosmarinus/import-map-generator';

await genExportMap({
  input: ['src/modules/*.ts'];
  outputFileName: 'dist/map.json';
  cwd: process.cwd();
});

```

# Configuration
```javascript
// map.config.js
module.exports = {
  // glob pattern to find all files that should be included in the export map
  input: ['src/modules/*.ts'],
  exclude: [],
  // output file name
  outputFileName: 'dist/map.json',
  // current working directory
  srcDir: 'src',
};
```
npm package: @rosmarinus/local-publish-tool
Description: local publish tool for rosmarinus
Latest version: 2.0.1

# @rosmarinus/local-publish-tool

<p align="center">
  <a href="https://www.npmjs.com/package/@rosmarinus/local-publish-tool"><img src="https://img.shields.io/npm/v/@rosmarinus/local-publish-tool" alt="npm package"></a>
  <a href="https://github.com/rosmarinus-project/local-publish-tool/actions/workflows/publish.yml"><img src="https://github.com/rosmarinus-project/local-publish-tool/actions/workflows/publish.yml/badge.svg" alt="build status"></a>
  <a href="https://pr.new/rosmarinus-project/local-publish-tool"><img src="https://developer.stackblitz.com/img/start_pr_dark_small.svg" alt="Start new PR in StackBlitz Codeflow"></a>
</p>

This is an npm package publishing tool, and finally triggers github actions through push tag.

This npm is convenient for self-publishing and encapsulates the following publishing process:
1. Change the version number locally
2. Run single test locally
3. Tag and push to remote end
4. git actions release

# How to Install

```bash
npm i @rosmarinus/local-publish-tool -D
```

# How To Publish With It
```bash
rosmarinus-publish
```
npm package: @rosmarinus/nest-core
Description: nest core modules for rosmarinus projects
Latest version: 2.1.8

# @rosmarinus/nest-core

<p align="center">
  <a href="https://www.npmjs.com/package/@rosmarinus/nest-core"><img src="https://img.shields.io/npm/v/@rosmarinus/nest-core" alt="npm package"></a>
  <a href="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml"><img src="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml/badge.svg" alt="build status"></a>
  <a href="https://pr.new/rosmarinus-project/rosmarinus-universal"><img src="https://developer.stackblitz.com/img/start_pr_dark_small.svg" alt="Start new PR in StackBlitz Codeflow"></a>
</p>

 

This npm package contains some function encapsulation commonly used in development, which is more engineering-oriented.

# How to Install

```bash
npm i @rosmarinus/nest-core
```

# Modules introduction

1. Context

Context decorator, will automatically encapsulate the context of each interface, for example, it will encapsulate the logger used for the interface

2. AllExceptionsFilter

This module will capture global errors and return uniform results

3. HeadersMiddleware

This module will add Fcgi-Srtime and Request-Id to the headers of all returned results.

4. RedisService and RedisModule

This module encapsulates ioredis into a nest module
npm package: @rosmarinus/node-utils
Description: node-utils for rosmarinus projects
Latest version: 0.3.0

# @rosmarinus/node-utils

<p align="center">
  <a href="https://www.npmjs.com/package/@rosmarinus/node-utils"><img src="https://img.shields.io/npm/v/@rosmarinus/node-utils" alt="npm package"></a>
  <a href="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml"><img src="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml/badge.svg" alt="build status"></a>
  <a href="https://pr.new/rosmarinus-project/rosmarinus-universal"><img src="https://developer.stackblitz.com/img/start_pr_dark_small.svg" alt="Start new PR in StackBlitz Codeflow"></a>
</p>

# Install
```bash
npm install @rosmarinus/node-utils
```
npm package: @rosmarinus/potato-observer
Description: potato-observer for rosmarinus projects
Latest version: 0.0.2

# @rosmarinus/potato-observer

<p align="center">
  <a href="https://www.npmjs.com/package/@rosmarinus/potato-observer"><img src="https://img.shields.io/npm/v/@rosmarinus/potato-observer" alt="npm package"></a>
  <a href="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml"><img src="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml/badge.svg" alt="build status"></a>
  <a href="https://pr.new/rosmarinus-project/rosmarinus-universal"><img src="https://developer.stackblitz.com/img/start_pr_dark_small.svg" alt="Start new PR in StackBlitz Codeflow"></a>
</p>

# Install
```bash
npm install @rosmarinus/potato-observer
```
npm package: @rosmarinus/search
Description: search for rosmarinus projects
Latest version: 0.2.2

# @rosmarinus/search

<p align="center">
  <a href="https://www.npmjs.com/package/@rosmarinus/search"><img src="https://img.shields.io/npm/v/@rosmarinus/search" alt="npm package"></a>
  <a href="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml"><img src="https://github.com/rosmarinus-project/rosmarinus-universal/actions/workflows/publish.yml/badge.svg" alt="build status"></a>
  <a href="https://pr.new/rosmarinus-project/rosmarinus-universal"><img src="https://developer.stackblitz.com/img/start_pr_dark_small.svg" alt="Start new PR in StackBlitz Codeflow"></a>
</p>

# Install
```bash
npm install @rosmarinus/search
```
npm package: @rosnik/browser-sdk
Description: ROSNIK Browser SDK
Author: Nick DiRienzo
Latest version: 0.0.3

# browser-sdk

ROSNIK Browser SDK

## Getting Started

### Install

```sh
npm add @rosnik/browser-sdk
```

### Configuration

Then in your application code:

```js
import { Rosnik } from "@rosnik/browser-sdk"
Rosnik.init({
  apiKey: 'api-key',
  allowedDomains: ["api.example.com"]
})
```

We'll send Journey IDs to the domains allowed.
This allows you to connect events across the frontend and backend.
Alternatively, you can send these headers yourself by not setting
`allowedDomains`, in which case we won't patch `fetch`.

To set active user context:

```js
Rosnik.setUser("user-id")
```

## Tracking Events

You can track the following events:

1. User interactions, e.g. "edit text"

```js
Rosnik.trackUserTextEdit({before: string, after: string })
```

2. Explicit user feedback

```js
Rosnik.trackUserFeedback({ score: number, openFeedback: string });
```

3. Goal completion 

```js
Rosnik.trackUserGoal({goalName: string})
```


## Compatibility notes

We patch `fetch` using `fetch-intercept` so there are
some browsers where we won't automatically send headers
to the AI service: https://caniuse.com/?search=fetch
npm package: @rosnovsky/gatsby-theme-events
Description: This is a proof-of-concept theme. Feel free to use it, however it is not being developed anymore.
Latest version: 1.0.0

# Gatsby Theme Events

This is a proof-of-concept theme. Feel free to use it, however it is not being developed anymore.

For details, see [source repo](https://github.com/rosnovsky/themes/)