open-index/open-npm huggingface dataset:
npm package: @joaoaraujodev/create-app
Description: A NodeJS application generator to scaffold new projects.
Author: Joao Araujo
Latest version: 1.0.11


# What's create-app?

A NodeJS application generator to scaffold new projects.

# Installation

```console
$ npm i -g create-app
```

# Usage

To generate a app:

```console
$ create-app [options] <name>
```

# Command Line Options

```console
# create-app --help
--force           remove directory if exists
--yarn            use yarn (default npm)
-h, --help        display help for command
```

# License

[MIT](LICENSE)
npm package: @joaocara/design-system
Description: Um sistema de design moderno para React construído com Material-UI e TypeScript.
Author: João Cara
Latest version: 1.0.1

# Design System

A modern React design system built with Material-UI and TypeScript.

## Installation

```bash
npm install @your-username/design-system
```

## Usage

```tsx
import React from 'react';
import { Button, theme } from '@your-username/design-system';
import { ThemeProvider } from '@mui/material/styles';

function App() {
  return (
    <ThemeProvider theme={theme}>
      <Button>Click me</Button>
    </ThemeProvider>
  );
}

export default App;
```

## Components

- **Button**: A customized Material-UI button component

## Peer Dependencies

This package requires the following peer dependencies:

- `react >= 18.0.0`
- `react-dom >= 18.0.0`
- `@mui/material >= 5.0.0`
- `@emotion/react >= 11.0.0`
- `@emotion/styled >= 11.0.0`

## Development

```bash
# Install dependencies
npm install

# Start development server
npm run dev

# Build the library
npm run build

# Lint code
npm run lint
```

## License

MIT
npm package: @joaocdvr/react-notion-x
Description: Fast and accurate React renderer for Notion.
Author: Travis Fischer
Latest version: 6.12.15

<p align="center">
  <img alt="React Notion X" src="https://raw.githubusercontent.com/NotionX/react-notion-x/master/media/notion-ts.png" width="689">
</p>

# React Notion X

> Fast and accurate React renderer for Notion.

[![NPM](https://img.shields.io/npm/v/react-notion-x.svg)](https://www.npmjs.com/package/react-notion-x) [![Build Status](https://github.com/NotionX/react-notion-x/actions/workflows/test.yml/badge.svg)](https://github.com/NotionX/react-notion-x/actions/workflows/test.yml) [![Prettier Code Formatting](https://img.shields.io/badge/code_style-prettier-brightgreen.svg)](https://prettier.io)

## Docs

See the [full docs](https://github.com/NotionX/react-notion-x).

## License

MIT © [Travis Fischer](https://transitivebullsh.it)

Support my OSS work by <a href="https://twitter.com/transitive_bs">following me on twitter <img src="https://storage.googleapis.com/saasify-assets/twitter-logo.svg" alt="twitter" height="24px" align="center"></a>
npm package: @joaod3v/eslint-config
Description: ESLint configuration used by Joao Silva.
Author: Joao Silva
Latest version: 1.4.1

# Joao Silva ESLint config

## Whats included?

### ReactJS/NextJS

#### ESLint:

- React/Next plugin;
- React Hooks plugin;
- TypeScript;
- JSX a11y plugin;
- Prettier;

#### Prettier:

- trailingComma: 'es5';
- semi: true;
- singleQuote: true;
- endOfLine: 'auto';


### NodeJS

- TypeScript;
- Prettier;

#### Prettier:

- trailingComma: 'es5';
- semi: true;
- singleQuote: true;
- endOfLine: 'auto';

### React Native

#### ESLint:

- React plugin;
- React Hooks plugin;
- TypeScript;
- Prettier;

#### Prettier:

- trailingComma: 'es5';
- semi: true;
- singleQuote: true;
- endOfLine: 'auto';

## Setup

1. Install the dependencies
```
npm i -D eslint @joaod3v/eslint-config
```

2. Create a `.eslintrc.json` file extending the config:

**NextJS config also serve to ReactJS!**

```
{
  "extends": "@joaod3v/eslint-config/next"
  // "extends": "@joaod3v/eslint-config/node"
  // "extends": "@joaod3v/eslint-config/react-native"
}
```

> You can also use a `.eslintrc.js` instead of JSON if you prefer.
npm package: @joaodotwork/finder-video-thumbnails
Description: Generate macOS Finder thumbnails for video files that don't have one, using ffmpeg + fileicon.
Author: joaodotwork
Latest version: 1.1.0

# finder-video-thumbnails

[![npm version](https://img.shields.io/npm/v/@joaodotwork%2Ffinder-video-thumbnails.svg)](https://www.npmjs.com/package/@joaodotwork/finder-video-thumbnails)
[![license](https://img.shields.io/github/license/joaodotwork/finder-video-thumbnails.svg)](LICENSE)
[![platform](https://img.shields.io/badge/platform-macOS-lightgrey.svg)](https://www.apple.com/macos)

Generate macOS Finder thumbnails for video files that don't have one, using `ffmpeg` and [`fileicon`](https://github.com/mklement0/fileicon).

By default, video files in Finder show a generic icon (or a low-res QuickLook preview that disappears when you scroll away). This tool grabs a frame from each video and sets it as a permanent custom Finder icon — so the thumbnails are always visible, in any view, with the natural aspect ratio preserved.

## Requirements

- macOS (uses `fileicon` which sets `com.apple.FinderInfo` xattr — won't work on Linux/Windows)
- [`ffmpeg`](https://ffmpeg.org/) — `brew install ffmpeg`
- [`fileicon`](https://github.com/mklement0/fileicon) — `brew install fileicon`

## Install

```sh
npm install -g @joaodotwork/finder-video-thumbnails
```

Or run without installing:

```sh
npx @joaodotwork/finder-video-thumbnails <folder>
```

## Usage

```sh
finder-video-thumbnails [options] <folder> [seek_seconds]
```

**Arguments**

- `<folder>` — folder to process (recursive)
- `seek_seconds` — timestamp (in seconds) to grab the frame from. Defaults to `1`

**Options**

- `-h, --help` — show help and exit
- `-V, --version` — print version and exit
- `--force` — re-generate icons even if a custom icon is already set

### Examples

Add thumbnails to every video in `~/Movies` (recursive):

```sh
finder-video-thumbnails ~/Movies
```

Grab the frame at the 5-second mark:

```sh
finder-video-thumbnails ~/Movies 5
```

Re-generate all thumbnails, overwriting existing ones:

```sh
finder-video-thumbnails --force ~/Movies
```

## Supported formats

`.mov`, `.mp4`, `.m4v`, `.avi`, `.mkv`, `.webm` (case-insensitive)

## How it works

For each video without a custom icon:

1. `ffmpeg` extracts a single frame at the seek timestamp.
2. The frame is scaled to fit a 512×512 box, preserving aspect ratio, then padded to a square with a transparent background. This ensures Finder displays the thumbnail with the video's natural aspect ratio rather than stretching it.
3. `fileicon` writes the resulting PNG as the file's custom Finder icon.

Re-runs are idempotent: files that already have a custom icon are skipped unless `--force` is passed.

## License

MIT
npm package: @joaofranciscosantos/babel-plugin-i18n
Description: Multi language builds with Babel. Setup a different build for each language
Author: João Francisco Santos
Latest version: 1.1.12

[![Install Size](https://packagephobia.now.sh/badge?p=@joaofranciscosantos/babel-plugin-i18n)](https://packagephobia.now.sh/result?p=@joaofranciscosantos/babel-plugin-i18n)
[![Npm Version](https://badge.fury.io/js/%40joaofranciscosantos%2Fbabel-plugin-i18n.svg)](https://badge.fury.io/js/%40joaofranciscosantos%2Fbabel-plugin-i18n)
![License](https://img.shields.io/github/license/joaofranciscosantos/babel-plugin-i18n.svg)
[![Dependencies Status](https://david-dm.org/joaofranciscosantos/babel-plugin-i18n/status.svg)](https://david-dm.org/joaofranciscosantos/babel-plugin-i18n)
[![Known Vulnerabilities](https://snyk.io/test/github/joaofranciscosantos/babel-plugin-i18n/badge.svg?targetFile=package.json)](https://snyk.io/test/github/joaofranciscosantos/babel-plugin-i18n?targetFile=package.json)

# babel-plugin-i18n
Multi language builds with Babel. Setup a different build for each language.

:sparkles: Provide translations during compile time.

:sparkles: No need to include MB translations files in your bundle.

:sparkles: End of repetitive http request with translations.

## API
```
i18n(text: string, language?: string) : string
```
- `text` original text.
- `language` *(optional)* overrides the language set by the plugin.

## Setup
```bash
npm install --save-dev @joaofranciscosantos/babel-plugin-i18n
```

and add to `.babelrc.js`:
```javascript
module.exports = api => ({
  plugins: [["@joaofranciscosantos/babel-plugin-i18n"]]
});
```

to override options:
```javascript
module.exports = api => ({
  plugins: [["@joaofranciscosantos/babel-plugin-i18n", {
    source: ["translations.json", "translations/canada.json", "yo.json"],
    target: "i18n",
    language: "pt"
  }]]
});
```
- `source` *(array)* the path with translations files. They will be all merged during resolution. Defaults to `.dictionary.json`.
- `target` *(string)* function that will apply the translation. Defaults to `i18n`.
- `language` *(string)* set the translation language. Defaults to `en`.

## Examples
- `i18n("dog", "es")` transpiles to `"perro"`
- `i18n("dog")` transpiles to `"doggy"`
- `i18n("none", "?")` transpiles to `"none"`
  *(returns the original text because no translation was provided)*

and translations files must have a similar structure:
```json
{
  "keyword": {
    "language": "translation"
  },
  "dog": {
    "en": "doggy",
    "pt": "cão",
    "es": "perro",
    "it": "cane"
  }
}
```

## FAQ
```bash
ReferenceError: i18n is not defined
```
Check your build folder. You should not see the 'i18n' function. Review your babel configuration.

```bash
TS2304: Cannot find name 'i18n'
```
You should `declare var i18n: any;`
npm package: @joaoftnunes/easy-email-editor
Description: Email editor
Author: m-Ryan
Latest version: 5.0.1

# Easy-email-editor

## Introduction

Email render and preview container.

## usage

```sh
$ npm install --save easy-email-editor
```

or

```sh
$ yarn add easy-email-editor
```

```js
import React from 'react';
import { BlockManager } from '@cubxinc/easy-email-core';
import { EmailEditor, EmailEditorProvider } from '@cubxinc/easy-email-editor';
import 'easy-email-editor/lib/style.css';

const initialValues = {
  subject: 'Welcome to Easy-email',
  subTitle: 'Nice to meet you!',
  content: BlockManager.getBlockByType(BasicType.PAGE).create({}),
};

export function App() {
  return (
    <EmailEditorProvider
      data={initialValues}
      height={'calc(100vh - 72px)'}
    >
      {({ values }) => {
        return <EmailEditor />;
      }}
    </EmailEditorProvider>
  );
}
```
npm package: @joaoftnunes/easy-email-extensions
Description: Email editor
Author: m-Ryan
Latest version: 5.0.1

# Easy-email-extensions

## usage

```sh
$ npm install --save easy-email-extensions
```

or

```sh
$ yarn add easy-email-extensions
```

```js
import React from 'react';
import { BlockManager, BasicType, AdvancedType } from '@cubxinc/easy-email-core';
import { EmailEditor, EmailEditorProvider } from '@cubxinc/easy-email-editor';
import { ExtensionProps, StandardLayout } from '@cubxinc/easy-email-extensions';

import 'easy-email-editor/lib/style.css';
import 'easy-email-extensions/lib/style.css';

const categories: ExtensionProps['categories'] = [
  {
    label: 'Content',
    active: true,
    blocks: [
      {
        type: AdvancedType.TEXT,
      },
      {
        type: AdvancedType.IMAGE,
        payload: { attributes: { padding: '0px 0px 0px 0px' } },
      },
      {
        type: AdvancedType.BUTTON,
      },
      {
        type: AdvancedType.SOCIAL,
      },
      {
        type: AdvancedType.DIVIDER,
      },
      {
        type: AdvancedType.SPACER,
      },
      {
        type: AdvancedType.HERO,
      },
      {
        type: AdvancedType.WRAPPER,
      },
    ],
  },
  {
    label: 'Layout',
    active: true,
    displayType: 'column',
    blocks: [
      {
        title: '2 columns',
        payload: [
          ['50%', '50%'],
          ['33%', '67%'],
          ['67%', '33%'],
          ['25%', '75%'],
          ['75%', '25%'],
        ],
      },
      {
        title: '3 columns',
        payload: [
          ['33.33%', '33.33%', '33.33%'],
          ['25%', '25%', '50%'],
          ['50%', '25%', '25%'],
        ],
      },
      {
        title: '4 columns',
        payload: [['25%', '25%', '25%', '25%']],
      },
    ],
  },
];

const initialValues = {
  subject: 'Welcome to Easy-email',
  subTitle: 'Nice to meet you!',
  content: BlockManager.getBlockByType(BasicType.PAGE)!.create({}),
};

export default function App() {

  return (
    <EmailEditorProvider
      data={initialValues}
      height={'calc(100vh - 72px)'}
      autoComplete
      dashed={false}
    >
      {({ values }) => {
        return (
          <StandardLayout
            categories={categories}
            showSourceCode={true}
          >
            <EmailEditor />
          </StandardLayout>
        );
      }}
    </EmailEditorProvider>
  );
}

```