open-index/open-npm huggingface dataset:
npm package: @shepardliu/sharp-ui
Description: sharp-ui is a UI library based on Vue3.
Author: Shepard Liu
Latest version: 1.0.8

# sharp-ui

**sharp-ui** 使用最新的 Vue3.4 和 TS 打造的一套网站快速成型工具，地址： [https://liuyunhe.github.io/sharp-ui/](https://liuyunhe.github.io/sharp-ui/)

## 安装


```bash
npm i @shepardliu/sharp-ui --save
```

### 开始使用

>**全局使用**


```js
// 引入所有组件
import SharpUI from '@shepardliu/sharp-ui'
// 引入样式
import '@shepardliu/sharp-ui/dist/index.css'

import App from './App.vue'
// 全局使用
createApp(App).use(SharpUI).mount('#app')
```

```vue
<template>
  <s-button>我是Button</s-button>
</template>
```

>**单个导入**

sharp-ui 提供了基于 ES Module 的开箱即用的 Tree Shaking 功能。


```vue
<template>
  <Button>我是Button</Button>
</template>
<script>
  import { Button } from '@shepardliu/sharp-ui'
  export default {
    components: { Button },
  }
</script>
```

### 课程亮点

* 亮点1 🔥：“稀有”，目前上市面没有类似的高级课程，由浅入深的高仿 Element-Plus 完成组件库开发的全流程。
* 亮点2 💧: “专业”，传授大厂前端项目架构设计思想/开发模式/代码规范/流程，不搞小作坊式代码。
* 亮点3 ⛑️: “全”，精选十几个组件，可以涵盖大部分的主流组件的设计思想以及原理，知识覆盖面全。
* 亮点4 📚：“新”，使用目前2023年 Vue3 周边最新 ，最全技术：Vue3.2 + Typescript4， Vite，Vitest， Vitepress，Vue-test-utils2，Rollup, Postcss 一网打尽。
* 亮点5 🎉：“难”，难度逐渐上升，高薪必备敲门砖，包括：Message - Select - Form 这种高难度高复杂组件。
* 亮点6 🌹：单元测试，被常年忽略但是非常重要的内容，简历加分项，使用最新的 Vitest，Vue-test-utils2 完成单元测试。
* 亮点7 📚:  文档生成工具，组件库打包和发布以及其他周边流程应有尽有，提供一揽子解决方案。
* 亮点8 📦: 长期维护以及更新，会根据同学的反馈每年更新几个高频组件。
npm package: @shepardliu/vite-plugin-mdx
Description: A Vite plugin for MDX
Author: Shepard Liu
Latest version: 0.0.5

# Vite Plugin MDX

## Getting Started

1. Install:
   ```
   npm install @shepardliu/vite-plugin-mdx -D
   ```
   or
   ```
   yarn add @shepardliu/vite-plugin-mdx -D
   ```


2. Add the plugin to your `vite.config.js`.

   ```js
   // vite.config.js

   import mdx from '@shepardliu/vite-plugin-mdx'

   const options = {
       framework: 'react' // react or vue3 
   }
 
   export default {
     plugins: [mdx(options)]
   }
   ```

3. You can now write `.mdx` files.

   ```mdx-js
   // hello.mdx
   
   # Hello MDX & Vite

   This is a plugin of MDX for vite
   ```
   
   ```javascript
   // App.jsx
   
   import React from 'react'

   import Hello from './hello.mdx'

   function App() {
     return (
       <div className="App">
         <Hello/>
       </div>
     )
   }

   export default App

   ```
npm package: @shepardliu/vite-plugin-string-converter
Description: Converts text files to modules. Such as .vs, .fs, .vert, .frag, .glsl etc.
Author: Shepard Liu
Latest version: 0.0.3

# Vite Plugin String Converter
Converts text files to modules. Such as .vs, .fs, .vert, .frag, .glsl, wgsl etc.

```js
import fragment from './fragment.glsl'
console.log(fragment)
```

## Preface
Most cases, you don't need this plugin.

`vite` already supports suffix `?raw`, import as string.

```js
import fragment from './fragment.glsl?raw'
```

## Installation
```sh
npm install --save-dev @shepardliu/vite-plugin-string-converter
```

## Usage
``` js
// vite.config.js
import vitePluginString from '@shepardliu/vite-plugin-string-converter'

export default {
  plugins: [
    vitePluginString()
  ]
}
```

## Options
```js
vitePluginString(options)
```
```js
{
  /* Default */
  include: [
    '**/*.vs',
    '**/*.fs',
    '**/*.vert',
    '**/*.frag',
    '**/*.glsl',
    '**/*.wgsl',
  ],

  /* Default: undefined */
  exclude: 'node_modules/**',

  /* Default: true */
  // if true, using logic from rollup-plugin-glsl
  compress: true,

  // if a function, will instead of default compress function
  // returns string|Promise<string>
  compress(code) {
    return code.replace(/\n/g, '')
  }
}
```
npm package: @shepherd-terminal/chopper
Description: CLI tool for cryptocurrency trade analysis - best trades, oracle bounds, and drawdown analysis
Latest version: 0.2.0

# @shepherd-terminal/chopper

Cryptocurrency trade analysis CLI and library.

## Installation

```bash
npm install -g @shepherd-terminal/chopper
```

Or use with npx:

```bash
npx @shepherd-terminal/chopper best BTC/USDT --from 2024-01-01 --to 2024-06-01
```

## CLI Commands

### `chopper best <symbol>`

Find the best single long trade (buy then sell) in a time window.

```bash
chopper best BTC/USDT --from 2024-01-01 --to 2024-06-01
```

Constrain to trades within a time window using `--max-candles`:

```bash
# Best trade within any 24h window (using 1m candles for accuracy)
chopper best BTC/USDT -t 1m --from 2024-01-01 --to 2024-01-07 --max-candles 1440

# Best trade within any 7-day window
chopper best ETH/USDT -t 1h --from 2024-01-01 --to 2024-03-01 --max-candles 168
```

### `chopper bound <symbol>`

Calculate the oracle upper bound - the theoretical maximum return achievable with perfect foresight and unlimited trades.

```bash
chopper bound BTC/USDT --tf 1d --from 2020-01-01 --to 2024-01-01 --json
```

### `chopper dd <symbol>`

Calculate max drawdown over a time window.

```bash
chopper dd BTC/USDT --tf 4h --from 2023-01-01 --to 2023-12-31
```

## Common Options

| Option | Description | Default |
|--------|-------------|---------|
| `-e, --exchange <name>` | Exchange to use | `binance` |
| `-t, --tf <timeframe>` | Candle timeframe | `1h` |
| `-f, --from <iso>` | Start date (ISO format) | required |
| `-T, --to <iso>` | End date (ISO format) | required |
| `-j, --json` | Output as JSON | `false` |

### Best Command Options

| Option | Description |
|--------|-------------|
| `-n, --max-candles <n>` | Max candles between entry and exit (constrains trade duration) |

## Library Usage

```typescript
import {
  bestSingleTrade,
  oracleBound,
  maxDrawdown,
  fetchCandles,
  type Candle,
} from "@shepherd-terminal/chopper";

// Fetch candles
const candles = await fetchCandles(
  "binance",
  "BTC/USDT",
  "1h",
  Date.parse("2024-01-01"),
  Date.parse("2024-06-01")
);

// Analyze
const best = bestSingleTrade(candles);
const bestConstrained = bestSingleTrade(candles, { maxCandles: 24 }); // within 24 candles
const bound = oracleBound(candles);
const dd = maxDrawdown(candles);

console.log(best);  // { entryTs, exitTs, entryPrice, exitPrice, pctReturn, candlesBetween }
console.log(bound); // { oracleBound, buyAndHold, totalCandles, positiveMovesCount }
console.log(dd);    // { pct, peakTs, troughTs, peakPrice, troughPrice }
```

## Development

```bash
# Install dependencies
bun install

# Run in development
bun run dev best BTC/USDT --from 2024-01-01 --to 2024-02-01

# Build
bun run build

# Release (creates tag, publishes to npm)
bun run release
```

## License

MIT
npm package: @shepherd-terminal/reacher
Description: CLI tool for scraping LinkedIn and Google Maps to find businesses by type and location
Latest version: 0.3.0

# reacher

A CLI tool for scraping business listings from Google Maps and LinkedIn by business type and location.

## Installation

```bash
npm install -g @shepherd-terminal/reacher
```

Or run without installing:

```bash
npx @shepherd-terminal/reacher search --type "dentist" --location "London"
```

## Requirements

- Node.js >= 18.0.0
- Playwright Chromium browser (installed automatically with the package)

If Chromium is not installed, run:

```bash
npx playwright install chromium
```

## Usage

```
reacher search [options]
```

### Options

| Flag | Alias | Description | Default |
|------|-------|-------------|---------|
| `--type <business-type>` | `-t` | Business type to search for (required) | — |
| `--location <location>` | `-l` | Location to search in | — |
| `--limit <number>` | `-n` | Maximum number of results | `20` |
| `--source <source>` | `-s` | Data source: `google`, `linkedin`, or `all` | `google` |
| `--no-headless` | | Show the browser window while scraping | headless |
| `--json` | `-j` | Output results as JSON | table |

### Examples

Search for dentists in London on Google Maps:

```bash
reacher search --type "dentist" --location "London"
```

Search both Google Maps and LinkedIn with a higher limit:

```bash
reacher search --type "gym" --location "Manchester" --source all --limit 50
```

Output results as JSON:

```bash
reacher search --type "restaurant" --location "Edinburgh" --json
```

Show the browser while scraping (useful for debugging):

```bash
reacher search --type "plumber" --location "Bristol" --no-headless
```

## Output

By default, results are printed as a formatted table:

```
Name                  Address                  Phone          Rating  Source
--------------------  -----------------------  -------------  ------  ------
Dental Care London    123 High St, London      020 1234 5678  4.8     google
City Smiles           45 Baker St, London      020 9876 5432  4.6     google
```

With `--json`, results are output as a JSON array:

```json
[
  {
    "name": "Dental Care London",
    "businessType": "dentist",
    "address": "123 High St, London",
    "phone": "020 1234 5678",
    "website": "https://dentalcarelondon.co.uk",
    "rating": 4.8,
    "reviewCount": 312,
    "googleMapsUrl": "https://maps.google.com/...",
    "source": "google",
    "scrapedAt": "2024-01-15T10:30:00.000Z"
  }
]
```

## Library Usage

Reacher can also be used programmatically:

```typescript
import { scrapeGoogle, scrapeLinkedIn } from "@shepherd-terminal/reacher";
import type { BusinessResult, BrowserOptions } from "@shepherd-terminal/reacher";

const options: BrowserOptions = { headless: true };

const googleResults: BusinessResult[] = await scrapeGoogle("dentist", "London", 20, options);
const linkedinResults: BusinessResult[] = await scrapeLinkedIn("dentist", "London", 20, options);
```

## License

MIT
npm package: @shepherdorg/cli
Description: Command line interfaces for Shepherd
Author: Guðlaugur S. Egilsson
Latest version: 5.3.2

# Shepherd Command Line Interface

# Installing 

```
npm install @shepherdorg/cli
```

# The tools
- ```shepherd-build-docker``` - Build a shepherd manageable docker image.
- ```shepherd-deploy``` - Deploy images specified in the provided herd.yaml file.
- ```shepherd-inspect``` - Extract shepherd annotation from docker image labels. Will pull the image if API retrieval of docker labels is not possible.
- ```join-metadata-files``` - Helper to validate and join user and generated metadata information about a shepherd annotated docker image.

For more detailed information, execute the command with --help