open-index/open-npm huggingface dataset:
npm package: @retronew/adonis-magnify
Description: Plug and play full-text search for your Adonis application.
Author: Martin Paucot
Latest version: 0.3.1

<div align="center">
<br/>

## @retronew/adonis-magnify

### Plug and play full-text search for your Adonis application

<br/>
</div>

<div align="center">

<!-- automd:badges color="brightgreen" license name="@retronew/adonis-magnify" bundlephobia packagephobia -->

[![npm version](https://img.shields.io/npm/v/@retronew/adonis-magnify?color=brightgreen)](https://npmjs.com/package/@retronew/adonis-magnify)
[![npm downloads](https://img.shields.io/npm/dm/@retronew/adonis-magnify?color=brightgreen)](https://npm.chart.dev/@retronew/adonis-magnify)
[![bundle size](https://img.shields.io/bundlephobia/minzip/@retronew/adonis-magnify?color=brightgreen)](https://bundlephobia.com/package/@retronew/adonis-magnify)

<!-- /automd -->

<!-- automd:coverage -->

![Coverage](https://img.shields.io/badge/coverage-81%25-brightgreen)

<!-- /automd -->

</div>

## Description

Magnify provides a simple, driver based solution for adding full-text search to your Lucid models. Using Lucid hooks, Magnify automatically keep your search indexes in sync with your database.

Currently, Magnify ships with [Algolia](https://algolia.com), [Meilisearch](https://www.meilisearch.com/) and [Typesense](https://typesense.org/) engines. Furthermore, writing custom engines is simple and you are free to extend Magnify with your own search implementations.

```ts title="app/models/post.ts"
import { compose } from "@adonisjs/core/helpers";
import { BaseModel, column } from "@adonisjs/lucid/orm";
import { Searchable } from "@retronew/adonis-magnify";

export default class Post extends compose(BaseModel, Searchable) {
  @column({ isPrimary: true })
  declare id: string;

  @column()
  declare title: string;
}
```

```ts
import Post from "#models/post";

const posts = await Post.search("Adonis").take(10).get();
```

## Quickstart

[Installation & Getting Started](https://friendsofadonis.github.io/docs/magnify/getting-started)

## License

[MIT licensed](LICENSE.md).
npm package: @retronew/adonis-maintenance
Description: Put your Adonis application in maintenance mode
Author: Martin Paucot
Latest version: 0.13.1

<div align="center">
<br/>

## @retronew/adonis-maintenance

### Safely put your Adonis application in maintenance mode

<br/>
</div>

<div align="center">

<!-- automd:badges color="brightgreen" license name="@retronew/adonis-maintenance" bundlephobia packagephobia -->

[![npm version](https://img.shields.io/npm/v/@retronew/adonis-maintenance?color=brightgreen)](https://npmjs.com/package/@retronew/adonis-maintenance)
[![npm downloads](https://img.shields.io/npm/dm/@retronew/adonis-maintenance?color=brightgreen)](https://npm.chart.dev/@retronew/adonis-maintenance)
[![bundle size](https://img.shields.io/bundlephobia/minzip/@retronew/adonis-maintenance?color=brightgreen)](https://bundlephobia.com/package/@retronew/adonis-maintenance)

<!-- /automd -->

<!-- automd:coverage -->

![Coverage](https://img.shields.io/badge/coverage-0%25-red)

<!-- /automd -->

</div>

## Quickstart

[Installation & Getting Started](https://friendsofadonis.github.io/docs/maintenance/getting-started)

## License

[MIT licensed](LICENSE.md).
npm package: @retronew/bytes
Description: Tiny TypeScript utilities for converting between raw byte values and human-readable byte strings.
Latest version: 0.1.1

# @retronew/bytes

Tiny TypeScript utilities for converting between raw byte values and human-readable byte strings.

## Features

- Format numeric byte values into `B`/`KB`/`MB`/... strings
- Parse strings like `1.5mb`, `42 KB`, or `1024` back into bytes
- Choose return shape: primitive, tuple, or structured object
- Safe and throwing parse variants for different error-handling styles

## Installation

```bash
npm install @retronew/bytes
```

## Quick Start

```ts
import {
  formatBytes,
  parseBytes,
  parseBytesOrThrow,
  safeParseBytes,
} from '@retronew/bytes'

formatBytes(1536) // "1.5KB"
formatBytes(1536, { unitSeparator: ' ' }) // "1.5 KB"
formatBytes(1536, { output: 'array' }) // ["1.5", "KB"]

parseBytes('1.5KB') // 1536
parseBytes('2 mb', { output: 'array' }) // [2097152, "MB"]

const safe = safeParseBytes('bad-input')
if (!safe.ok) {
  console.error(safe.error.message)
}

parseBytesOrThrow('1gb') // 1073741824
```

## API

### `formatBytes(value, options?)`

Formats a numeric byte value.

- `value: number`: byte count to format (must be finite)
- `options.decimalPlaces?: number`: decimal precision (default: `2`)
- `options.fixedDecimals?: boolean`: keep trailing zeros (default: `false`)
- `options.output?: 'string' | 'array' | 'object'`: return shape (default: `'string'`)
- `options.thousandsSeparator?: string`: separator for grouped integers
- `options.unit?: string`: preferred unit (`b`, `kb`, `mb`, ..., `yb`)
- `options.unitSeparator?: string`: separator between value and unit in string mode

Returns:

- `string | null` when `output` is `'string'` (default)
- `[string, string] | null` when `output` is `'array'`
- `{ value: string; unit: string; bytes: number } | null` when `output` is `'object'`

---

### `parseBytes(val, options?)`

Parses a value into bytes.

- `val: string | number`: numeric value or unit string (for example: `1024`, `'1kb'`, `'1.25 MB'`)
- `options.output?: 'number' | 'array' | 'object'`: return shape (default: `'number'`)

Returns:

- `number | null` when `output` is `'number'` (default)
- `[number, string] | null` when `output` is `'array'`
- `{ value: number; unit: string; bytes: number } | null` when `output` is `'object'`

---

### `safeParseBytes(val, options?)`

Same parsing behavior as `parseBytes`, but never returns `null`.

Returns:

- `{ ok: true; value: ... }` on success
- `{ ok: false; error: TypeError }` on failure

---

### `parseBytesOrThrow(val, options?)`

Same parsing behavior as `parseBytes`, but throws a `TypeError` on invalid input.

## Development

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

Lint and format with Ultracite:

```bash
npm run check
npm run fix
```
npm package: @retronew/unocss-preset-shadcn
Description: UnoCSS's preset for Shadcn
Author: retronew
Latest version: 0.2.0

# unocss-preset-shadcn [![npm version](https://img.shields.io/npm/v/@retronew/unocss-preset-shadcn?color=red&logo=npm)](https://www.npmjs.com/package/@retronew/unocss-preset-shadcn) [![npm downloads](https://img.shields.io/npm/dt/@retronew/unocss-preset-shadcn?color=red&logo=npm)](https://www.npmjs.com/package/@retronew/unocss-preset-shadcn) [![MIT license](https://img.shields.io/github/license/retronew/unocss-preset-shadcn)]() [![GitHub stars](https://img.shields.io/github/stars/retronew/unocss-preset-shadcn?color=blue)](https://github.com/retronew/unocss-preset-shadcn)

A collection of UnoCSS utilities for shadcn/vue

---

## Table of Contents

- [Getting Started](#getting-started)
  - [Installation](#installation)

## Getting Started

### Installation

1. Install the package with `pnpm`:

   ```sh
   pnpm install -D @retronew/unocss-preset-shadcn
   ```

2. Add the preset to your UnoCSS configuration file (typically `uno.config.ts` or similar):

   ```javascript
   import { defineConfig } from 'unocss';
   import { presetShadcn } from '@retronew/unocss-preset-shadcn';

   export default defineConfig({
     presets: [
       presetShadcn(),
       // other presets...
     ],
     // other configurations...
   });
   ```