open-index/open-npm huggingface dataset:
npm package: @nothing-but/eslint-plugin
Description: ## `no-ignored-return`
Author: Damian Tarnawski
Latest version: 0.2.3

# @nothing-but/eslint-plugin

## `no-ignored-return`

If a function returns a value, then that value must be used.

TODO:

-   [x] nested methods `utl.raf.makeAnimationLoop`
-   [x] `fn.apply()` and `fn.call()` methods
-   [x] `bool && returningFunc()` expressions
-   [x] `never` doesn't need to be used
-   [ ] ignore `super()`
-   [ ] awaiting `Promise<some_value>`

## `no-return-to-void`

If a callback should return `void`, then it should not return anything.

TODO:

-   [x] Arrow functions
-   [x] Anonymous functions
-   [x] Overloads
-   [x] Fix `.then` (unions)

## `ignore-void-return`

If a function returns `void`, the return value shouldn't be used.

TODO TODO

## `no-unnecessary-instanceof`

Values tested with `instanceof` should have a union type with the tested class as a member.

-   [ ] Allow extended types

## `no-ignored-params`

Require that all callback parameters are used.

TODO:

-   [ ] implement

Resources:

-   [solidjs-community/eslint-plugin-solid](https://github.com/solidjs-community/eslint-plugin-solid)
-   [SonarSource/eslint-plugin-sonarjs](https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/package.json)
-   [typescript-eslint/typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/src/index.ts)
-   https://typescript-eslint.io/developers/custom-rules/#testing
-   https://astexplorer.net/
npm package: @nothing-but/force-graph
Description: **`@nothing-but/force-graph`**
Author: Damian Tarnawski
Latest version: 0.9.5

# Force Graph

**`@nothing-but/force-graph`**

https://nothing-but.vercel.app

TODO:

-   [x] node key
-   [x] node mass
-   [x] delta time (simulation iterations)
-   [x] grid config
-   [x] link strength
-   [x] stop simulation when inactive (alpha)
-   [x] adding/removing nodes
-   [x] make the graph bigger
-   [x] canvas rendering
    -   [x] dispaly node labels
    -   [x] custom aspect ratios
    -   [x] move to lib
    -   [x] remove solid dependency
    -   [ ] link directions (arrows)
    -   [x] custom rendering of nodes/edges
-   [x] ~~svg rendering~~ (deprecated for now, canvas is way faster)
-   [x] interaction - gestures
    -   [x] dragging nodes
        -   [x] touch
    -   [x] movement gestures
        -   [x] with space
        -   [x] without space
        -   [x] touch
        -   [x] clamp to graph
    -   [x] zoom gestures
        -   [x] zoom to mouse position
        -   [x] touch
    -   [x] hover
    -   [x] click
    -   [x] avoid closures - recreating functions
    -   [x] separate from rendering
        -   [ ] separate from canvas
        -   [ ] standard interfaces? (strategy pattern)
    -   [ ] classes (has internal lifecycle)
    -   [x] escape key to reset
    -   [x] try immediate mode api (instead of callbacks, handle interactions in the next frame)
-   [ ] frame animation class
npm package: @nothing-but/graphstate
Description: A reactive GraphQL client generator.
Author: Damian Tarnawski
Latest version: 0.0.1

# graphstate

A reactive GraphQL client generator.

Work in progress.

Example usage:

```js
import * as graphstate from "graphstate/sdk.js"


const _test_schema = `
schema {
	query: Query
}

type Query {
	foo: [String!]!
	bar(a: Int, b: Float): String
	person(id: ID!): Person
}

type Person {
	id: ID!
	name: String!
	age: Int!
}`

async function main() {
	const out = await graphstate.wasm_generate_queries(_test_schema)
	if (out instanceof Error) {
		console.error(out)
		return
	}
	console.log(out)
}


main()
```

Initial values for types:

```gql
# Type            | Initial value
String            # null
String!           # ""
Int!              # 0
Float!            # 0
Boolean!          # false
ID!               # "" ?????
[String!]!        # []

type Link {       # {
  title: String!  #   title: "",
  url:   String!  #   url:   "",
}                 # }

enum LinkState {  # "None" (always the first member)
  None
  Bookmark
  InProgress
  Completed
}

union LinkUnion = LinkState | Link

LinkUnion         # null
LinkUnion!        # "None" (LinkState is the first member of the union)
```
npm package: @nothing-but/node-resolve-ts
Description: Resolve TypeScript files in Node.js using ESM loader hooks.
Author: Damian Tarnawski
Latest version: 1.0.1

<p>
  <img width="100%" src="https://assets.solidjs.com/banner?type=Community&background=tiles&project=node-register" alt="Solid Node Register">
</p>

# Solid Node Register

[![version](https://img.shields.io/npm/v/solid-node-register?style=for-the-badge)](https://www.npmjs.com/package/solid-node-register)

Node loader for compiling JSX/TSX files using Solid's compiler. Uses [Node's Module Customization Hooks](https://nodejs.org/api/module.html#customization-hooks) to register the loader for `.jsx` and `.tsx` files.

Requires Node `>=20.6.0`.

## Usage

Install the loader

```bash
npm i solid-node-register # or pnpm, yarn, etc.
```

Run jsx/tsx files in SSR mode

```bash
node --import=solid-node-register ./index.tsx
```

Run jsx/tsx files in client mode.\
Requires a browser condition to import the browser solid runtime.\
Also requires for the DOM api to be mocked with `jsdom` or similar.

```bash
node --conditions=browser --import=solid-node-register/client ./index.tsx
```

## TypeScript

This loader only handles the compilation of `.jsx`/`.tsx` files.\
For `.ts` files you can use [`--experimental-strip-types`](https://nodejs.org/docs/v22.15.0/api/typescript.html#type-stripping), [`tsx`](https://github.com/privatenumber/tsx) or [`ts-node`](https://www.npmjs.com/package/ts-node).

## Example

See the [tests](./tests) folder for a client/ssr code example\
and [package.json](.package.json) for a test script to run it.
npm package: @nothing-but/platform
Description: A set of const boolean variables identifying device and browser type.
Author: Damian Tarnawski
Latest version: 0.1.0

# @nothing-but/platform

A set of const boolean variables identifying device and browser type.

## Installation

```bash
npm install @nothing-but/platform
# or
pnpm add @nothing-but/platform
# or
yarn add @nothing-but/platform
```

## How to use it

```ts
import {is_webkit, is_firefox} from '@nothing-but/platform'

if (!is_firefox) {
    // won't run on the Mozilla Firefox Browser
}

if (is_webkit) {
    // run WebKit Engine specific code
}
```

> **Note:** This package is tree-shakable, all unused variables will be removed from the bundle.

> **Note:** On the server, all variables will be `false`.

## List of variables

### Devices

-   `is_android` — Is Android Device

-   `is_windows` — Is Windows Device

-   `is_mac` — Is Mac Device

-   `is_iphone` — Is IPhone Device

-   `is_ipad` — Is IPad Device

-   `is_ipod` — Is IPod Device

-   `is_ios` — Is IOS Device

-   `is_apple_device` — Is Apple Device

-   `is_mobile` — is a Mobile Browser

### Browsers

-   `is_firefox` — Browser is Mozilla Firefox

-   `is_opera` — Browser is Opera

-   `is_safari` — Browser is Safari

-   `is_ie` — Browser is Internet Explorer

-   `is_chromium` — is Chromium-based browser

-   `is_edge` — Browser is Edge

-   `is_chrome` — Browser is Chrome

-   `is_brave` — Browser is Brave

### Rendering Engines

-   `is_gecko` — Browser using Gecko Rendering Engine

-   `is_blink` — Browser using Blink Rendering Engine

-   `is_webkit` — Browser using WebKit Rendering Engine

-   `is_presto` — Browser using Presto Rendering Engine

-   `is_trident` — Browser using Trident Rendering Engine

-   `is_edge_html` — Browser using EdgeHTML Rendering Engine

## Changelog

See [CHANGELOG.md](./CHANGELOG.md)