open-index/open-npm huggingface dataset:
npm package: @gpuente-org-test/ts-lib
Description: Base Typescript boilerplate to build FE packages on top of it
Author: Guillermo Puente
Latest version: 1.0.6

# FE Base Package

Base Typescript boilerplate to build FE packages on top of it


## Available commands

- `build`: build `src` directory
- `build:cjs`: build `src` directory using `cjs` modules
- `build:esm`: build `src` directory using `esm` modules
- `storybook`: run storybook on port `9001`
- `clean`: delete `core` folder
- `lint`: run `eslint` on `src` folder
- `lint:fix`: run eslint in fixing mode on `src` folder

Note that our `build` directory is called `core`, that way you can publish the package and using it `package-name/core/SomeComponent` like [material-ui](https://material-ui.com/)

## Get started

1. Clone the repo: `git clone https://github.com/Terminal-Systems/fe-base-pkg.git <package-name>`
2. Go to the project folder and edit the `package.json`:
	-	`name`: package name (use @org-name/pkg-name for orgs)
	-	`version`: 1.0.0
	-	`author`: list of authors
	-	`repository.url`: `git+https://github.com/<username>/<package-name>.git`
	-	`bugs.url`: `https://github.com/<username>/<package-name>/issues`
	-	`homepage`: `https://github.com/<username>/<package-name>#readme`
3. Change the git remote url (you must to create an empty github project first): 
	```
	git remote rm origin
	git remote add origin <your-new-git-remote-url>
	```

## Download last base library updates

As a result of changed the remote url for the library **you will not be able to fetch the last updates using `git pull origin`**, instead, you should use:
```
git remote add base-lib https://github.com/Terminal-Systems/fe-base-pkg.git
git checkout -b <some-temp-branch-name>/upgrade
git fetch base-lib
git merge base-lib/master
```

## Build a non React based library
If you want to create a **non** `React` based library, you should remove some dependencies that are not required. To do that, please remove the following libraries from `package.json` `devDependencies` and `peerDependencies`:
 - `@material-ui/core`
 - `prop-types`
 - `react`
 - `react-dom`
 - `@types/prop-types`
 - `@types/react`
 - `@types/react-dom`

## peerDependencies
If you need to use a package that should be provided by your host app, please adding it as a `peerDependencie` to avoid library duplications on `node_modules`.

**Important Note:** `peerDependencies` are not installed by `npm install` or `yarn install`. So in order to install `peerDependencies` on dev enviroment you can add your required package as a `peerDependencies` and `devDependencies`. Otherwise, you can use a package like `install-peers-cli`

[More Info Here](https://dev.to/yvonnickfrin/how-to-handle-peer-dependencies-when-developing-modules-18fa)

## Workflow

Our library workflow is pretty straightforward: use `develop` branch to add any new feature and `master` to publish on [npmjs.com](https://www.npmjs.com/)
npm package: @gpugrid/endpoints
Description: gpugrid endpoints module
Author: gpugrid
Latest version: 1.0.1

# @gpugrid/endpoints

gpugrid endpoints module for handling container port exposure and service discovery.

## Installation

```bash
npm install @gpugrid/endpoints
```

## Usage

```typescript
import { 
  getJobExposedServices, 
  getExposePorts, 
  createHash,
  isOperator,
  isSpreadMarker 
} from '@gpugrid/endpoints';

// Get exposed services for a job
const services = getJobExposedServices(job, 'flow-id-123');

// Get exposed ports for an operation
const ports = getExposePorts(operation);

// Create a hash
const hash = createHash('input-string');

// Check if value is an operator
const isOp = isOperator('%%ops.port%%');
```

## API

### Types

#### `ExposedService`
```typescript
{
  hash: string;
  opIndex: number;
  opId: string;
  port: number | string;
  hasHealthCheck: boolean;
}
```

### Functions

#### `createHash(inputString: string, idLength?: number): string`
Creates a base58-encoded hash from the input string.

#### `getExposePorts(op: Operation<"container/run">): ExposedPort[]`
Extracts exposed ports from a container operation.

#### `isOpExposed(op: Operation<"container/run">): boolean`
Checks if an operation has exposed ports.

#### `getExposeIdHash(flowId: string, op: number | string, port: number | string): string`
Generates a unique hash for an exposed service.

#### `getJobExposeIdHash(job: JobDefinition, flowId: string): string[]`
Gets all expose ID hashes for a job.

#### `getJobExposedServices(job: JobDefinition, flowId: string): ExposedService[]`
Gets detailed information about all exposed services in a job.

#### `isOperator(v: string | number | object): v is string`
Checks if a value is an operator reference (e.g., `%%ops.port%%`).

#### `isSpreadMarker(v: string | number | object): boolean`
Checks if a value is a spread marker object.

## Development

```bash
# Install dependencies
npm install

# Build
npm run build

# Run tests
npm test

# Run tests in watch mode
npm run test:watch

# Run tests with coverage
npm run test:coverage

# Lint code
npm run eslint

# Fix linting issues
npm run eslint:fix
```

## License

MIT
npm package: @gpugrid/types
Description: gpugrid Types Module
Author: gpugrid
Latest version: 0.1.23

# @gpugrid/types

Shared TypeScript types for gpugrid SDKs.

## Installation

```bash
npm install @gpugrid/types
```

## Usage

Import types directly:

```typescript
import { Job, Market, JobDefinition } from '@gpugrid/types';
```

## Solana Integration

Configure Solana types in your `types.ts` or `index.d.ts` file.

### Using @solana/kit

```typescript
import type { Address as SolanaAddress } from '@solana/kit';

declare module '@gpugrid/types' {
  interface Address {
    _type: SolanaAddress<string>;
  }
}
```

### Using @solana/web3.js

```typescript
import type { PublicKey as SolanaPublicKey } from '@solana/web3.js';

declare module '@gpugrid/types' {
  interface PublicKey {
    _type: SolanaPublicKey;
  }
}
```