open-index/open-npm huggingface dataset:
npm package: @rastrear/acml
Description: Rastreamento de pacotes do Mercado Livre enviados pela Azul Cargo
Author: Micael Souza
Latest version: 0.1.1

# azul-cargo-mercado-livre

Rastreamento de pacotes do Mercado Livre enviados pela Azul Cargo

## Instalação

```bash
  npm i --save @rastrear/azul-cargo-mercado-livre
```

## Exemplo

```javascript
const rastrear = require('@rastrear/azul-cargo-mercado-livre');

rastrear.allEvents('1111111').then((res) => {
  console.log(res);
  // {
  //   number: '111-11111111',
  //   events: [
  //     {
  //       status: '250 - Corte De Carga Do Veiculo',
  //       date: '14/04/2020 20:57',
  //       location: 'MELP2 - GUARULHOS / SP'
  //     },
  //     {
  //       status: '100 - Emissao Do Conhecimento De Transporte.',
  //       date: '14/04/2020 20:38',
  //       location: 'MELP2 - GUARULHOS / SP'
  //     },
  //     ...
  //   ]
  // }
});
```

#
npm package: @rastrear/rastrear
Description: Exibe o resultado do rastro de objetos transportados pelos Correios.
Author: micaelsouza
Latest version: 0.1.2

# @rastrear/rastrear

## Instalando

```bash
npm i --save @rastrear/rastrear
```

## Exemplo

```javascript
const rastrear = require("@rastrear/rastrear");

rastrear
  .lastEvent("PX000000000BR")
  .then(res => {
    console.log(res.data);
    // {
    //   versao: '3.0',
    //   quantidade: '1',
    //   pesquisa: 'Lista de Objetos',
    //   resultado: 'Todos os eventos',
    //   objeto: [
    //     {
    //       numero: 'PX000000000BR',
    //       sigla: 'PX',
    //       nome: 'ENCOMENDA PAC (ETIQUETA LOGICA) ',
    //       categoria: 'ENCOMENDA PAC',
    //       evento: [Array] // apenas o último evento
    //     }
    //   ]
    // }
  })
  .catch(err => console.log(err));

rastrear
  .allEvents("PX000000000BR")
  .then(res => {
    console.log(res.data);
    // {
    //   versao: '3.0',
    //   quantidade: '1',
    //   pesquisa: 'Lista de Objetos',
    //   resultado: 'Todos os eventos',
    //   objeto: [
    //     {
    //       numero: 'PX000000000BR',
    //       sigla: 'PX',
    //       nome: 'ENCOMENDA PAC (ETIQUETA LOGICA) ',
    //       categoria: 'ENCOMENDA PAC',
    //       evento: [Array] // todos os eventos do pacote
    //     }
    //   ]
    // }
  })
  .catch(err => console.log(err));
```

> Também é possível passar um `Array` com mais de um código de rastreamento.
npm package: @rasukarusan/table-to-clipboard
Description: Convert text data (TSV, CSV, Markdown, space-separated) to clipboard format for spreadsheets
Author: Rasukarusan
Latest version: 1.0.0


<img width="512" height="717" alt="Gemini_Generated_Image_3oi7cq3oi7cq3oi7" src="https://github.com/user-attachments/assets/1fa7d4d9-d6ba-41fc-83f9-5d0defc77e0d" />


# table-to-clipboard

テキストデータ（TSV, CSV, Markdown, スペース区切り）をスプレッドシートに貼り付け可能な形式に変換するCLIツール。

## 動作環境

- macOS（`pbcopy`, `textutil` を使用）
- Node.js >= 16

## インストール

```bash
npm install -g @rasukarusan/table-to-clipboard
```

## 使い方

```bash
# 標準入力からデータを読み込み、クリップボードにコピー
pbpaste | table-to-clipboard

# ファイルから読み込み
cat data.csv | table-to-clipboard
```

変換後、Google スプレッドシートや Excel に直接貼り付けできます。

## 対応フォーマット

| フォーマット   | 説明                  | 自動検出                           |
| -------------- | --------------------- | ---------------------------------- |
| TSV            | タブ区切り            | タブ文字があれば検出               |
| CSV            | カンマ区切り          | カンマがあれば検出                 |
| Markdown       | `\|A\|B\|` 形式       | `\|` で始まるか `\|...\|` を含む   |
| スペース区切り | 2つ以上の連続スペース | 上記以外で連続スペースがあれば検出 |

### 自動検出の優先順位

1. Markdown テーブル
2. TSV（タブ）
3. CSV（カンマ）
4. スペース区切り

## オプション

```bash
# フォーマットを明示的に指定
table-to-clipboard --csv
table-to-clipboard --tsv
table-to-clipboard --spaces
table-to-clipboard --markdown

# 1行目をヘッダーとして扱わない
table-to-clipboard --no-header

# ヘルプ
table-to-clipboard --help
```

## 使用例

### TSV

```bash
echo -e "名前\t年齢\t職業\n田中\t30\tエンジニア" | table-to-clipboard
```

### CSV

```bash
echo "名前,年齢,職業
田中,30,エンジニア" | table-to-clipboard
```

### Markdown テーブル

```bash
echo '|名前|年齢|職業|
|---|---|---|
|田中|30|エンジニア|' | table-to-clipboard
```

### スペース区切り（ターミナル出力のコピー用）

```bash
echo "名前    年齢    職業
田中    30      エンジニア" | table-to-clipboard
```

### セル内改行を含む CSV

```bash
echo 'Name,Comment
"田中","これは
複数行の
コメントです"' | table-to-clipboard
```

## 開発

```bash
# 依存のインストール
pnpm install

# 開発（TypeScript直接実行）
echo "A,B,C" | pnpm run dev

# ビルド
pnpm run build

# ビルド済みCLIの動作確認
echo "A,B,C" | pnpm run start

# テスト
pnpm test
```
npm package: @rataqa/amil
Description: Common workers that can integrate with AMQP broker
Author: Rataqa Team
Latest version: 1.0.6

# rataqa/amil

Common workers that can integrate with AMQP broker

## requirements

* Node.js v22.x, v24.x is recommended
* npm v11.x

## development

```sh
# install Node modules
npm i

# modify code inside ./src

# build
npm run build

# test
npm run test
npm run test:coverage

# review/modify version number in package.json
# login and publish
npm login
npm publish --access=public
```

## usage

```sh
npm i @rataqa/amil
```

Example:

* [src/__tests__](src/__tests__)
* Check demo apps in https://github.com/rataqa/demo
npm package: @rataqa/amir
Description: Common workers that can integrate with AMQP broker
Author: Rataqa Team
Latest version: 1.0.3

# rataqa/amir

AMQP message consumer that passes the task to workers

## requirements

* Node.js v22.x, v24.x is recommended
* npm v11.x

## development

```sh
# install Node modules
npm i

# modify code inside ./src

# build
npm run build

# test
npm run test
npm run test:coverage

# review/modify version number in package.json
# login and publish
npm login
npm publish --access=public
```

## usage

```sh
npm i @rataqa/amir
```

Example:

* [src/__tests__](src/__tests__)
* Check demo apps in https://github.com/rataqa/demo
npm package: @rataqa/jalb
Description: HTTP client that combines modern and popular libs
Author: Rataqa Team
Latest version: 1.0.4

# rataqa/jalb

HTTP client that combines modern and popular libs

## requirements

* Node.js v22.x, v24.x is recommended
* npm v11.x

## development

```sh
# install Node modules
npm i

# modify code inside ./src

# build
npm run build

# review/modify version number in package.json
# login and publish
npm login
npm publish --access=public
```

## usage

```sh
npm i @rataqa/jalb
```

Example:

* [src/__tests__](src/__tests__)
* Check demo apps in https://github.com/rataqa/demo
npm package: @rataqa/muhit
Description: Library to work with Node environment settings
Author: Rataqa Team
Latest version: 1.0.2

# rataqa/muhit

Library to work with Node environment settings

## requirements

* Node.js v22.x, v24.x is recommended
* npm v11.x

## development

```sh
# install Node modules
npm i

# modify code inside ./src

# build
npm run build

# review/modify version number in package.json
# login and publish
npm login
npm publish --access=public
```

## usage

```sh
npm i @rataqa/muhit
```

Example:

* [src/__tests__](src/__tests__)
* Check demo apps in https://github.com/rataqa/demo
npm package: @rataqa/sijil
Description: Logger using pino
Author: Rataqa Team
Latest version: 1.0.4

# @rataqa/sijil

Logger using pino

## requirements

* Node.js v22.x, v24.x is recommended
* npm v11.x

## development

```sh
# install Node modules
npm i

# modify code inside ./src

# build
npm run build

# review/modify version number in package.json
# login and publish
npm login
npm publish --access=public
```

## usage

```sh
npm i @rataqa/sijil
```

Example:

* [src/__tests__](src/__tests__)
* Check demo apps in https://github.com/rataqa/demo
npm package: @rataqa/takid
Description: JSON Schema validation using OpenAPI schemas and AJV
Author: Rataqa Team
Latest version: 1.0.2

# rataqa/takid

JSON Schema validation using OpenAPI schemas and AJV

## requirements

* Node.js v22.x, v24.x is recommended
* npm v11.x

## development

```sh
# install Node modules
npm i

# modify code inside ./src

# build
npm run build

# test
npm run test
npm run test:coverage

# review/modify version number in package.json
# login and publish
npm login
npm publish --access=public
```

## usage

```sh
npm i @rataqa/takid
```

Example:

* [src/__tests__](src/__tests__)
* Check demo apps in https://github.com/rataqa/demo
npm package: @rataqa/wasit
Description: Common Express.js middleware
Author: Rataqa Team
Latest version: 1.0.4

# wasit

Common Express.js middleware

## requirements

* Node.js v22.x, v24.x is recommended
* npm v11.x

## development

```sh
# install Node modules
npm i

# modify code inside ./src

# build
npm run build

# test
npm run test
npm run test:coverage

# review/modify version number in package.json
# login and publish
npm login
npm publish --access=public
```

## usage

```sh
npm i @rataqa/wasit
```

Example:

* [src/__tests__](src/__tests__)
* Check demo apps in https://github.com/rataqa/demo
npm package: @ratatat/core
Description: Framework-agnostic terminal runtime powered by Ratatat's Rust diff engine
Latest version: 0.1.0

# @ratatat/core

Low-level terminal runtime for Ratatat.

This package provides native rendering primitives, raw-buffer APIs, input parsing, and inline/fullscreen runtime helpers.

## Install

```bash
npm install @ratatat/core
```

## Quick start

```ts
import { Renderer, TerminalGuard, terminalSize } from '@ratatat/core'

const { cols, rows } = terminalSize()
const guard = new TerminalGuard()
const renderer = new Renderer(cols, rows)
const buf = new Uint32Array(cols * rows * 2)

// Paint one cyan cell at (0,0)
buf[0] = 'A'.codePointAt(0)!
buf[1] = 6

renderer.render(buf)

process.on('SIGINT', () => {
  guard.leave()
  process.exit(0)
})
```

## Main exports

- `Renderer`, `terminalSize`, `TerminalGuard`
- `Cell`, `StyleMasks`
- `InputParser`
- `RatatatApp`
- `createInlineLoop`

## Docs

- [Quickstart: Raw-buffer mode](../docs/quickstart-raw-buffer.md)
- [Raw Buffer API](../docs/raw-buffer.md)
- [TypeScript Buffer Guide](../docs/ts-buffer-guide.md)
- [Rendering Modes](../docs/rendering-modes.md)

For React components/hooks and Ink-compatible APIs, see [`@ratatat/react`](../react/README.md).
npm package: @ratatat/react
Description: React adapter and Ink-compatible API for Ratatat
Latest version: 0.1.0

# @ratatat/react

React renderer for Ratatat with an Ink-compatible API.

Built on top of [`@ratatat/core`](../core/README.md), this package provides components, hooks, layout, and render lifecycle APIs for terminal UIs.

## Install

```bash
npm install @ratatat/react react
```

## Quick start

```tsx
import React from 'react'
import { render, Box, Text, useInput } from '@ratatat/react'

function App() {
  useInput((input, key) => {
    if (key.ctrl && input === 'c') process.exit(0)
  })

  return (
    <Box padding={1}>
      <Text color="cyan">Hello from @ratatat/react</Text>
    </Box>
  )
}

render(<App />)
```

## Main exports

- Rendering: `render`, `renderInline`, `renderToString`
- Components: `Box`, `Text`, `Static`, `Transform`, `Spinner`, `ProgressBar`, `Newline`, `Spacer`
- Hooks: `useInput`, `useApp`, `usePaste`, `useMouse`, `useFocus`, `useFocusManager`, `useScrollable`, `useTextInput`, `useWindowSize`, `useStdout`, `useStderr`

## Docs

- [Quickstart: React mode](../docs/quickstart-react.md)
- [Components reference](../docs/components.md)
- [Hooks reference](../docs/hooks.md)
- [Ink compatibility matrix](../docs/ink-compat.md)
- [Examples catalog](../docs/examples.md)

For low-level non-React rendering, use [`@ratatat/core`](../core/README.md).
npm package: @ratchapol-an/react-feather
Description: React component for Feather icons, forked from https://github.com/feathericons/react-feather
Author: Ratchapol Anantawat
Latest version: 4.26.2

## React Feather Icons

[![npm version](https://img.shields.io/npm/v/react-feather.svg?style=flat-square)](https://www.npmjs.com/package/@ratchapol-an/react-feather)
[![npm downloads](https://img.shields.io/npm/dm/react-feather.svg?style=flat-square)](https://www.npmjs.com/package/@ratchapol-an/react-feather)

#### What is react-feather?
react-feather is a collection of simply beautiful open source icons for React.js. Each icon is designed on a 24x24 grid with an emphasis on simplicity, consistency and readability.

[Explore icons](https://bit.dev/feathericons/react-feather) and play with examples.
<p align="center">
  <a href="https://bit.dev/feathericons/react-feather"><img src="https://i.imagesup.co/images2/371e9a2b398a5d7cef54a956d959e4534b290a55.gif"></a>
</p>

#### Based on Feather Icons  ```v4.26.0```

#### Version `2.0.0` adds support for tree-shaking, to help you reduce bundle size.

### Installation
    npm install react-feather --save

### Usage

```javascript
import React from 'react';
import { Camera } from 'react-feather';

const App = () => {
  return <Camera />
};

export default App;
```

Icons can be configured with inline props:
```javascript
<Camera color="red" size={48} />
```

If you can't use ES6 imports, it's possible to include icons from the compiled folder ./dist.
```javascript
var Camera = require('react-feather/dist/icons/camera').default;

var MyComponent = React.createClass({
  render: function () {
    return (
      <Camera />
    );
  }
});
```
You can also include the whole icon pack:

```javascript
import React from 'react';
import * as Icon from 'react-feather';

const App = () => {
  return <Icon.Camera />
};

export default App;
```
npm package: @ratcopycat/license-lens
Description: Scan node_modules and generate a markdown report of all package licenses
Latest version: 1.0.1

# @ratcopycat/license-lens

A tiny CLI tool to scan node_modules and generate a markdown report of all package licenses.

## Installation

```bash
npm install -g @ratcopycat/license-lens
```

Or use directly with npx (no installation required):

```bash
npx @ratcopycat/license-lens
```

## Usage

Run in your project directory:

```bash
npx @ratcopycat/license-lens
```

This will create a `LICENSES.md` file with a table of all dependencies and their licenses.

### Options

```
-o, --output <file>   Output file path (default: LICENSES.md)
-d, --dir <path>      Target directory to scan (default: current directory)
-h, --help            Show help message
-v, --version         Show version number
```

### Examples

```bash
# Generate report in current directory
npx license-lens

# Custom output file
npx license-lens -o licenses-report.md

# Scan a specific directory
npx license-lens -d ./my-project
```

## Output

The generated markdown file includes:

- Total package count
- MIT vs Non-MIT license breakdown
- Sorted table with package name, version, and license type
- Visual indicators (✅ for MIT, ❌ for non-MIT)

## Programmatic Usage

```javascript
const { scanLicenses, scanNodeModules, generateMarkdown } = require('license-lens');

// Full scan with file output
scanLicenses('./my-project', 'LICENSES.md');

// Or use individual functions
const packages = scanNodeModules('./my-project/node_modules');
const markdown = generateMarkdown(packages);
```

## License

MIT
npm package: @ratenkaufbyeasycredit/easycredit-components
Description: Th ratenkauf by easyCredit Web Components are a set of VueJS web components to be universally used in e-commerce platforms like Magento or Shopware. The web components ease integration of ratenkauf by easyCredit installments payment solution by providing 
Author: NETZKOLLEKTIV GmbH
Latest version: 0.1.3
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# ratenkauf by easyCredit Web Components

Th ratenkauf by easyCredit Web Components are a set of VueJS web components to be universally used in e-commerce platforms like Magento or Shopware. The web components ease integration of ratenkauf by easyCredit installments payment solution by providing versatile web frontend elements for marketing and checkout.

## Available Elements

### Checkout Label

The Checkout Label component can be used to display ratenkauf by easyCredit as payment method within a list. It is used to display the payment method consistently accross different stores.

<img src="https://raw.githubusercontent.com/netzkollektiv/easycredit-components/integration/examples/easycredit-components-checkout-label.png" alt="Checkout Label component" width="400">

```
<easycredit-components-checkout-label>
```

### Checkout

The Checkout component acts as payment form and will usually be shown after the payment method was selected by the user. The user can instantly interact with the payment method and will be asked for further information (e.g. prefix, privacy agreement) prior to being redirected.

<img src="https://raw.githubusercontent.com/netzkollektiv/easycredit-components/integration/examples/easycredit-components-checkout.png" alt="Checkout component" width="400">

```
<easycredit-components-checkout amount="2999" webshop-id="1234">
```

## Project setup
```
yarn install
```

### Compiles and hot-reloads for development
```
yarn serve
```

### Compiles and minifies for production
```
yarn build
```

### Lints and fixes files
```
yarn lint
```
npm package: @ratespecial/core
Description: Common components for applications
Latest version: 3.0.1

# Angular Core

Provides common components used in the majority of our Angular sites.

## Using the library

```
yarn add @ratespecial/core
```

All components are stand alone, and all services are provided in root.  Use what you need, where you need it.
Include a specific module if you only need certain functionality, or the core module if you would like the whole package


For detailed documentation on each component, [see the wiki](https://bitbucket.org/rscode/angular-core/wiki/Home)

## Running unit tests

Run `ng test core` to execute the unit tests via [Karma](https://karma-runner.github.io).

## Further help

To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI Overview and Command Reference](https://angular.io/cli) page.
npm package: @ratesspot/types
Description: Shared TypeScript types for RatesSpot API and clients
Author: RatesSpot Team
Latest version: 1.0.0

# @ratesspot/types

Shared TypeScript type definitions for RatesSpot API and client applications.

## Installation

```bash
npm install @ratesspot/types
# or
yarn add @ratesspot/types
```

## Usage

### In Frontend Application

```typescript
import {
  Merchant,
  CurrentUserResponse,
  ApiResponse
} from '@ratesspot/types';

// Use with your API client
class ApiClient {
  async getMerchant(): Promise<ApiResponse<Merchant>> {
    return this.request<Merchant>('/api/merchants');
  }

  async getCurrentUser(): Promise<ApiResponse<CurrentUserResponse>> {
    return this.request<CurrentUserResponse>('/api/auth/me');
  }
}
```

### In Backend Application

```typescript
import {
  CurrentUserResponse,
  CreateMerchantDto
} from '@ratesspot/types';

export const getCurrentUser = async (
  req: Request,
  res: Response
): Promise<void> => {
  const user: CurrentUserResponse = await getUserDetails(req.user.id);
  res.json({ success: true, data: user });
};
```

## Available Types

### Auth Types
- `CurrentUserResponse` - User profile with merchant associations
- `MerchantInfo` - Merchant information for user
- `JWTPayload` - JWT token payload structure
- `ApiKeyPayload` - API key payload
- `CreateApiKeyData` - API key creation DTO
- `UpdateApiKeyData` - API key update DTO

### API Types
- `ApiResponse<T>` - Standard API response wrapper
- `PaginationMeta` - Pagination metadata
- `PaginatedRequest` - Pagination request parameters

### Merchant Types
- `Merchant` - Complete merchant entity
- `CreateMerchantDto` - Merchant creation DTO
- `UpdateMerchantDto` - Merchant update DTO

## Development

To add new types:
1. Add type definitions to appropriate file in `src/`
2. Export from the file
3. Ensure it's exported from `src/index.ts`
4. Run `npm run build` to compile
5. Publish new version

## Publishing

```bash
npm version patch|minor|major
npm publish
```
npm package: @rather-labs/nrc-721-sdk
Description: SDK for interacting with NFTs under NRC-721 strandard in Layer 1 of Nervos Network
Author: Rather Labs, Inc.
Latest version: 0.0.19

# <img src="logo.svg" alt="Rather Labs" height="40px">

**Javascript SDK to interact with NRC-721 compliant NFTs on the Nervos Network.**

## Introduction
`@rather-labs/nrc-721-sdk` is the SDK used to interact with NFTs compliant with NRC-721 Standard on Layer 1 of [Nervos Network](https://www.nervos.org/).

### Instalation

#### In Node.js

The preferred way to install the library is using npm package manager. Simply type the following into a terminal window:

```
npm install @rather-labs/nrc-721-sdk
```

## Usage

```
const NrcSdk = require("@rather-labs/nrc-721-sdk");

const nodeUrl = "http://localhost:8114";
const indexerUrl = "http://localhost:8116";

// Inside an async block
const nftSdk = await NrcSdk.initialize({
  nodeUrl,
  indexerUrl,
});
```

Initialization is needed to load dependencies from the blockchain. After this, the sdk can be used to create Factory Cells, Nfts Cells and read them from the blockchain.

The node and indexer urls should be provided, the ones from the example above should work when running them local. For testing purposes Nervos offers a public testnet node:

```
nodeUrl = "http://3.235.223.161:18114";
indexerUrl = "http://3.235.223.161:18116";
```

The Factory cell uses the built-in `TYPE ID` contract so they can be created without the need to deploy any contract to the blockchain. A NRC-721 contract has been deployed on testnet network and can be used to test implementations:

```
nftContractTypeScript = {
  codeHash: "0x00000000000000000000000000000000000000000000000000545950455f4944",
  hashType: "type",
  args: "0xc2407f8b6ef27a10c35a55ab589e6bfc28db3f2fe5b08cab63384c88a02a14e6"
};
```

## License

Rather Labs NRC-721 is released under the [MIT License](LICENSE).
npm package: @rathfi/logger
Description: Logger used by rathfi
Author: Rath
Latest version: 1.0.2

# @rathfi/logger

logger used by rath finance

## Installation

```bash
npm install @rathfi/logger
```

## Usage

```typescript
import { Logger } from '@rathfi/logger';

const logger = new Logger();

// Set log level (optional, defaults to INFO)
logger.setLogLevel('LOG');

function myFunction() {
  // Basic logging
  logger.log({ Id: '123', message: 'Processing started' });
  
  try {
    // ... your code ...
    logger.debug({ Id: '123', status: 'success' });
  } catch (error) {
    logger.error({ Id: '123', error: error.message });
  }
}

// Output format examples:
// myFunction(id=123,message=Processing started)
// debug_myFunction(id=123,status=success)
// error_myFunction(id=123,error=Something went wrong)
```

## Log Levels

Available log levels (in order of priority):
- FATAL (0)
- ERROR (1)
- WARN (2)
- INFO (3) - default
- DEBUG (4)
- LOG (5) - regular logging

## API

### logger.setLogLevel(level)
Set the minimum log level. Messages below this level will not be logged.

### Logging Methods
- `logger.fatal(params)`
- `logger.error(params)`
- `logger.warn(params)`
- `logger.info(params)`
- `logger.debug(params)`
- `logger.log(params)` (alias for regular logging)

## License

MIT
npm package: @rathfi/tachyon
Description: TypeScript SDK for Tachyon API
Author: Rathfi
Latest version: 0.1.19

# Tachyon SDK (TypeScript)

A developer-friendly TypeScript SDK to interact with the Tachyon API.

## Installation
```bash
npm install @rathfi/tachyon
```

## Build

```bash
npm install
npm run build
```

## Test
1. Run the tachyon api
2. Run crayon cron

Run:
```bash
npm run test
```

## License
MIT
npm package: @rathnasorg/i4tow
Description: CLI tool to create photo albums backed by GitHub repos
Latest version: 0.0.19

# i4tow

**Turn any photo folder into a beautiful, shareable gallery in seconds.**

[![npm version](https://img.shields.io/npm/v/@rathnasorg/i4tow.svg)](https://www.npmjs.com/package/@rathnasorg/i4tow)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

[Live Demo](https://i4tow.date/a/i4tow-album) | [View Albums](https://i4tow.date/p/rathnasorg)

---

## Why i4tow?

**No servers. No databases. No monthly fees. No ads.**

i4tow creates stunning photo galleries hosted on GitHub Pages - completely free, forever. One command turns your photo folder into a shareable album with a permanent link.

Perfect for:
- **Wedding photographers** sharing albums with clients
- **Event photographers** delivering photos
- **Anyone** who wants a simple way to share photo collections

---

## Install

```bash
npm install -g @rathnasorg/i4tow
```

> Requires [Node.js](https://nodejs.org) 18+

---

## Quick Start

```bash
i4tow /path/to/photos --token YOUR_GITHUB_TOKEN --username YOUR_GITHUB_USERNAME
```

That's it! Your album is live at:
```
https://i4tow.date/a/i4tow-[folder-name]
```

### Example

```bash
i4tow "/Users/john/Photos/Smith Wedding" --token ghp_xxxx --username johnphoto
```

Creates: `https://i4tow.date/a/i4tow-SmithWedding`

---

## Batch Mode

Upload multiple albums at once:

```bash
i4tow /Photos/2024 --batch --token YOUR_TOKEN --username YOUR_USERNAME
```

```
/Photos/2024/
  ├── Johnson Wedding/     → i4tow-JohnsonWedding
  ├── Smith Anniversary/   → i4tow-SmithAnniversary
  └── Corporate Event/     → i4tow-CorporateEvent
```

---

## Options

```
i4tow <folder> [options]

Options:
  -t, --token      GitHub personal access token (required)
  -u, --username   GitHub username (required)
  -d, --dry-run    Preview without creating albums
  -b, --batch      Create album for each subfolder
  -s, --single     Treat entire folder as one album
  -h, --help       Show help
```

---

## Features

### Gallery View
Clean, responsive grid that looks great on any device.

### Slideshow Mode
Auto-playing slideshow with shuffle - perfect for events or big screens.

### Slideshow All
Play through ALL your albums at once - great for portfolios.

### View All Albums
See every album at: `https://i4tow.date/p/YOUR_USERNAME`

### Easy Sharing
Direct links + QR codes for instant sharing with clients.

---

## Supported Formats

- JPEG (.jpg, .jpeg)
- PNG (.png)
- HEIC (.heic) - iPhone photos
- WebP (.webp)
- GIF (.gif)

---

## Getting a GitHub Token

1. Go to [GitHub Settings > Developer Settings > Personal Access Tokens](https://github.com/settings/tokens)
2. Generate new token (classic) with `repo` scope
3. Copy and use with `--token`

[Detailed guide](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)

---

## Need Help?

- Email: **i4tow@rathnas.com**
- Want to self-host? We can help!

---

Made with photographers in mind.
npm package: @rathoretaruncodes/nexus-common
Description: Nexus-common is a foundational TypeScript library designed specifically for validation purposes within the Nexus framework.
Latest version: 1.0.5


# Introduction

Nexus-common is a foundational TypeScript library designed specifically for validation purposes within the Nexus framework. 

It operates on the principle of type-first validation, ensuring type safety throughout the development process. 

Notably, nexus-common functions as an independent npm module, signifying its reusability across both client-side and server-side implementations within Nexus. 

This approach effectively eliminates the need for duplicate type declarations, streamlining development and promoting code consistency.



## Some other great aspects:

- Zod as dependency.
- Works in Node.js and all modern browsers.
- Tiny: 16kb



## Installation


```bash
  npm install @rathoretaruncodes/nexus-common

  yarn add @rathoretaruncodes/nexus-common

```
npm package: @ratio.me/ratio-react-native-library
Description: Usage tools for connecting to Ratio services
Author: Peter Iskandar
Latest version: 0.11.0

# @ratio.me/ratio-react-native-library

Useful tools for connecting to Ratio services

## Installation

```sh
npm install @ratio.me/ratio-react-native-library
```

## Documentation

[https://developer.ratio.me/docs/integration-methods/react-native](https://developer.ratio.me/docs/integration-methods/react-native)
npm package: @ratiofu/timerjs
Description: precision timer for JavaScript projects
Author: Thomas Jung
Latest version: 0.1.2
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# timerjs
Precision Timer for JavaScript projects

## Install
```bash
yarn add @ratiofu/timerjs
```

## Use
```javascript
import Timer from '@ratiofu/timerjs'

const timer = new Timer()
// some stuff here
console.log('with pretend-accuracy decimals', timer.µs)
console.log('rounded', timer.µsec)
```
npm package: @rational/portal
Description: React component for createPortal
Author: Zhongliang Wang
Latest version: 1.0.0-beta.3

# Portal

The Portal component is a declarative way to use `createPortal` in React, which allows you to render a component into a DOM node that exists outside the DOM hierarchy of the parent component.

## Features

- Next.js Support: The Portal component works with Next.js `appDir` and React Server Component out of the box. No rehydration issues.

## Installation

```sh
npm install @rational/portal
pnpm add @rational/portal
yarn add @rational/portal
```

## Usage

```jsx
import { Portal } from '@rational/portal';

<Portal>
  <div>Portal content</div>
</Portal>;
```