open-index/open-npm huggingface dataset:
npm package: @sainama/project-generator
Description: Cli for generate your project (Symfony, React, Javascript, Flutter) with pnpm, npm, yarn
Author: Sylvain Aïnama
Latest version: 1.0.0

## Cli for generate project (Symfony, React, Javascript, Flutter)

### Install

```bash
#!/bin/bash
npm install -g asainama/project-generator
```
npm package: @sainimayank1/portfolio-types
Description: Shared TypeScript type definitions for the Portfolio project
Author: Mayank Saini
Latest version: 1.0.0

# @sainimayank1/portfolio-types

Shared TypeScript type definitions for the Portfolio project.

## Install

```bash
npm install @sainimayank1/portfolio-types
```

## Usage

```ts
import type { Profile, GetProfileResponse, SendMessageRequest } from '@sainimayank1/portfolio-types';
```

## Available Types

### Entity Types (database models)
`Profile` · `Experience` · `Project` · `Skill` · `SkillCategory` · `Social` · `AboutHighlight` · `NavLink` · `ContactPlaceholder` · `Message` · `BlogPost`

### API Types
`SkillItem` · `SkillGroup` · `BlogPostResponse` · `GetProfileResponse` · `GetExperienceResponse` · `GetProjectsResponse` · `SendMessageRequest` · `ApiErrorResponse` · `PortfolioData` · `PortfolioContextValue`

## Development

```bash
npm install
npm run build      # Compiles to dist/
npm pack --dry-run # Preview publishable files
```

## Publishing

```bash
npm login
npm publish --access public
```
npm package: @saintber/copilot-library
Description: CLI for installing and updating Copilot instructions, prompts, agents, and skills into a target directory.
Author: Saintber
Latest version: 0.2.2

# Saintber.CopilotLibrary

用來安裝與更新 Copilot 客製化資產（Instructions / Agents / Prompts / Skills）的 CLI 工具。

## 快速安裝（建議用 npx）

不需要先全域安裝，直接在目標專案目錄執行：

```bash
npx @saintber/copilot-library init
```

## 常用指令

```bash
npx @saintber/copilot-library init
npx @saintber/copilot-library update
npx @saintber/copilot-library doctor
npx @saintber/copilot-library list
npx @saintber/copilot-library remove --module kb
npx @saintber/copilot-library remove --module all
```

### 參數說明

- `--target <directory>`：目標目錄。
  - 未帶入時，預設為目前目錄（`.`）。
- `--module <ns1,ns2>`：只處理指定命名空間（可逗號分隔，支援 sub-namespace）。
  - 未帶入時，預設為所有命名空間。
- `--modules <ns1,ns2>`：`--module` 的相容別名。

## 五個命令會做什麼

- `init`：把套件內 templates 內容安裝到 `target/.github`，並建立 `.copilot-library/state.json`。
- `update`：把最新 templates 內容覆蓋更新到 `target/.github`，並更新 state。
- `doctor`：檢查目標目錄、state 檔案、安裝版本與目標檔案缺漏；若 state 內有安裝清單，會優先依安裝清單檢查。
- `list`：列出目前可安裝的 module selectors；若目標專案已有 state，也會顯示已追蹤的已安裝模組。
- `remove`：依 `--module` 解除安裝指定模組；若使用 `--module all`，會完整移除所有已追蹤安裝內容，並刪除 `.copilot-library/` 狀態目錄，但不會碰觸使用者原本未由本工具安裝的 `.github` 內容。

## 目錄概要

- `bin/`：CLI 入口。
- `src/`：CLI 實作。
- `templates/`：要部署到目標專案的 `.github` 內容（module 化）。

## AI 使用手冊

工具說明已改為 module README：
- `templates/code/README.md`
- `templates/copilot/README.md`
- `templates/docs/README.md`
- `templates/kb/README.md`
- `templates/migration/README.md`
- `templates/speckit/README.md`
npm package: @saintbull/rss-parsify
Description: Parser for rss feeds using allorigins.win api
Author: Matteo Saintbull Santoro
Latest version: 0.2.0

# rss-parsify

## Installation
Using npm:
```
$ npm install @saintbull/rss-parsify
```

## How to use

```js
  import RssParsify from '@saintbull/rss-parsify'
  const result = await RssParsify.parseToJSON('url')
  const contentParsed = RssParsify.parseHTML(result[0].content)
  console.log(contentParsed)
```

or

```js
import RssParsify from '@saintbull/rss-parsify';
RssParsify.parseToJSON(url).then(result => {
  console.log(RssParsify.parseHTML(result[0].content))
});
```
npm package: @saintbull/vue-rss-parsify
Description: Parser for rss feeds using allorigins.win api
Author: Matteo Saintbull Santoro
Latest version: 0.2.7

# rss-parsify

## Installation
Using npm:
```
$ npm install @saintbull/vue-rss-parsify
```

## How to use

```js
  import RssParsify from '@saintbull/vue-rss-parsify'
  const result = await RssParsify.parseToJSON('url')
  const contentParsed = RssParsify.parseHTML(result[0].content)
  console.log(contentParsed)
```

or

```js
import RssParsify from '@saintbull/vue-rss-parsify';
RssParsify.parseToJSON(url).then(result => {
  console.log(RssParsify.parseHTML(result[0].content))
});
```
npm package: @saintdoggie/entity-physics
Description: Simple entity physics for game worlds
Author: Saintdoggie
Latest version: 0.6.4

# Entity Physics

Simple entity physics simulation for game worlds. This project is still a work-in-progress.

This project forked from [`brunodb3/entity-physics`](https://github.com/brunodb3/entity-physics)

## Usage

Install the package to your project:

```bash
$ npm install --save @saintdoggie/entity-physics
# or
$ yarn add @saintdoggie/entity-physics
```

Then add it to your game client/server:

```typescript
import { Physics } from "@saintdoggie/entity-physics";

// Instantiate the Physics processor
const physics = new Physics();

// Set tick rate to be 60 fps
setTimeout(() => {
 physics.tick();
}, 1000 / 60);
```

---

You can add entities to the physics processor and add forces to those entities. Their kinematics will be calculated at every tick (velocity, position, direction...):

```typescript
import { Physics, Entity } from "@saintdoggie/entity-physics";

const physics = new Physics();

// All vectors are Victor from the Victor package.
// Entities start with `entity.kinematics.velocity = { x: 0, y: 0, z: 0 }`
const someEntity = new Entity("some-id");

// If you want an entity to be processed at every tick, you need to add it to
// the `entities` array in the physics processor
physics.entities.addEntity(someEntity);

// All forces are multiplied by the `deltaTime`, allowing for multiple framerates
// without compromising the actual processing of the entities
// (at 20fps the position will be the same as at 60fps)
someEntity.addForce({ x: 1, y: 0 });
```

The force calculations are as follows:

```typescript
newForce = newForce * acceleration; // multiply by acceleration for smoother movement
velocity = velocity + newForce; // add the new force to the velocity
velocity = velocity * frictionMultiplier; // multiply the velocity by a friction multiplier, in order for the entity to stop when the force is 0
```

Entities can have different rates for acceleration, maximum/minimum velocity lengths amongst other options:

```typescript
const entity = new Entity('some-id', {
  runningMultiplier: 1.5, // when running, the force is multiplied by this value
  minVelocity: 0.5,
  maxVelocity: 9.5,
  acceleration: 0.7,
  frictionMultiplier: 0.9
  ...
});
```

For more information on how to use the library, see the `.spec` files, as they provide working examples.