open-index/open-npm huggingface dataset:
npm package: @samesonium/qreactor
Description: QReactor - фреймворк для разработки backend приложений с удобным ООП и декораторами.  Данный фреймворк предоставляет слой абстракции над сервером Fastify, но при это даёт возможность обращаться и к API Fastify и его плагинов напрямую.
Author: samsonium
Latest version: 0.0.1

# QReactor
QReactor - фреймворк для разработки backend приложений с удобным ООП и декораторами. 
Данный фреймворк предоставляет слой абстракции над сервером Fastify, но при это даёт возможность обращаться и к API Fastify и его плагинов напрямую.

### История обновлений
Весь ченджлог: [смотреть](./CHANGELOG.md)

### Состав
- Fastify - сервер с роутингом. Плагины:
    - Compress - сжатие данных с помощью gzip
    - Session - поддержка сессий
    - Middle - поддержка Middleware
    - Cookie - поддержка cookie
    - CORS - поддержка CORS
    - JWT - генерация и подпись JWT токенов
- Reflect Metadata - вспомогательный элемент для декораторов

### Установка
1. Установите пакет с помощью команды:
    `npm install @samsonium/qreactor` или `yarn add @samsonium/qreactor`
2. Во входной точке программы создайте инстанс класса QReactor:
    ```typescript
    import QReactor from '@samsonium/qreactor';

    // Импортируйте роутеры
    import ApiRouter from './api';

    // Инстанциируйте QReactor и добавьте роутеры
    const q = new QReactor(config);
    q.add(ApiRouter);

    // Запустите сервер
    q.launch(process.env['PORT']);
    ```

### Реализованные фичи
_В процессе..._

### Планируемые фичи
- [ ] - REST API запросы
    - [ ] - Декоратор роутера
    - [ ] - Декоратор GET-запроса
    - [ ] - Декоратор POST-запроса
    - [ ] - Декоратор PUT-запроса
    - [ ] - Декоратор PATCH-запроса
    - [ ] - Декоратор DELETE-запроса
- [ ] - Улучшенное сжатие
    - [ ] - Сжатие на стороне сервера
    - [ ] - Отдельный пакет для распаковки данных на клиенте
- [ ] - Декоратор Middleware
- [ ] - Поддержка HTTPS
npm package: @sametcelikbicak/auto-focus
Description: Auto focus directive for Angular projects
Author: Samet ÇELİKBIÇAK
Latest version: 0.0.8

<div align="center">

 <img src="https://raw.githubusercontent.com/sametcelikbicak/library-workspace/4983d6293ed59d824f612bea8fc2080180d73527/projects/auto-focus/assets/auto-focus.svg" alt="Logo" width="256" height="256">

# Auto Focus

Auto focus directive for Angular projects. You can easily focus your input by using `ngxAutoFocus` directive.
</div>

## Installation

```
npm i @sametcelikbicak/auto-focus
```

## Usage

Import `AutoFocusModule` in `AppModule` `imports` array
```typescript
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppComponent } from './app.component';
import { AutoFocusModule } from '@sametcelikbicak/auto-focus';

@NgModule({
  declarations: [AppComponent],
  imports: [BrowserModule, AutoFocusModule],
  providers: [],
  bootstrap: [AppComponent],
})
export class AppModule {}
```

After that you can use auto focus `ngxAutoFocus` directive in template

```html
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Auto Focus Usage</title>
    <style>
      .container {
        display: flex;
        flex: 1;
        flex-direction: column;
        align-items: center;
      }
      input {
        width: 300px;
        margin: 1em;
        height: 20px;
      }
    </style>
  </head>
  <body>
    <div class="container">
      <input placeholder="Auto focus directive does not use" />
      <input ngxAutoFocus placeholder="Auto focus directive is using" />
    </div>
  </body>
</html>
```

![Auto Focus](https://github.com/sametcelikbicak/library-workspace/blob/main/assets/auto-focus.png?raw=true)
npm package: @sametkeskin/react-native-video-player
Description: A customizable video player component for React Native with gesture controls, fullscreen support, and a modern UI.
Author: sametkeskin
Latest version: 0.2.2

# React Native Video Player

[![npm version](https://img.shields.io/npm/v/@sametkeskin/react-native-video-player.svg)](https://www.npmjs.com/package/@sametkeskin/react-native-video-player)
[![npm downloads](https://img.shields.io/npm/dm/@sametkeskin&react-native-video-player.svg)](https://www.npmjs.com/package/@sametkeskin/react-native-video-player)

A customizable video player component for React Native with gesture controls, fullscreen support, and a modern UI.

## Features

- 🎮 Gesture controls for seeking and volume
- 🖥️ Fullscreen support
- ⏯️ Play/Pause controls
- 🎚️ Progress bar with seeking
- 🔊 Volume control
- 🎨 Customizable UI
- ⚡ Built with React Native Reanimated for smooth animations

https://github.com/user-attachments/assets/e5ce8cad-b08e-428d-a314-155a3189a2bc

## Installation

```bash
npm install @sametkeskin/react-native-video-player

# Install peer dependencies
npm install react-native-video react-native-gesture-handler react-native-reanimated
```

## Usage

```jsx
import VideoPlayer from 'react-native-video-player';

const App = () => {
  return (
    <VideoPlayer
      source={videoSource} // https://docs.thewidlarzgroup.com/react-native-video/component/props#source
      style={styles.player}
      title={title}
      initialSubtitleLanguage="en"
      initialQualityHeight={1080}
      initialAudioLanguage="en"
      onBack={() => {
        router.back();
      }}
    />
  );
};
```

## Props

| Prop                    | Type      | Default  | Description                                           |
| ----------------------- | --------- | -------- | ----------------------------------------------------- |
| source                  | Object    | required | Video source object containing URL and other metadata |
| style                   | ViewStyle | {}       | Container style for the video player                  |
| title                   | string    | -        | Title of the video to display in the player           |
| initialSubtitleLanguage | string    | 'en'     | Initial subtitle language code (e.g., 'en', 'es')     |
| initialQualityHeight    | number    | 1080     | Initial video quality height in pixels                |
| initialAudioLanguage    | string    | 'en'     | Initial audio language code (e.g., 'en', 'es')        |
| onBack                  | Function  | -        | Callback function when back button is pressed         |

## Contributing

Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.

## License

MIT

## Author

Samet Keskin
npm package: @samfp/pi-essentials
Description: Essential extensions for pi — auto session naming, compact header, clipboard images, image pruning, markdown viewer, screenshots, and subagents.
Latest version: 0.1.0

# pi-essentials

Essential extensions for [pi](https://github.com/badlogic/pi-coding-agent) — quality-of-life improvements that every setup should have.

## Install

```bash
pi install npm:pi-essentials
```

## What's Included

| Extension | What it does |
|-----------|-------------|
| **Auto Session Name** | Names sessions from the first user message — no more `unnamed-session-1` |
| **Compact Header** | Clean table-style startup header with keybinding reference |
| **Clipboard Image** | Paste base64 image data (PNG/JPEG) directly into the prompt |
| **Image Context Pruner** | Strips images from older messages to save context tokens |
| **Markdown Viewer** | Rendered markdown preview on Ctrl+O for `.md` files, plus `/mdview` and `/mermaid` commands |
| **Screenshot** | `/ss` command — grab clipboard image or send a file to the agent. Requires kitty terminal + `kitten` binary |
| **Subagent** | `subagent` and `subagent_status` tools for spawning background pi instances whose results auto-inject back |

## Requirements

- pi 0.57+
- For screenshots: kitty terminal with `clipboard_control read-clipboard`, tmux with `allow-passthrough on`, `~/.local/bin/kitten`
- For mermaid rendering: internet access (uses mermaid.ink API)

## License

MIT
npm package: @samfp/pi-lesson-extractor
Description: Pi extension that extracts reusable problem-solving patterns from session transcripts — retry loops, error→fix pairs, user corrections, and confirmed approaches.
Latest version: 0.1.0

# pi-lesson-extractor

A [pi](https://github.com/mariozechner/pi) extension that automatically extracts reusable problem-solving patterns from session transcripts.

## What it does

Runs pattern detection on session shutdown and session switch (`/new`), extracting:

1. **Retry loop detection** — same tool fails then succeeds with a different approach
2. **Error→fix pair detection** — error messages mapped to their resolutions
3. **User correction detection** — user messages that corrected agent behavior
4. **Confirmation detection** — user messages that validated an approach (positive signal)

Candidates accumulate with confidence scores and auto-promote to permanent [pi-memory](https://github.com/samfoy/pi-memory) lessons when they reach threshold.

## Installation

```bash
pi install @samfp/pi-lesson-extractor
```

Requires `@samfp/pi-memory` as a peer dependency (for lesson promotion).

## How it works

### Lifecycle

- **`session_before_switch`** — runs fast heuristic pattern detection on current session entries before `/new` or `/resume`
- **`session_shutdown`** — same extraction on process exit
- **`session_start`** — checks for pending candidates, runs auto-promotion pipeline, shows notification count

### Auto-promotion pipeline

Candidates that meet promotion criteria (high confidence, seen across multiple sessions) are automatically promoted to permanent pi-memory lessons on the next session start.

### Tools

| Tool | Description |
|------|-------------|
| `lesson_candidates` | List pending lesson candidates by status |
| `lesson_accept` | Promote a candidate to a permanent lesson |
| `lesson_reject` | Reject a candidate permanently |

### Commands

| Command | Description |
|---------|-------------|
| `/lessons-review` | Interactive review of pending candidates |

## Storage

Candidates are stored in a SQLite database at `~/.pi/agent/lesson-extractor/candidates.db`.

## License

MIT
npm package: @samfp/pi-rose-pine
Description: Rosé Pine theme for pi. Soho vibes for your coding agent.
Latest version: 0.1.0

# pi-rose-pine

[Rosé Pine](https://rosepinetheme.com/) theme for [pi](https://shittycodingagent.ai).

## Install

```bash
pi install npm:pi-rose-pine
```

Then select it via `/settings` → theme → `rose-pine`.

## Colors

Based on the Rosé Pine palette — muted, warm tones with just enough contrast for long sessions.

| Role | Color |
|------|-------|
| Accent | Iris `#c4a7e7` |
| Success | Foam `#9ccfd8` |
| Error | Love `#eb6f92` |
| Warning | Gold `#f6c177` |
| Headings | Rose `#ebbcba` |
| Code | Foam `#9ccfd8` |

## License

MIT
npm package: @samfurlong/directus-panel-calendar
Description: A calendar panel for Directus
Latest version: 1.0.3

# @samfurlong/directus-panel-calendar

A calendar panel extension for Directus.

## Description
This extension provides a calendar panel for the Directus platform, allowing you to display and interact with events in a calendar view.

## Installation

1. Clone or download this repository.
2. Build the extension:
   ```sh
   npm install
   npm run build
   ```
3. Copy the `dist` folder to your Directus extensions directory, or use the provided scripts to link it.

## Usage
After installation, add the calendar panel to your Directus dashboard.

## Development
- `npm run dev` — Watch and build the extension during development.
- `npm run build` — Build the extension for production.

## License
MIT