open-index/open-npm huggingface dataset:
npm package: @giantaxewhy/doraemon
Description: 项目常用的工具函数集合，哆啦A梦般方便实用
Author: wanghy
Latest version: 0.1.1

# doraemon

项目常用的工具函数集合，哆啦 A 梦般方便实用。

## 使用

### 安装

```bash
npm i @giantaxewhy/doraemon@latest
```

### 按需引入

1. 安装 babel-plugin-import

```bash
npm i -D babel-plugin-import
```

2. .babelrc

```json
{
  "plugins": [
    [
      "import",
      {
        "libraryName": "@giantaxewhy/doraemon",
        "camel2DashComponentName": false
      }
    ]
  ]
}
```

3. 引入（省略前两步时就不是按需引入了）

```typescript
import { getUrlQuery } from '@giantaxewhy/doraemon';

getUrlQuery('https://da.ithen.cn?name=doraemon');
```

4. 若不想安装 babel-plugin-import，又想按需引入：

```typescript
import getUrlQuery from '@giantaxewhy/doraemon/lib/getUrlQuery';

getUrlQuery('https://da.ithen.cn?name=doraemon');
```

更多使用文档详看[Doraemon](https://da.ithen.cn)。

## TODO

[TODOS](https://github.com/GiantAxeWhy/doraemon/projects/3);

## 开发

### 常用命令

```bash
# 单个文件测试
jest test/limitStringToTarget.test.ts
```

## 须知

- 如有问题或提需求请提[issue](https://github.com/GiantAxeWhy/doraemon/issues)。
npm package: @giantcz/nette
Description: Nette helpers.
Author: Georgy Marchuk
Latest version: 1.0.3

# Nette helpers

## Prerequisites
Include `setComponents` function to define components for replaced snippets.
```javascript
import { setComponents } from '@giantcz/nette';
setComponents(components);
``` 

## Functions
### `request`
Sends request and automatically processes the response. 

In a JSON response:
* `snippets` get replaced and [Gia components](https://github.com/giantcz/gia#component) within are initialized 
* `url` gets replaced in the URL bar with [replaceState](https://developer.mozilla.org/en-US/docs/Web/API/History_API#The_replaceState()_method)
* `redirect`, when set, redirects page to this URL (hard reload) 

Accepts options object with defaults:
```javascript
const options = {
    url: window.location.pathname + window.location.search,
    method: "GET",
    data: null
}
request(options);
```

Function returns Promise of the request that can be further used for processing.
```javascript
request(options)
    .then(({response, request}) => {
        console.log(response);
        console.log(request);
    })
    .catch(request => {
        console.error(request);
    });
```

### `send`
Accepts element (`a` or `form`) and makes Ajax request.  
For `a`, request is made to the URL defined in `href` attribute. 
For `form`, request is with a form submission. 
In case any `form` includes any element with class `has-error`, the sending is cancelled.

Function also returns Promise of the request.

### `replaceSnippet`
Replaces the content of HTML snippets and initializes [Gia components](https://github.com/giantcz/gia#component) within.

Accepts:
* `newContent` - string of new content
* `snippetName` - snippet name (`id` attribute)

Example: 
```javascript
replaceSnippet('<div>Content</div>', 'snippet--paginator');
```

### `replaceSnippets`
Accepts object and runs [replaceSnippet](#replaceSnippet) for every record. 
```javascript
replaceSnippets({
    'snippets--paginator': '<div>Content</div>',
});
```

### `setComponents`
Saves component constructors for further use when replacing snippets. 
Function accepts object of components.

```javascript
import { setComponents } from '@giantcz/nette';
setComponents(components);
``` 

### `triggerEvent`
Triggers event in [Gia eventbus](https://github.com/giantcz/gia#eventbus) in a form of `nette:[first parameter]`.
```javascript
triggerEvent("openPopup");
```

### `Snippet`
When initialized over an element, the instance is saved inside of the element. If the instance exists, it's `update` method is used for processing of the content replacement of snippet.
```javascript
import { Snippet } from '@giantcz/nette';
const instance = new Snippet(element);

instance.update = function({ element, newContent, snippetName }) {
    ...
}
```
npm package: @giantgkl/koishi-plugin-test
Description: test
Latest version: 1.0.1

# @giantgkl/koishi-plugin-test

[![npm](https://img.shields.io/npm/v/@giantgkl/koishi-plugin-test?style=flat-square)](https://www.npmjs.com/package/@giantgkl/koishi-plugin-test)

test
npm package: @giantherios/stickstack
Description: Turn PRD markdown files into visual roadmaps and execute tasks via Claude Code
Latest version: 1.0.0

# StickStack

A full-stack kanban board that triggers Claude Code to work on tasks via drag-and-drop sticky notes.

## Features

- Drag-and-drop kanban board with 4 columns: Backlog, To Do, In Progress, Done
- Real-time synchronization via WebSocket
- Claude Code integration - drag a task to "In Progress" to have Claude work on it
- Live status updates as Claude works
- Color-coded priority levels (High/Medium/Low)
- Sticky note aesthetic with subtle animations

## Tech Stack

| Layer | Technology |
|-------|------------|
| Frontend | React 18 + TypeScript + Vite |
| Drag & Drop | @dnd-kit/core |
| Styling | Tailwind CSS |
| Backend | Node.js + Express |
| WebSocket | ws |
| Database | SQLite via better-sqlite3 |
| Claude Integration | @anthropic-ai/claude-code |

## Getting Started

### Prerequisites

- Node.js 18+
- npm or yarn

### Installation

1. Install backend dependencies:
```bash
cd backend
npm install
```

2. Install frontend dependencies:
```bash
cd frontend
npm install
```

### Running the Application

1. Start the backend server:
```bash
cd backend
npm run dev
```
The server runs on http://localhost:3001

2. In a new terminal, start the frontend:
```bash
cd frontend
npm run dev
```
The app runs on http://localhost:5173

## Usage

1. **Create a Task**: Click the "+ New Task" button to create a new sticky note
2. **Organize**: Drag tasks between columns to update their status
3. **Start Claude**: Drag a task to the "In Progress" column to trigger Claude
4. **Monitor**: Watch Claude's progress in the status panel at the top
5. **Complete**: When Claude finishes, the task automatically moves to "Done"

## API Endpoints

| Method | Endpoint | Description |
|--------|----------|-------------|
| GET | `/api/tasks` | List all tasks |
| POST | `/api/tasks` | Create new task |
| PATCH | `/api/tasks/:id` | Update task |
| DELETE | `/api/tasks/:id` | Delete task |

## WebSocket Events

| Event | Direction | Description |
|-------|-----------|-------------|
| `task:created` | Server → Client | New task created |
| `task:updated` | Server → Client | Task updated |
| `task:deleted` | Server → Client | Task deleted |
| `claude:progress` | Server → Client | Claude progress update |
| `claude:complete` | Server → Client | Claude finished task |

## Project Structure

```
StickStack/
├── frontend/          # React + Vite frontend
│   └── src/
│       ├── components/  # UI components
│       ├── hooks/       # Custom React hooks
│       └── types/       # TypeScript types
├── backend/           # Node.js + Express backend
│   └── src/
│       ├── routes/      # API routes
│       ├── services/    # Business logic
│       └── types/       # TypeScript types
└── skill/             # Claude Code skill definition
```