open-index/open-npm huggingface dataset:
npm package: @ihtnc/use-animated-canvas
Description: React canvas element with a built-in render loop
Author: @ihtnc
Latest version: 1.0.17

[![build](https://img.shields.io/github/actions/workflow/status/ihtnc/use-animated-canvas/build-package.yml?label=build&logo=github+actions&logoColor=white)](https://github.com/ihtnc/use-animated-canvas/actions/workflows/build-package.yml)
[![deploy](https://img.shields.io/github/actions/workflow/status/ihtnc/use-animated-canvas/publish-package.yml?label=deploy&logo=github+actions&logoColor=white)](https://github.com/ihtnc/use-animated-canvas/actions/workflows/publish-package.yml)
[![npm](https://img.shields.io/npm/v/@ihtnc/use-animated-canvas?logo=npm)](https://www.npmjs.com/package/@ihtnc/use-animated-canvas)
[![website](https://img.shields.io/badge/website-view-blue?logo=github)](https://ihtnc.github.io/use-animated-canvas)
[![release notes](https://img.shields.io/badge/release%20notes-view-blue?logo=github)](https://github.com/ihtnc/use-animated-canvas/releases)

### Use Animated Canvas

A React hook to create a canvas element with a built-in render loop. Useful for creating animations, games, and other interactive graphics.

#### Installation

```console
npm install @ihtnc/use-animated-canvas
```

#### Usage

```jsx
import { use2dAnimatedCanvas } from '@ihtnc/use-animated-canvas'

const App = () => {
  const { Canvas } = use2dAnimatedCanvas({
    render: (context, data) => {
      // this function gets called every frame
      // use context to draw on the canvas
      // use data to access details like frame count, fps, etc
      // data can also include a user-defined value if supplied
    }
  })

  return <Canvas />
};
```
More usage examples are available [here](https://ihtnc.github.io/use-animated-canvas/usage).
npm package: @ihulk/abc
Description: Common business components of ng-alain.
Author: cipchk
Latest version: 9.0.1

# @delon/abc module [![Build Status](https://dev.azure.com/ng-alain/delon/_apis/build/status/delon-CI?branchName=master)](https://dev.azure.com/ng-alain/delon/_build/latest?definitionId=1&branchName=master) [![NPM version](https://img.shields.io/npm/v/@delon/abc.svg?style=flat-square)](https://www.npmjs.com/package/@delon/abc)

Common business components of ng-alain.

## Links

+ [Document](https://ng-alain.com/components) ([Surge Mirror](https://ng-alain-doc.surge.sh/components))
+ [@delon Source](https://github.com/ng-alain/delon)
+ [DEMO](https://ng-alain.surge.sh) ([国内镜像](https://ng-alain.gitee.io/))

## Architecture

![Architecture](https://raw.githubusercontent.com/ng-alain/delon/master/_screenshot/architecture.png)

## Troubleshooting

Please follow this guidelines when reporting bugs and feature requests:

1. Use [GitHub Issues](https://github.com/ng-alain/delon/issues) board to report bugs and feature requests (not our email address)
2. Please **always** write steps to reproduce the error. That way we can focus on fixing the bug, not scratching our heads trying to reproduce it.

Thanks for understanding!

### License

The MIT License (see the [LICENSE](https://github.com/ng-alain/delon/blob/master/LICENSE) file for the full text)
npm package: @ihulk/acl
Description: A simple role-based access control.
Author: cipchk
Latest version: 9.0.1

# @delon/acl module [![Build Status](https://dev.azure.com/ng-alain/delon/_apis/build/status/delon-CI?branchName=master)](https://dev.azure.com/ng-alain/delon/_build/latest?definitionId=1&branchName=master) [![NPM version](https://img.shields.io/npm/v/@delon/acl.svg?style=flat-square)](https://www.npmjs.com/package/@delon/acl)

A simple role-based access control.

## Links

+ [Document](https://ng-alain.com/acl) ([Surge Mirror](https://ng-alain-doc.surge.sh/acl))
+ [@delon Source](https://github.com/ng-alain/delon)
+ [DEMO](https://ng-alain.surge.sh) ([国内镜像](https://ng-alain.gitee.io/))

## Architecture

![Architecture](https://raw.githubusercontent.com/ng-alain/delon/master/_screenshot/architecture.png)

## Troubleshooting

Please follow this guidelines when reporting bugs and feature requests:

1. Use [GitHub Issues](https://github.com/ng-alain/delon/issues) board to report bugs and feature requests (not our email address)
2. Please **always** write steps to reproduce the error. That way we can focus on fixing the bug, not scratching our heads trying to reproduce it.

Thanks for understanding!

### License

The MIT License (see the [LICENSE](https://github.com/ng-alain/delon/blob/master/LICENSE) file for the full text)
npm package: @ihulk/auth
Description: Simple user authentication, support Json Web Token & Simple Token.
Author: cipchk
Latest version: 9.0.1

# @delon/auth module [![Build Status](https://dev.azure.com/ng-alain/delon/_apis/build/status/delon-CI?branchName=master)](https://dev.azure.com/ng-alain/delon/_build/latest?definitionId=1&branchName=master) [![NPM version](https://img.shields.io/npm/v/@delon/auth.svg?style=flat-square)](https://www.npmjs.com/package/@delon/auth)

Simple user authentication, support Json Web Token & Simple Token.

## Links

+ [Document](https://ng-alain.com/auth) ([Surge Mirror](https://ng-alain-doc.surge.sh/auth))
+ [@delon Source](https://github.com/ng-alain/delon)
+ [DEMO](https://ng-alain.surge.sh) ([国内镜像](https://ng-alain.gitee.io/))

## Architecture

![Architecture](https://raw.githubusercontent.com/ng-alain/delon/master/_screenshot/architecture.png)

## Troubleshooting

Please follow this guidelines when reporting bugs and feature requests:

1. Use [GitHub Issues](https://github.com/ng-alain/delon/issues) board to report bugs and feature requests (not our email address)
2. Please **always** write steps to reproduce the error. That way we can focus on fixing the bug, not scratching our heads trying to reproduce it.

Thanks for understanding!

### License

The MIT License (see the [LICENSE](https://github.com/ng-alain/delon/blob/master/LICENSE) file for the full text)
npm package: @ihulk/cache
Description: Cache the dictionary, city data etc.
Author: cipchk
Latest version: 9.0.1

# @delon/cache module [![Build Status](https://dev.azure.com/ng-alain/delon/_apis/build/status/delon-CI?branchName=master)](https://dev.azure.com/ng-alain/delon/_build/latest?definitionId=1&branchName=master) [![NPM version](https://img.shields.io/npm/v/@delon/cache.svg?style=flat-square)](https://www.npmjs.com/package/@delon/cache)

Cache the dictionary, city data etc.

## Links

+ [Document](https://ng-alain.com/cache) ([Surge Mirror](https://ng-alain-doc.surge.sh/cache))
+ [@delon Source](https://github.com/ng-alain/delon)
+ [DEMO](https://ng-alain.surge.sh) ([国内镜像](https://ng-alain.gitee.io/))

## Architecture

![Architecture](https://raw.githubusercontent.com/ng-alain/delon/master/_screenshot/architecture.png)

## Troubleshooting

Please follow this guidelines when reporting bugs and feature requests:

1. Use [GitHub Issues](https://github.com/ng-alain/delon/issues) board to report bugs and feature requests (not our email address)
2. Please **always** write steps to reproduce the error. That way we can focus on fixing the bug, not scratching our heads trying to reproduce it.

Thanks for understanding!

### License

The MIT License (see the [LICENSE](https://github.com/ng-alain/delon/blob/master/LICENSE) file for the full text)
npm package: @ihulk/chart
Description: Cache the dictionary, city data etc.
Author: cipchk
Latest version: 9.0.1

# @delon/chart module [![Build Status](https://dev.azure.com/ng-alain/delon/_apis/build/status/delon-CI?branchName=master)](https://dev.azure.com/ng-alain/delon/_build/latest?definitionId=1&branchName=master) [![NPM version](https://img.shields.io/npm/v/@delon/chart.svg?style=flat-square)](https://www.npmjs.com/package/@delon/chart)

Cache the dictionary, city data etc.

## Links

+ [Document](https://ng-alain.com/chart) ([Surge Mirror](https://ng-alain-doc.surge.sh/chart))
+ [@delon Source](https://github.com/ng-alain/delon)
+ [DEMO](https://ng-alain.surge.sh) ([国内镜像](https://ng-alain.gitee.io/))

## Architecture

![Architecture](https://raw.githubusercontent.com/ng-alain/delon/master/_screenshot/architecture.png)

## Troubleshooting

Please follow this guidelines when reporting bugs and feature requests:

1. Use [GitHub Issues](https://github.com/ng-alain/delon/issues) board to report bugs and feature requests (not our email address)
2. Please **always** write steps to reproduce the error. That way we can focus on fixing the bug, not scratching our heads trying to reproduce it.

Thanks for understanding!

### License

The MIT License (see the [LICENSE](https://github.com/ng-alain/delon/blob/master/LICENSE) file for the full text)
npm package: @ihulk/form
Description: Angular form generation based on JSON-Schema.
Author: cipchk
Latest version: 9.0.1

# @delon/form module [![Build Status](https://dev.azure.com/ng-alain/delon/_apis/build/status/delon-CI?branchName=master)](https://dev.azure.com/ng-alain/delon/_build/latest?definitionId=1&branchName=master) [![NPM version](https://img.shields.io/npm/v/@delon/form.svg?style=flat-square)](https://www.npmjs.com/package/@delon/form)

Angular form generation based on JSON-Schema.

## Links

+ [Document](https://ng-alain.com/form) ([Surge Mirror](https://ng-alain-doc.surge.sh/form))
+ [@delon Source](https://github.com/ng-alain/delon)
+ [DEMO](https://ng-alain.surge.sh) ([国内镜像](https://ng-alain.gitee.io/))

## Architecture

![Architecture](https://raw.githubusercontent.com/ng-alain/delon/master/_screenshot/architecture.png)

## Troubleshooting

Please follow this guidelines when reporting bugs and feature requests:

1. Use [GitHub Issues](https://github.com/ng-alain/delon/issues) board to report bugs and feature requests (not our email address)
2. Please **always** write steps to reproduce the error. That way we can focus on fixing the bug, not scratching our heads trying to reproduce it.

Thanks for understanding!

### License

The MIT License (see the [LICENSE](https://github.com/ng-alain/delon/blob/master/LICENSE) file for the full text)
npm package: @ihulk/mock
Description: Generate random data, intercept http requests.
Author: cipchk
Latest version: 9.0.1

# @delon/mock module [![Build Status](https://dev.azure.com/ng-alain/delon/_apis/build/status/delon-CI?branchName=master)](https://dev.azure.com/ng-alain/delon/_build/latest?definitionId=1&branchName=master) [![NPM version](https://img.shields.io/npm/v/@delon/mock.svg?style=flat-square)](https://www.npmjs.com/package/@delon/mock)

Generate random data, intercept http requests.

## Links

+ [Document](https://ng-alain.com/mock) ([Surge Mirror](https://ng-alain-doc.surge.sh/mock))
+ [@delon Source](https://github.com/ng-alain/delon)
+ [DEMO](https://ng-alain.surge.sh) ([国内镜像](https://ng-alain.gitee.io/))

## Architecture

![Architecture](https://raw.githubusercontent.com/ng-alain/delon/master/_screenshot/architecture.png)

## Troubleshooting

Please follow this guidelines when reporting bugs and feature requests:

1. Use [GitHub Issues](https://github.com/ng-alain/delon/issues) board to report bugs and feature requests (not our email address)
2. Please **always** write steps to reproduce the error. That way we can focus on fixing the bug, not scratching our heads trying to reproduce it.

Thanks for understanding!

### License

The MIT License (see the [LICENSE](https://github.com/ng-alain/delon/blob/master/LICENSE) file for the full text)
npm package: @ihulk/ng-alain
Description: Schematics specific to ng-alain
Author: cipchk
Latest version: 9.0.1

# ng-alain module [![Build Status](https://dev.azure.com/ng-alain/delon/_apis/build/status/delon-CI?branchName=master)](https://dev.azure.com/ng-alain/delon/_build/latest?definitionId=1&branchName=master) [![NPM version](https://img.shields.io/npm/v/ng-alain.svg?style=flat-square)](https://www.npmjs.com/package/ng-alain)

Angular CLI Schematics of ng-alain.

# ng-alain

[Ng-zorro-antd](https://github.com/NG-ZORRO/ng-zorro-antd) admin panel front-end framework.

## Links

+ [Document](https://ng-alain.com) ([Surge Mirror](https://ng-alain-doc.surge.sh))
+ [@delon Source](https://github.com/ng-alain/delon)
+ [DEMO](https://ng-alain.surge.sh) ([国内镜像](https://ng-alain.gitee.io/))

## Troubleshooting

Please follow this guidelines when reporting bugs and feature requests:

1. Use [GitHub Issues](https://github.com/ng-alain/ng-alain/issues) board to report bugs and feature requests (not our email address)
2. Please **always** write steps to reproduce the error. That way we can focus on fixing the bug, not scratching our heads trying to reproduce it.

Thanks for understanding!

### License

The MIT License (see the [LICENSE](https://github.com/ng-alain/ng-alain/blob/master/LICENSE) file for the full text)
npm package: @ihulk/portal
Description: Common business components of ng-alain.
Author: Toxiic
Latest version: 9.0.8

# @delon/abc module [![Build Status](https://dev.azure.com/ng-alain/delon/_apis/build/status/delon-CI?branchName=master)](https://dev.azure.com/ng-alain/delon/_build/latest?definitionId=1&branchName=master) [![NPM version](https://img.shields.io/npm/v/@delon/abc.svg?style=flat-square)](https://www.npmjs.com/package/@delon/abc)

Common business components of ng-alain.

## Links

+ [Document](https://ng-alain.com/components) ([Surge Mirror](https://ng-alain-doc.surge.sh/components))
+ [@delon Source](https://github.com/ng-alain/delon)
+ [DEMO](https://ng-alain.surge.sh) ([国内镜像](https://ng-alain.gitee.io/))

## Architecture

![Architecture](https://raw.githubusercontent.com/ng-alain/delon/master/_screenshot/architecture.png)

## Troubleshooting

Please follow this guidelines when reporting bugs and feature requests:

1. Use [GitHub Issues](https://github.com/ng-alain/delon/issues) board to report bugs and feature requests (not our email address)
2. Please **always** write steps to reproduce the error. That way we can focus on fixing the bug, not scratching our heads trying to reproduce it.

Thanks for understanding!

### License

The MIT License (see the [LICENSE](https://github.com/ng-alain/delon/blob/master/LICENSE) file for the full text)
npm package: @ihulk/testing
Description: Test suite for ng-alain.
Author: cipchk
Latest version: 9.0.1

# @delon/testing module [![Build Status](https://dev.azure.com/ng-alain/delon/_apis/build/status/delon-CI?branchName=master)](https://dev.azure.com/ng-alain/delon/_build/latest?definitionId=1&branchName=master) [![NPM version](https://img.shields.io/npm/v/@delon/testing.svg?style=flat-square)](https://www.npmjs.com/package/@delon/testing)

Test suite for ng-alain.

## Architecture

![Architecture](https://raw.githubusercontent.com/ng-alain/delon/master/_screenshot/architecture.png)

## Troubleshooting

Please follow this guidelines when reporting bugs and feature requests:

1. Use [GitHub Issues](https://github.com/ng-alain/delon/issues) board to report bugs and feature requests (not our email address)
2. Please **always** write steps to reproduce the error. That way we can focus on fixing the bug, not scratching our heads trying to reproduce it.

Thanks for understanding!

### License

The MIT License (see the [LICENSE](https://github.com/ng-alain/delon/blob/master/LICENSE) file for the full text)
npm package: @ihulk/theme
Description: ng-alain theme system library.
Author: cipchk
Latest version: 9.0.1

# @delon/theme module [![Build Status](https://dev.azure.com/ng-alain/delon/_apis/build/status/delon-CI?branchName=master)](https://dev.azure.com/ng-alain/delon/_build/latest?definitionId=1&branchName=master) [![NPM version](https://img.shields.io/npm/v/@delon/theme.svg?style=flat-square)](https://www.npmjs.com/package/@delon/theme)

ng-alain theme system library.

## Links

+ [Document](https://ng-alain.com) ([Surge Mirror](https://ng-alain-doc.surge.sh))
+ [@delon Source](https://github.com/ng-alain/delon)
+ [DEMO](https://ng-alain.surge.sh) ([国内镜像](https://ng-alain.gitee.io/))

## Architecture

![Architecture](https://raw.githubusercontent.com/ng-alain/delon/master/_screenshot/architecture.png)

## Troubleshooting

Please follow this guidelines when reporting bugs and feature requests:

1. Use [GitHub Issues](https://github.com/ng-alain/delon/issues) board to report bugs and feature requests (not our email address)
2. Please **always** write steps to reproduce the error. That way we can focus on fixing the bug, not scratching our heads trying to reproduce it.

Thanks for understanding!

### License

The MIT License (see the [LICENSE](https://github.com/ng-alain/delon/blob/master/LICENSE) file for the full text)
npm package: @ihulk/util
Description: Universal toolset of ng-alain.
Author: epp
Latest version: 9.0.1

# @delon/util module [![Build Status](https://dev.azure.com/ng-alain/delon/_apis/build/status/delon-CI?branchName=master)](https://dev.azure.com/ng-alain/delon/_build/latest?definitionId=1&branchName=master) [![NPM version](https://img.shields.io/npm/v/@delon/util.svg?style=flat-square)](https://www.npmjs.com/package/@delon/util)

Universal toolset of ng-alain.

## Links

+ [Document](https://ng-alain.com/util) ([Surge Mirror](https://ng-alain-doc.surge.sh/util))
+ [@delon Source](https://github.com/ng-alain/delon)
+ [DEMO](https://ng-alain.surge.sh) ([国内镜像](https://ng-alain.gitee.io/))

## Architecture

![Architecture](https://raw.githubusercontent.com/ng-alain/delon/master/_screenshot/architecture.png)

## Troubleshooting

Please follow this guidelines when reporting bugs and feature requests:

1. Use [GitHub Issues](https://github.com/ng-alain/delon/issues) board to report bugs and feature requests (not our email address)
2. Please **always** write steps to reproduce the error. That way we can focus on fixing the bug, not scratching our heads trying to reproduce it.

Thanks for understanding!

### License

The MIT License (see the [LICENSE](https://github.com/ng-alain/delon/blob/master/LICENSE) file for the full text)
npm package: @ihungry/vue3-translate-select
Description: 🚀 The package offer vue3 library for @google-translate-select!
Author: izaelgs
Latest version: 0.2.40

# vue3-translate-select

🚀 The package offer vue3 library for @google-translate-select!

## Build

Use tsup to build and this package don't have `devDependencies`. See [ts-up#excluding-packages](https://tsup.egoist.dev/#excluding-packages)
npm package: @ihv/react-hook-table
Description: Lightweight hook table for React
Author: Ivo Etti
Latest version: 0.6.4

# Hook Table for React

The project was initiated with the goal of developing a straightforward and easy-to-use type-safe table rendering engine.

The project is still under heavy development, not producton ready.

**[Documentation](https://github.com/ihv-hook-table/react-hook-table/wiki/Quickstart)**

**[StackBlitz demo with shadcn/ui](https://stackblitz.com/edit/react-hook-table-with-shadcn-ui?file=src%2Fpages%2Fexample%2Fexample.tsx)**
npm package: @ihvh/air-datepicker-types
Description: TypeScript definitions for air-datepicker
Author: Mario Kahlhofer
Latest version: 2.0.2

# TypeScript definitions for [air-datepicker](https://www.npmjs.com/package/air-datepicker)

[![npm Version](https://img.shields.io/npm/v/@blu3r4y/air-datepicker-types?style=for-the-badge)](https://www.npmjs.com/package/@blu3r4y/air-datepicker-types)
[![GitHub Workflow Status](https://img.shields.io/github/workflow/status/blu3r4y/air-datepicker-types/publish-npm-package?style=for-the-badge)](https://github.com/blu3r4y/air-datepicker-types/actions/workflows/publish-npm-package.yml)

```bash
# the npm way
npm install -D @blu3r4y/air-datepicker-types

# the yarn way
yarn add -D @blu3r4y/air-datepicker-types
```

## Usage

Explicitly import the types from this package.

```typescript
import "air-datepicker";
import { AirDatepickerInstance } from "@blu3r4y/air-datepicker-types";
```

If you want to import everything directly from `air-datepicker`, you could [alias](https://docs.npmjs.com/cli/v7/commands/npm-install) the package under `@types/air-datepicker` instead.
However, I would **not** recommend it because the versions aren't tracked properly anymore then.

```bash
# install with alias
npm install -D @types/air-datepicker@npm:@blu3r4y/air-datepicker-types
```

### Exported Types

- `AirDatepickerStatic`
- `AirDatepickerInstance`
- `AirDatepickerLanguageInstance`
- `AirDatepickerEventObject`
- `AirDatepickerOptions`

As well as bindings to `jquery`

- `JQuery.datepicker`
- `JQuery.data("datepicker")`
npm package: @ihvoschevskiy/weather-cli
Description: Консольное приложение для показа прогноза погоды
Author: Igor` Hvoschevskiy
Latest version: 1.0.1

# weather-cli

<div align="center">
  <h3>Погода на неделю</h3>
  <img alt="Boards" width="80%" src="screenshots/weather_daily.png"/>
</div>

<div align="center">
  <h3>Текущая погда</h3>
  <img alt="Boards" width="55%" src="screenshots/weather_current.png"/>
</div>

## Установка

```
npm install -g @ihvoschevskiy/weather-cli
```

Для работы приложения необходим токен для доступа к OpenWeather api
https://openweathermap.org/full-price#current

## Использование

```
weather [<city>] [<options>]
```

## Опции

```
 -d, --daily              Показать погоду на неделю
 -h, --help               Показать справочную информацию
 -v, --version            Показать версию приложения
 -t, --set-token          Сохранить токен для доступа к OpenWeather api
 -c, --set-city           Сохранить город в качестве города по умолчанию
 -l, --list-of-cities     Показать список последних просмотренных городов
```

## Примеры использования

```
weather
```

При первом запуске приложения необходимо будет ввести токен для доступа к OpenWeather api, а также указать город, который будет использоваться по умолчанию

```
weather -t
weather -t <token>
```

Перезапишет текущий токен

```
weather -c
weather -c <city>
```

Перезапишет город, используемый по умолчанию

```
weather
weather -d
```

Покажет текущую погоду или погоду на следующие 7 дней для города, сохраненного в качестве города по умолчанию

```
weather <city>
weather <city> -d
```

Покажет текущую погоду или погоду на следующие 7 дней для указанного города.
Город будет добавлен в список последних просмотренных городов

```
weather -l
weather -ld
```

Отобразит список последних просмотренных городов, с возможностью показа прогноза погоды для выбронного из этого списка города

```
weather -h
```

Отоброзит справочную информацию

```
weather -v
```

Отобразит версию приложения

## Формат ввода городов

```
weather moscow
weather Москва
weather Санкт Петербург
```
npm package: @ihwbox/opencode-config-sync
Description: OpenCode configuration sync plugin for multi-device config roaming via WebDAV
Author: hujunpeng
Latest version: 0.1.0

# @ihwbox/opencode-config-sync

<p align="center">
  <strong>OpenCode 配置同步插件</strong><br>
  <span>通过 WebDAV 实现多设备配置漫游</span>
</p>

<p align="center">
  <img src="https://img.shields.io/npm/v/@ihwbox/opencode-config-sync" alt="npm version">
  <img src="https://img.shields.io/npm/l/@ihwbox/opencode-config-sync" alt="license">
</p>

---

## 功能特性

| 特性 | 说明 |
|------|------|
| 🔄 **自动同步** | 启动时拉取，退出时推送 |
| 📁 **整个目录同步** | 自动同步所有配置文件 |
| 🔐 **独立配置** | 配置独立于 opencode.json |
| ⚡ **增量同步** | 只传输变更文件 |
| 🛡️ **冲突处理** | 时间戳优先策略 |
| 📊 **速率限制** | 保护 API 配额 |
| 🔧 **手动命令** | 支持手动推送/拉取 |

---

## 安装

### NPM

```bash
npm install @ihwbox/opencode-config-sync
```

### Git

```bash
git clone git@gitlab.gz.cvte.cn:AI_Tools/OpenCode_Sync.git
cd OpenCode_Sync
npm install && npm run build
```

---

## Quick Start

### 1. 创建配置文件

创建 `~/.config/opencode/config-sync.json`：

```json
{
  "server": "https://your-webdav-server.com/dav/",
  "remotePath": "/opencode-config",
  "timeout": 30000,
  "username": "your-username",
  "password": "your-app-password"
}
```

| 参数 | 必填 | 说明 | 默认值 |
|------|:----:|------|--------|
| `server` | ✅ | WebDAV 服务器地址 | - |
| `remotePath` | ❌ | 远程存储路径 | `/opencode-config` |
| `timeout` | ❌ | 请求超时 (ms) | `30000` |
| `username` | ✅ | WebDAV 用户名 | - |
| `password` | ✅ | WebDAV 密码（应用密码） | - |

**⚠️ 安全警告**：

- `config-sync.json` 包含敏感认证信息，**切勿提交到 Git**
- 已自动添加到 `.gitignore`，但请确保不要手动提交
- 建议使用应用密码而非主密码（如坚果云需在安全选项中生成）
- 配置文件权限应设置为仅当前用户可读

### 2. 启用插件并重启

```json
{
  "plugin": ["@ihwbox/opencode-config-sync"]
}
```

重启 opencode，配置自动同步！

---

## 同步范围

### 同步

| 路径 | 说明 |
|------|------|
| `~/.config/opencode/*.json` | 配置文件 |
| `~/.config/opencode/skill/` | 技能目录 |
| `~/.config/opencode/plugin/` | 插件目录 |

### 排除

- `node_modules/` - 依赖目录
- `*.lock` - 锁文件
- `*.db*` - 数据库文件
- `.git/` - Git 目录
- `log/` - 日志目录
- `snapshot/` - 快照目录

---

## 手动同步

| 命令 | 说明 |
|------|------|
| `/sync` | 查看同步状态 |
| `/sync push` | 推送到云端 |
| `/sync pull` | 从云端拉取 |
| `/sync 推送` | 中文别名 |
| `/sync 拉取` | 中文别名 |

---

## 支持的 WebDAV

| 服务 | 地址 | 说明 |
|------|------|------|
| [坚果云](https://www.jianguoyun.com/) | `https://dav.jianguoyun.com/dav/` | 免费 1GB |
| [Nextcloud](https://nextcloud.com/) | 自定义 | 开源 |
| 其他 | - | 标准 WebDAV |

**坚果云提示**：需在「账户信息 → 安全选项」生成应用密码。

---

## 故障排除

**同步失败 / 连接超时**

→ 检查服务器地址、网络、防火墙

**认证失败**

→ 确认用户名密码，使用应用密码

**文件冲突**

→ 时间戳优先：本地更新时跳过拉取

**重置同步状态**

```bash
rm ~/.config/opencode/sync-state.json
```

---

## 开发

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

---

## 贡献

欢迎 Issue 和 PR！

---

## 许可证

[MIT](./LICENSE) © hujunpeng

**仓库**: git@gitlab.gz.cvte.cn:AI_Tools/OpenCode_Sync.git
npm package: @ii887522/dynv6-ip-update-client
Description: Update IP addresses of existing DNS records created in dynv6 which is a platform for getting public hostnames for your dynamic IPv4 and IPv6 addresses with the latest IP addresses from the client.
Author: ii887522
Latest version: 2.0.2

# dynv6-ip-update-client

[![Semantic Versioning 2.0.0](https://img.shields.io/badge/semver-2.0.0-standard.svg)](https://semver.org/)
[![Linux](https://svgshare.com/i/Zhy.svg)](https://svgshare.com/i/Zhy.svg)
[![Windows](https://svgshare.com/i/ZhY.svg)](https://svgshare.com/i/ZhY.svg)
[![made-with-javascript](https://img.shields.io/badge/Made%20with-JavaScript-ffff00.svg)](https://www.javascript.com)
[![made-with-typescript](https://img.shields.io/badge/Made%20with-TypeScript-0000e0.svg)](https://www.typescriptlang.org/)
[![Npm package version](https://badgen.net/npm/v/@ii887522/dynv6-ip-update-client)](https://www.npmjs.com/package/@ii887522/dynv6-ip-update-client)
[![Npm package daily downloads](https://badgen.net/npm/dm/@ii887522/dynv6-ip-update-client)](https://npmjs.com/package/@ii887522/dynv6-ip-update-client)
[![Npm package license](https://badgen.net/npm/license/@ii887522/dynv6-ip-update-client)](https://npmjs.com/package/@ii887522/dynv6-ip-update-client)
[![Npm package dependents](https://badgen.net/npm/dependents/@ii887522/dynv6-ip-update-client)](https://npmjs.com/package/@ii887522/dynv6-ip-update-client)

Update IP addresses of existing DNS records created in dynv6 which is a platform for getting public hostnames for your dynamic IPv4 and IPv6 addresses with the latest IP addresses from the client.

## Table of Contents

- [Usage](https://github.com/ii887522/dynv6-ip-update-client#usage)
- [Prerequisites](https://github.com/ii887522/dynv6-ip-update-client#prerequisites)
- [Install dependencies](https://github.com/ii887522/dynv6-ip-update-client#install-dependencies)
- [Lint the project](https://github.com/ii887522/dynv6-ip-update-client#lint-the-project)
- [Build the project](https://github.com/ii887522/dynv6-ip-update-client#build-the-project)
- [Automatically build the project on save](https://github.com/ii887522/dynv6-ip-update-client#automatically-build-the-project-on-save)
- [Start the project](https://github.com/ii887522/dynv6-ip-update-client#start-the-project)

## Usage

```sh
dynv6-ip-update-client <http-token>
```

## Prerequisites

- Windows 11 or Linux
- [Visual Studio Code](https://code.visualstudio.com/) with plugins:
  - EditorConfig for VS Code
  - ESLint
  - Prettier - Code formatter
- [Node.js 16.17.1](https://nodejs.org/en/) and later

## Install dependencies

```sh
npm install
```

## Lint the project

```sh
npm run lint
```

## Automatically lint the project on save

```sh
npm run lint:watch
```

## Build the project

```sh
npm run build
```

## Automatically build the project on save

```sh
npm run build:watch
```

## Start the project

```sh
npm start <http-token>
```
npm package: @iiasa/ixmp4-ts
Description: typescript client for ixmp4, a data warehouse for scenario analysis
Latest version: 0.10.0

# ixmp4-ts - the typescript client for ixmp4, a data warehouse for scenario analysis

Copyright (c) 2024 IIASA - Energy, Climate, and Environment Program (ECE)

[![license: MIT](https://img.shields.io/badge/license-MIT-brightgreen.svg)](https://github.com/iiasa/ixmp4/blob/main/LICENSE)
[![TypeScript](https://img.shields.io/badge/%3C%2F%3E-TypeScript-%230074c1.svg)](http://www.typescriptlang.org/)

## Overview

This project provides a TypeScript client for the [ixmp4 package](https://github.com/iiasa/ixmp4). The ixmp4 package is a data warehouse designed for high-powered scenario analysis in the domain of integrated assessment of climate change and energy systems modeling. This TypeScript client provides a core and data layer that connects to the ixmp4 REST API server.
For details on the ixmp4 package, refer to the [ixmp4 documentation](https://docs.ece.iiasa.ac.at/ixmp4).

## License

The **ixmp4-ts** package is released under the [MIT license](https://github.com/iiasa/ixmp4/blob/main/LICENSE).

## Install from npm

You can install ixmp4-ts using npm:

`npm install @iiasa/ixmp4-ts`

## Developing

See [DEVELOPING.md](DEVELOPING.md) for guidance. When contributing to this project via
a Pull Request, add your name to the "contributors" section in the `package.json` file.

## Funding ackownledgement

<img src="./doc/source/_static/ECEMF-logo.png" width="264" height="100"
alt="ECEMF logo" />
<img src="./doc/source/_static/openENTRANCE-logo.png" width="187" height="120"
alt="openENTRANCE logo" />
<img src="./doc/source/_static/ariadne-bmbf-logo.png" width="353" height="100"
alt="Kopernikus project ARIADNE logo" />

The development of the **ixmp4** package was funded from the EU Horizon 2020 projects
[openENTRANCE](https://openentrance.eu) and [ECEMF](https://ecemf.eu)
as well as the BMBF Kopernikus project [ARIADNE](https://ariadneprojekt.de)
(FKZ 03SFK5A by the German Federal Ministry of Education and Research).

<img src="./doc/source/_static/EU-logo-300x201.jpg" width="80" height="54" align="left"
alt="EU logo" /> This project has received funding from the European Union’s Horizon
2020 research and innovation programme under grant agreement No. 835896 and 101022622.