open-index/open-npm huggingface dataset:
npm package: @kpachbiu/censure-js
Description: Dirty russian/english words filter
Author: Konstantin Nikolaev
Latest version: 1.7.6

# Censure

This TypeScript library provides robust and customizable filtering of swear words and offensive language from text. 

## Features

**Multiple Filtering Modes**:** Choose from blacklist (exact word matching), whitelist (allowing only specific words), and regular expression-based filtering for highly flexible control.

**Customizable Word Lists:** Easily add, remove, or modify swear words to tailor the filter to your specific needs and context. Support for multiple languages is easily implemented by adding language-specific word lists.

**Contextual Awareness:** Employ advanced techniques to reduce false positives by considering word context (e.g., "ass" in "assassin" would not be flagged). This feature may require additional configuration or external dependencies.

**Performance Optimization:** Designed for efficiency, minimizing impact on application performance, even with large word lists.

**Easy Integration:** Clean, well-documented API for seamless integration into any TypeScript project.

**Extensibility:** Easily extend the functionality with custom filters and pre-processing logic.

## Support languages

* English

* Russian

### Regex types:

``тупица``            **тупица**, потупицива, потупица, тупицава // не использовать объединение |
``тупиц[а-я]+``       **тупиц**а, по**тупиц**ива, по**тупиц**а, **тупиц**ава
``^тупиц[а-я]+ ``     **тупиц**а, потупицива, потупица, **тупиц**ава
``туп|тупиц[а-я]+``   **туп**ица, по**тупиц**ива, потупица, тупицава
``потуп|тупица``      **тупица**, **потуп**ицива, по**тупица**, **тупица**ва

Комбинируйте правил через | для быстрой работы

 - Whole word - ``cunt``
**cuntamulungo** return false, **cunt** - return true

 - Part of a word with any letters further - ``ass[a-z]+``
**asshole** and **assist** return true

 - Starts with part of a word with any letters further - ``^ass[a-z]+``
**asshole** and **assist** return true

Part of word and Combine part of words can be union, for example:
``cunt|ass|ass[a-z]+|^ass[a-z]+``

### Get started:
```js
import Censure from 'censure-js'

const censure = new Censure();

// Searches if there any abusive words in the text
censure.isBad('Original phrase with abusive words'); // return: bool

// Replace abusive words from string
censure.replace('Original phrase with abusive words'); // return: string (cleaned text)

// Fixing abusive words inside string
censure.fix('Original phrase with abusive words'); // return: string (fixed text)
```
npm package: @kpajtasev/date-util
Description: JavaScript date helper
Author: Kristijan Pajtasev
Latest version: 4.1.0

# date-helper
JavaScript date helper

Still in development. Currently supports only getting formated date.

## Instalation

### package.json
"date-helper-util": "x.y.z"

## Usage
```
var dateHelper = require("date-helper-util");
```

### With date object
```
var date = new Date(2015, 1, 3);
date = dateHelper(date);
date.getFormated("DD/MM/YYYY"); // outputs 03/02/2015
```

### With date string and date format string
```
date = dateHelper("03/02/2015", "DD/MM/YYYY");
date.getFormated("YYYY/MM/DD"); // outputs 2015/02/03
```

## Formats
- DD - date, if less then 10 prepends with 0
- D - date, if less then 10 NOT prepended with 0
- MMM - month as a month name (January, February, ...)
- MM - month, if less then 10 prepends with 0
- M - month, if less then 10 NOT prepended with 0
- YYYY - full year

## Setting date values
```
var date = dateHelper(new Date());
```

### Setting year
```
date.setYear(2016);
```

### Setting month
```
date.setMonth(1); // accepts 1-12
```

### Setting date
```
date.setDate(1);
```

## Getting date values

## Getting year
```
date.getYear();
```

## Getting month
Returns values 1-12 and not like native JavaScript 0-11
```
date.getMonth();
```

## Getting date
```
date.getDate();
```

## Adding values to date
Values can be added by calling .add function with type and amount parameters. Type is string day, month or year.
```
date = dateHelper(new Date());
date.add("day", 1);
date.add("month", 1);
date.add("year", 1);
```

## Subtracting values to date
Values can be subtracted by calling .sub function with type and amount parameters. Type is string day, month or year.
```
date = dateHelper(new Date());
date.sub("day", 1);
date.sub("month", 1);
date.sub("year", 1);
```


### Is date before other date
isBefore function can be used to check if date is before other.
```
var date = new Date(2016, 4, 3);
dateHelper(date).isBefore(new Date(2016, 4, 4)); // true
```

### Is date after other date
isAfter function can be used to check if date is after other.
```
var date = new Date(2016, 4, 3);
dateHelper(date).isAfter(new Date(2016, 4, 2)); // true
```

### Is date same as other date
isSameAs function can be used to check if date at same time as other.
```
var date = new Date(2016, 4, 3);
dateHelper(date).isSameAs(new Date(2016, 4, 3)); // true
```

### i18n
By using configuration month names can be set

#### Node module
```
var dateHelperConfig = require("../dev/dateHelper").config;
dateHelperConfig.setMonthNames(["Sijecan", "Veljaca", "Ozujak", "Travanj",
    "Svibanj", "Lipanj", "Srpanj", "Kolovoz", "Rujan", "Listopad", "Studeni", "Prosinac"])
var date = new Date(2016, 4, 3);
dateHelper(date).getFormated("DD/MMM/YYYY"); // "03/Svibanj/2016"
```

#### Browser
```
dateHelper.config.setMonthNames(["Sijecan", "Veljaca", "Ozujak", "Travanj",
    "Svibanj", "Lipanj", "Srpanj", "Kolovoz", "Rujan", "Listopad", "Studeni", "Prosinac"])
var date = new Date(2016, 4, 3);
dateHelper(date).getFormated("DD/MMM/YYYY"); // "03/Svibanj/2016"
```

## TODO
- Tests
- Hours, minutes and seconds
npm package: @kpajtasev/mock-data-server
Description: Node module for serving mock data
Author: Kristijan Pajtasev
Latest version: 2.8.1

# mock-data-server
Small NodeJS server for mocked data. When run, it uses data from 
json or js files for response. It resolves data based on url path. If 
path does not exist throws 404.

## Usage
```
let server = require('@kpajtasev/mock-data-server');
server.run(`mocksLocation`);
```
Runs mocking server in default port 9000.

## Setting custom port
```
let server = require('@kpajtasev/mock-data-server');
server.setPort(3000);
server.run(`mocksLocation`);
```

## Cross origin
To fix cross origin errors, setAccessOrigin method can be used. 
Following code allows requests from local port 9090.
```
let server = require('@kpajtasev/mock-data-server');
server.setAccessOrigin('http://127.0.0.1:9090');
server.run(`mocksLocation`);
```

## Mocks namespace
Namespace of mock files can be set using setNamespace method. Bellow 
example means that before resolving file, /api will be removed from 
path.
```
let server = require('@kpajtasev/mock-data-server');
server.setNamespace('/api');
server.run(`mocksLocation`);
```

## Filtering
If your mock is array, you can use filtering by sending query parameters.
### Example
```
// test.json
[
  { "test": 2, "name": "J"},
  { "test": 1, "name": "A"},
  { "test": 2, "name": "W"},
  { "test": 3, "name": "E"}
]
```
When /test is returned full test.json content is returned.

If /test?test=1 is requested, response is:
```
// test.json
[
  { "test": 1, "name": "A"}
]
```

## Function
Mock also can be defined as function where result of function will 
be sent as response.

### Example
```
// test.js
module.exports = () => [
  { "test": 2, "name": "J"}
]
```

When /test is requested response is:
```
[
  { "test": 2, "name": "J"}
]
```

## Mock Example
```
let server = require('@kpajtasev/mock-data-server');
server.run(`mocksLocation`);
```
When http://127.0.0.1:9000/test is request, response will 
match content of mocksLocation/test file.
npm package: @kpajtasev/react-autocomplete-component
Description: React autocomplete component
Latest version: 2.1.0

# react-autocomplete-component

## Warning
This package isn't already compiled and is written in es6 and JSX. Needs to be compiled for usage.

## Installation
```
npm install @kpajtasev/react-autocomplete-component
```

## Usage
```
import Autocomplete from ""@kpajtasev/react-autocomplete-component"

<Autocomplete data={[]}/>
```

### Style
```
import Autocomplete from ""@kpajtasev/react-autocomplete-component/style/autocomplete.css"
```

## Props

### Data
```
const data = [
    { key: 1, label: "Option 1" },
    ...
];
<Autocomplete data={data}/>
```

### onSelect
Function that triggers on select. Receives key as prop.
```
const data = [
    { key: 1, label: "Option 1" },
    ...
];
const onSelect = key => console.log(key);

<Autocomplete onSelect={key} data={data}/>
```

### placeholder
Placeholder for input to display when no value is selected
```
const data = [
    { key: 1, label: "Option 1" },
    ...
];
const placeholder = "Some placeholder";

<Autocomplete placeholder={placeholder} data={data}/>
```
npm package: @kpanuragh/ssh-mcp
Description: MCP server for SSH access - Warp-like terminal experience
Author: kpanuragh
Latest version: 1.0.0

# SSH MCP Server

An MCP (Model Context Protocol) server that provides SSH access with Warp-like terminal experience. Connect to remote servers, execute commands, transfer files, and manage interactive shell sessions.

## Installation

```bash
npm install -g ssh-mcp
```

Or run directly with npx:

```bash
npx ssh-mcp
```

## Features

- **SSH Connection Management** - Multiple concurrent connections with session persistence
- **Command Execution** - Run commands with stdout/stderr capture and exit codes
- **SFTP Operations** - Upload, download, and list files on remote servers
- **Interactive Shell** - PTY-based shell sessions for interactive commands
- **Authentication** - Support for both password and SSH key authentication

## MCP Tools

| Tool | Description |
|------|-------------|
| `ssh_connect` | Establish SSH connection to a remote server |
| `ssh_exec` | Execute a command on connected server |
| `ssh_disconnect` | Close an SSH session |
| `ssh_list_sessions` | List all active SSH sessions |
| `sftp_upload` | Upload a file to remote server |
| `sftp_download` | Download a file from remote server |
| `sftp_list` | List files in remote directory |
| `ssh_shell_start` | Start interactive shell session |
| `ssh_shell_send` | Send input to interactive shell |
| `ssh_shell_read` | Read output from interactive shell |
| `ssh_shell_close` | Close interactive shell session |

## Usage with Claude Desktop

Add to your `claude_desktop_config.json`:

```json
{
  "mcpServers": {
    "ssh": {
      "command": "npx",
      "args": ["ssh-mcp"]
    }
  }
}
```

Or if installed globally:

```json
{
  "mcpServers": {
    "ssh": {
      "command": "ssh-mcp"
    }
  }
}
```

## Example Workflow

### 1. Connect to a server

```json
{
  "tool": "ssh_connect",
  "arguments": {
    "host": "example.com",
    "username": "user",
    "password": "password"
  }
}
```

Or with SSH key:

```json
{
  "tool": "ssh_connect",
  "arguments": {
    "host": "example.com",
    "username": "user",
    "privateKeyPath": "/home/user/.ssh/id_rsa"
  }
}
```

### 2. Execute commands

```json
{
  "tool": "ssh_exec",
  "arguments": {
    "sessionId": "uuid-from-connect",
    "command": "ls -la"
  }
}
```

### 3. Transfer files

```json
{
  "tool": "sftp_upload",
  "arguments": {
    "sessionId": "uuid-from-connect",
    "localPath": "/local/file.txt",
    "remotePath": "/remote/file.txt"
  }
}
```

### 4. Interactive shell

```json
{
  "tool": "ssh_shell_start",
  "arguments": {
    "sessionId": "uuid-from-connect"
  }
}
```

```json
{
  "tool": "ssh_shell_send",
  "arguments": {
    "sessionId": "uuid-from-connect",
    "shellId": "shell-uuid",
    "input": "cd /var/log\n"
  }
}
```

### 5. Disconnect

```json
{
  "tool": "ssh_disconnect",
  "arguments": {
    "sessionId": "uuid-from-connect"
  }
}
```

## License

MIT
npm package: @kparc/eula
Description: shakti end-user license agreement
Author: kparc
Latest version: 1.0.6

# shakti eula
[![npm](https://img.shields.io/npm/v/@kparc/eula)](https://www.npmjs.com/package/@kparc/eula)

shakti/k is a subject to Shakti Software Evaluation Agreement.

the agreement is not re-displayed unless there are changes to the previously accepted version.
npm package: @kparc/k
Description: k installer
Author: kparc
Latest version: 2.0.70

# k installer
[![npm](https://img.shields.io/npm/v/@kparc/k)](https://www.npmjs.com/package/@kparc/k)

a lightweight npm package to install/update the runtime of [k language](https://shakti.com) on supported architectures and platforms:

```
* mac/x86_64
* lin/x86_64
```

tba:

```
* mac/aarch64
* lin/aarch64
* lin/rv64gcv
* win64/wsm32
```

### usage

```
$ npm i @kparc/k -g
$ echo 2+2|k
```

### devmode

in case the installer runs as non-root and finds a directory named `shakti` in your `$HOME`, it will check out latest documentation and examples from `shakti.sh` into that directory.

### faq

#### how to upgrade?

the upgrade is the same as install. for convenience, consider adding the following to your rc file:
```
alias kup="npm i @kparc/k --global --quiet --no-audit --yes"
```
additional flags suppress non-essential output, skip audit checks (k has no dependencies), and automatically accepts prompts (see below).

#### how to downgrade?

rolling back to previous versions is not yet supported. to uninstall, use:

```
$ npm uninstall @kparc/k -g
removed 1 package in 0.333s
```

#### the installer fails with `EACCESS`.

on correctly configured systems, the global `npm` installation directory (e.g. `/usr/lib/node_modules`) is owned by the superuser. use the following command to give `npm` the necessary one-time permissions:

```
$ sudo npm install @kparc/k --global --unsafe
```

relaxing ownership of the npm directory is not recommended.

#### i don't have administrative rights on my system.

omit `-g` flag, the package will be placed in your home directory. you can then add `~/node_modules/@kparc/k/bin` to your `PATH`.

#### why do i have to accept a license on first install?

while k installer is distributed under MIT license, k itself is subject to [Shakti Software Evaluation Agreement](https://shakti.com/license.php). the agreement is not re-displayed unless there are changes to the previously accepted version.

the checksum of previously accepted EULA text is stored in `@kparc/.shakti.eula.crc`.

#### i'm having issues.

the installer targets [LTS](https://nodejs.org/en/about/releases/), which is recommended for most users and ships with `npm 6.*`. if your environment is configured to use latest features and/or `npm 7.*`, you may experience minor difficulties, e.g. excessively verbose `npm` output during installation. please raise an [issue](https://github.com/kparc/k/issues/new) and include parts of `npm i @kparc/k -g --verbose` that seem relevant.
npm package: @kparc/kc
Description: A k interpreter interface, providing an interactive shell (REPL) and a library to call a k server from javascript code.
Author: kparc
Latest version: 0.1.4
Deprecated: false

# kc
k console

_Though kc itself is distributed under MIT license, you must agree to the terms of shakti [evaluation agreement](https://shakti.com/license) in order to use k interpreter._

```
npm i -g @kparc/kc
kc
```
npm package: @kpaste-app/lexicon
Description: ATProto lexicon types for KPaste
Author: karashiiro
Latest version: 1.0.2

# @kpaste-app/lexicon

ATProto lexicon types for KPaste.

## Installation

```bash
npm install @kpaste-app/lexicon
# or
pnpm add @kpaste-app/lexicon
# or
yarn add @kpaste-app/lexicon
```

## Usage

Import the lexicon types in your application:

```typescript
import * as MoeKarashiiroKpastePaste from "@kpaste-app/lexicon";

// Or import specific types
import { MoeKarashiiroKpastePaste } from "@kpaste-app/lexicon";
import type { Paste } from "@kpaste-app/lexicon/types";
```

### Type Definitions

The package exports TypeScript type definitions for the KPaste lexicon:

- **Paste Record** (`moe.karashiiro.kpaste.paste`): Represents a code/text paste with metadata including title, language, timestamps, and blob content reference.

## Lexicon Schema

The lexicon defines the following record type:

- `moe.karashiiro.kpaste.paste` - A paste record containing:
  - `title` (string, optional) - The paste title
  - `language` (string, optional) - Syntax highlighting language
  - `createdAt` (datetime) - Creation timestamp
  - `updatedAt` (datetime, optional) - Last update timestamp
  - `content` (blob) - The paste content stored as a blob