open-index/open-npm huggingface dataset:
npm package: @nizza/core
Description: The `core` library contains reusable code pieces and standards that can be utilized across other libraries and applications within the monorepo. These code pieces are independent of dependencies from other libraries in the monorepo but are essential for c
Latest version: 0.8.4

# Core

The `core` library contains reusable code pieces and standards that can be utilized across other libraries and applications within the monorepo. These code pieces are independent of dependencies from other libraries in the monorepo but are essential for certain processes.

## Key Principle

The `core` library must not depend on any other libraries within the monorepo. This RULE must always be maintained to avoid circular dependency issues.

## Versioning

Manage library versioning using the `@jscutlery/semver` tool, which automates semantic versioning based on your git history:

```bash
pnpm nx run core:version
```

For more details, refer to the official [SemVer documentation](https://github.com/jscutlery/semver).

## Publishing

Publish the library, automatically applying the appropriate tag based on the target environment:

- For feature branches (alpha release):
  ```bash
  pnpm nx run core:publish:feat
  ```
- For development (beta release):
  ```bash
  pnpm nx run core:publish:dev
  ```
- For production releases (stable release):
  ```bash
  pnpm nx run core:publish:prod
  ```

## Building

Build the library, specifying the target environment:

- For development environment:
  ```bash
  pnpm nx run core:build:dev
  ```
- For production:
  ```bash
  pnpm nx run core:build:prod
  ```

## Generating GraphQL Types

Generate GraphQL types by connecting to the GraphQL API backend, utilizing [GraphQL Code Generator](https://the-guild.dev/graphql/codegen) for generating types based on your GraphQL schema:

```bash
pnpm nx run core:api-graphql-types
```

This process ensures that the frontend and backend are in sync by generating types that match the current schema.

## Cleaning

Clean up the library's build artifacts, removing any unnecessary files and ensuring a tidy workspace:

```bash
pnpm nx run core:clean
```

## Testing

Run unit tests for the library:

```bash
pnpm nx run core:test
```

## Linting

Lint the project to ensure code quality and adherence to standards:

```bash
pnpm nx run core:lint
```
npm package: @nizza/devkit
Description: DevKit is a library designed to provide the necessary resources to manage and extend the Nizza and Perant monorepos. Featuring a reusable Vite.js codebase, it simplifies the creation of `vite.config.ts` files for every library and application within the m
Latest version: 0.2.6

# DevKit

DevKit is a library designed to provide the necessary resources to manage and extend the Nizza and Perant monorepos. Featuring a reusable Vite.js codebase, it simplifies the creation of `vite.config.ts` files for every library and application within the monorepo. Additionally, it includes several NX executors to aid in performing tasks within apps and libs efficiently.

## Key Features

- **Simplified Vite.js Configuration:** Easily generate `vite.config.ts` files leveraging our reusable codebase.
- **Custom NX Executors:** Automate common tasks with our specially designed executors for our monorepos.

## Executors

DevKit includes a variety of executors to automate and ease the handling of tasks within your project, such as:

- **Environments:** Generates environment files (`environment.ts`, `environment.local.ts`, etc.) in the `src/environments` directory, utilizing the project's configuration.
- **VTEX Link:** Links a package to a VTEX project, facilitating integration and deployment of changes.
- **Publish:** Automates the process of publishing packages to npm, including version checks and support for dry run testing.
- **Update Executors File:** Updates paths in the `executors.json` file to point to the correct locations after changes in the project structure.
- **Deploy:** Deploys project assets to an AWS S3 bucket and invalidates CloudFront distribution cache.

## Usage

To use the executors included in DevKit, you don't need NX installed globally due to the inclusion of an `nx` script in your root `package.json`. Each executor is configured and run through the `nx.json` or via specific NX commands using `pnpm`.

## Working with DevKit

DevKit streamlines the development and management processes within the Nizza and Perant monorepos. Here are the key commands you can use:

### Building

```bash
pnpm nx run devkit:build:dev
pnpm nx run devkit:build:prod
```

### Linting

```bash
pnpm nx run devkit:lint
```

### Cleaning

```bash
pnpm nx run devkit:clean
```

### Versioning

Manage your project versions effectively.

```bash
pnpm nx run devkit:version
```

### Environment-Specific Commands

DevKit supports environment-specific commands for `dev`, `staging`, and `prod`, allowing easy management and deployment across different development stages.

For example, to deploy your project in a production environment:

```bash
pnpm nx run devkit:deploy:prod
```
npm package: @nizza/event-products
Description: The `event-products` library manages all processes related to products and collections on the platform.
Latest version: 0.2.30

# Event Products

The `event-products` library manages all processes related to products and collections on the platform.

**Note**: This library might also be considered for managing other product-related aspects beyond the platform, but further analysis is required.

## Versioning

Manage library versioning using the `@jscutlery/semver` tool, which automates semantic versioning based on your git history:

```bash
pnpm nx run event-products:version
```

For more details, refer to the official [SemVer documentation](https://github.com/jscutlery/semver).

## Publishing

Publish the library, automatically applying the appropriate tag based on the target environment:

- For feature branches (alpha release):
  ```bash
  pnpm nx run event-products:publish:feat
  ```
- For development (beta release):
  ```bash
  pnpm nx run event-products:publish:dev
  ```
- For production releases (stable release):
  ```bash
  pnpm nx run event-products:publish:prod
  ```

## Building

Build the library, specifying the target environment and targeting ES2019:

- For development environment:
  ```bash
  pnpm nx run event-products:build:dev
  ```
- For production:
  ```bash
  pnpm nx run event-products:build:prod
  ```

## Cleaning

Clean up build artifacts to maintain a tidy workspace:

```bash
pnpm nx run event-products:clean
```

## Testing

Run unit tests for the library:

```bash
pnpm nx run event-products:test
```

## Linting

Lint the project to ensure code quality and adherence to standards:

```bash
pnpm nx run event-products:lint
```
npm package: @nizza/highlight-products
Description: The `highlight-products` library manages all processes related to the functionality to highlight products
Latest version: 0.1.1-beta.0

# Highlight Products

The `highlight-products` library manages all processes related to the functionality to highlight products

## Versioning

Manage library versioning using the `@jscutlery/semver` tool, which automates semantic versioning based on your git history:

```bash
pnpm nx run highlight-products:version
```

For more details, refer to the official [SemVer documentation](https://github.com/jscutlery/semver).

## Publishing

Publish the library, automatically applying the appropriate tag based on the target environment:

- For feature branches (alpha release):
  ```bash
  pnpm nx run highlight-products:publish:feat
  ```
- For development (beta release):
  ```bash
  pnpm nx run highlight-products:publish:dev
  ```
- For production releases (stable release):
  ```bash
  pnpm nx run highlight-products:publish:prod
  ```

## Building

Build the library, specifying the target environment and targeting ES2019:

- For development environment:
  ```bash
  pnpm nx run highlight-products:build:dev
  ```
- For production:
  ```bash
  pnpm nx run highlight-products:build:prod
  ```

## Cleaning

Clean up build artifacts to maintain a tidy workspace:

```bash
pnpm nx run highlight-products:clean
```

## Testing

Run unit tests for the library:

```bash
pnpm nx run highlight-products:test
```

## Linting

Lint the project to ensure code quality and adherence to standards:

```bash
pnpm nx run highlight-products:lint
```
npm package: @nizza/ui
Description: The `ui` library stores reusable UI elements utilizing the philosophy of [Atomic Design](https://reactarchitecture.org/architecture/atomic-design). This approach allows for a modular and scalable architecture for developing user interfaces.
Latest version: 0.3.29

# UI Library

The `ui` library stores reusable UI elements utilizing the philosophy of [Atomic Design](https://reactarchitecture.org/architecture/atomic-design). This approach allows for a modular and scalable architecture for developing user interfaces.

## Versioning

Manage library versioning using the `@jscutlery/semver` tool, which automates semantic versioning based on your git history:

```bash
pnpm nx run ui:version
```

For more details, refer to the official [SemVer documentation](https://github.com/jscutlery/semver).

## Publishing

Publish the library, automatically applying the appropriate tag based on the target environment:

- For feature branches (alpha release):
  ```bash
  pnpm nx run ui:publish:feat
  ```
- For development (beta release):
  ```bash
  pnpm nx run ui:publish:dev
  ```
- For production releases (stable release):
  ```bash
  pnpm nx run ui:publish:prod
  ```

## Building

Build the library, specifying the target environment:

- For development environment:
  ```bash
  pnpm nx run ui:build:dev
  ```
- For production:
  ```bash
  pnpm nx run ui:build:prod
  ```

## Cleaning

Clean up build artifacts to maintain a tidy workspace:

```bash
pnpm nx run ui:clean
```

## Testing

Run unit tests for the library:

```bash
pnpm nx run ui:test
```

## Linting

Lint the project to ensure code quality and adherence to standards:

```bash
pnpm nx run ui:lint
```
npm package: @nizza/utils
Description: The `utils` library contains reusable code pieces or utilities that can be used across other libraries and applications. It differs from the core library as it can reference other libraries to generate components, patterns, or code that facilitate a proce
Latest version: 0.5.15

# Utils

The `utils` library contains reusable code pieces or utilities that can be used across other libraries and applications. It differs from the core library as it can reference other libraries to generate components, patterns, or code that facilitate a process.

**Example**: `libs/utils/src/lib/product-data-source` is the functionality that handles resolving products for both the player and the selector that allows associating a product with a snack size video. The `product-data-source` could easily be a piece of `core` library code as it's central and indispensable. However, it's located in `utils` because resolving platform products depends on the `event-products` library, and including it in `core` would break the sole rule that core must not depend on any other library.

## Versioning

Manage library versioning using the `@jscutlery/semver` tool, which automates semantic versioning based on your git history:

```bash
pnpm nx run utils:version
```

For more details, refer to the official [SemVer documentation](https://github.com/jscutlery/semver).

## Publishing

Publish the library, automatically applying the appropriate tag based on the target environment:

- For feature branches (alpha release):
  ```bash
  pnpm nx run utils:publish:feat
  ```
- For development (beta release):
  ```bash
  pnpm nx run utils:publish:dev
  ```
- For production releases (stable release):
  ```bash
  pnpm nx run utils:publish:prod
  ```

## Building

Build the library, specifying the target environment:

- For development environment:
  ```bash
  pnpm nx run utils:build:dev
  ```
- For production:
  ```bash
  pnpm nx run utils:build:prod
  ```

## Cleaning

Clean up build artifacts to maintain a tidy workspace:

```bash
pnpm nx run utils:clean
```

## Testing

Run unit tests for the library:

```bash
pnpm nx run utils:test
```

## Linting

Lint the project to ensure code quality and adherence to standards:

```bash
pnpm nx run utils:lint
```